Ինչպես հավաքել պատկեր և ուղարկել այն գրանցամատյան:
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 և այլն):