Sobes.tech
Junior

Ինչպես հավաքել պատկեր և ուղարկել այն գրանցամատյան:

sobes.tech AI

Պատասխան AI-ից

Docker պատկերն ստեղծվում է docker build հրամանի միջոցով, որը օգտագործում է Dockerfile որպես հրահանգ: Dockerfile պարունակում է քայլեր պատկեր ստեղծելու համար, ինչպիսիք են հիմնական պատկեր, ֆայլերի պատճենում, կախվածությունների տեղադրում և միջավայրի կարգավորում:

Օրինակ Dockerfile:

# Օգտագործել հիմնական պատկեր
FROM ubuntu:latest

# Կախվածությունները տեղադրել
RUN apt-get update && apt-get install -y nginx

# Կոնֆիգուրացիոն ֆայլերը պատճենել
COPY nginx.conf /etc/nginx/nginx.conf

# Պորտ բացել
EXPOSE 80

# Վեբ սերվերը սկսել
CMD ["nginx", "-g", "daemon off;"]

Կառուցման հրամանը:

# docker build -t <պատկեր_անուն>:<տեգ> <Dockerfile-ի_փնտրած_ուղին>
docker build -t my-nginx-image:latest .

-t my-nginx-image:latest պատկերին տալիս է անուն my-nginx-image և տեգ latest: . նշում է ընթացիկ թղթապանակը, որտեղ գտնվում է Dockerfile-ը:

Հաջող կառուցումից հետո, պատկերն տեղականորեն հասանելի կլինի: Դրա համար նախ պետք է մուտք գործել ռեգիստր (օրինակ, Docker Hub կամ մասնավոր ռեգիստր), օգտագործելով docker login հրամանը:

# docker login <ռեգիստրի_հասցե>
# Docker Hub-ի համար հասցեն նշված չէ
docker login

Հետո, պատկերին նոր տեգ պետք է տալ, որպեսզի համապատասխանի ռեգիստրի հասցեին:

# docker tag <տեղական_անուն>:<տեգ> <ռեգիստրի_հասցե>/<պահոց_անուն>:<տեգ>
# Docker Hub-ի համար, եթե օգտվողը 'myuser'
docker tag my-nginx-image:latest myuser/my-nginx-image:latest

Եվ վերջում, push անել ռեգիստր:

# docker push <ռեգիստրի_հասցե>/<պահոց_անուն>:<տեգ>
# Docker Hub-ի համար
docker push myuser/my-nginx-image:latest

Ստեղծման և push-ի գործընթացը հաճախ ավտոմատացվում է CI/CD համակարգերով (Jenkins, GitLab CI, GitHub Actions և այլն):