Sobes.tech
Junior

Kā izveidot attēlu un augšupielādēt to reģistrā?

sobes.tech AI

Atbilde no AI

Docker attēla būvniecība tiek veikta ar komandu docker build, kas izmanto Dockerfile kā instrukciju. Dockerfile satur soļus attēla izveidei, piemēram, bāzes attēla izvēli, failu kopēšanu, atkarību instalēšanu un vides konfigurēšanu.

Piemērs Dockerfile:

# Izmanto bāzes attēlu
FROM ubuntu:latest

# Instalē atkarības
RUN apt-get update && apt-get install -y nginx

# Kopē konfigurācijas failus
COPY nginx.conf /etc/nginx/nginx.conf

# Atver portu
EXPOSE 80

# Sāk web serveri
CMD ["nginx", "-g", "daemon off;"]

Būvniecības komanda:

# docker build -t <attēla_vards>:<zīme> <ceļš_uz_dockerfile>
docker build -t my-nginx-image:latest .

-t my-nginx-image:latest piešķir attēlam nosaukumu my-nginx-image ar zīmi latest. . norāda uz pašreizējo direktoriju, kur atrodas Dockerfile.

Pēc veiksmīgas būves attēls būs pieejams lokāli. Lai to saglabātu reģistrā (piemēram, Docker Hub vai privātā reģistrā), vispirms ir jāpiesakās reģistrā ar komandu docker login.

# docker login <reģistra_adrese>
# Docker Hub adrese nav jānorāda
docker login

Tad attēls jāperzīmē, lai tas atbilstu reģistra adresei.

# docker tag <lokālais_attēla_vards>:<zīme> <reģistra_adrese>/<reģistra_nosaukums>:<zīme>
# Ja lietotājs ir 'myuser' Docker Hub
docker tag my-nginx-image:latest myuser/my-nginx-image:latest

Un, visbeidzot, jāaugšupielādē attēls reģistrā:

# docker push <reģistra_adrese>/<reģistra_nosaukums>:<zīme>
# Docker Hub gadījumā
docker push myuser/my-nginx-image:latest

Būvniecības un augšupielādes process bieži tiek automatizēts ar CI/CD sistēmām (Jenkins, GitLab CI, GitHub Actions utt.).