Sobes.tech
Junior

Qanday qilib tasvirni yig'ish va uni ro'yxatga qo'shish mumkin?

sobes.tech AI

AIdan javob

Docker tasvirini yaratish docker build komandasi bilan amalga oshiriladi va u Dockerfile ni ko'rsatma sifatida ishlatadi. Dockerfile tasvirni yaratish uchun qadamlarni o'z ichiga oladi, masalan, asosiy tasvir, fayllarni nusxalash, bog'liqliklarni o'rnatish va muhitni sozlash.

Dockerfile misoli:

# Asosiy tasvirni ishlatish
FROM ubuntu:latest

# Bog'liqliklarni o'rnatish
RUN apt-get update && apt-get install -y nginx

# Konfiguratsiya fayllarini nusxalash
COPY nginx.conf /etc/nginx/nginx.conf

# Portni ochish
EXPOSE 80

# Veb-serverni ishga tushirish
CMD ["nginx", "-g", "daemon off;"]

Yig'ish buyruqi:

# docker build -t <tasvir_nomi>:<teg> <Dockerfile_joyi>
docker build -t my-nginx-image:latest .

-t my-nginx-image:latest tasvirga my-nginx-image nomini va latest tegini belgilaydi. . hozirgi katalogni ko'rsatadi, u yerda Dockerfile joylashgan.

Muvaffaqiyatli yig'ishdan so'ng, tasvir lokal ravishda mavjud bo'ladi. Uni ro'yxatga olish uchun (masalan, Docker Hub yoki shaxsiy ro'yxatga olish), avvalo docker login bilan tizimga kirish kerak.

# docker login <ro'yxatga olish manzili>
# Docker Hub uchun manzil ko'rsatilmaydi
docker login

Keyin, tasvirni ro'yxatga olish manziliga moslashtirish uchun qayta teglar qilish kerak:

# docker tag <mahalliy_nomi>:<teg> <ro'yxatga olish_manzili>/<repository_nomi>:<teg>
# Docker Hub uchun, agar foydalanuvchi 'myuser' bo'lsa
docker tag my-nginx-image:latest myuser/my-nginx-image:latest

Va nihoyat, tasvirni ro'yxatga yuborish:

# docker push <ro'yxatga olish_manzili>/<repository_nomi>:<teg>
# Docker Hub uchun
docker push myuser/my-nginx-image:latest

Yig'ish va push qilish jarayoni ko'pincha CI/CD tizimlari (Jenkins, GitLab CI, GitHub Actions va boshqalar) yordamida avtomatlashtiriladi.