Kuidas luua pilti ja saata see registrisse?
sobes.tech AI
Vastus AI-lt
Docker pildi loomine toimub käsuga docker build, mis kasutab Dockerfile juhisena. Dockerfile sisaldab samme pildi loomise jaoks, nagu põhipildi valik, failide kopeerimine, sõltuvuste installimine ja keskkonna seadistamine.
Näide Dockerfile:
# Kasutame põhipilti
FROM ubuntu:latest
# Installime sõltuvused
RUN apt-get update && apt-get install -y nginx
# Kopeerime konfiguratsioonifailid
COPY nginx.conf /etc/nginx/nginx.conf
# Avame pordi
EXPOSE 80
# Käivitame veebiserveri
CMD ["nginx", "-g", "daemon off;"]
Ehituskäsk:
# docker build -t <pildi_nimi>:<silt> <tee_dockerfile'ile>
docker build -t my-nginx-image:latest .
-t my-nginx-image:latest määrab pildile nime my-nginx-image koos sildiga latest.
. näitab praegust kataloogi, kus asub Dockerfile.
Pärast edukat ehitamist on pilt kohaliku registri saadaval. Selle salvestamiseks registrisse (näiteks Docker Hub või privaatne registr) tuleb esmalt registreeruda ja sisse logida käsuga docker login.
# docker login <registri_aadress>
# Docker Hub-i puhul aadressi ei nõuta
docker login
Seejärel tuleb pilt märgistada sobivasse registri aadressi:
# docker tag <kohalik_pildi_nimi>:<silt> <registri_aadress>/<registri_nimi>:<silt>
# Kui kasutaja on 'myuser' Docker Hub-is
docker tag my-nginx-image:latest myuser/my-nginx-image:latest
Lõpuks saab pildi registrisse üles laadida:
# docker push <registri_aadress>/<registri_nimi>:<silt>
# Docker Hub-i puhul
docker push myuser/my-nginx-image:latest
Ehitus- ja üleslaadimisprotsess on sageli automatiseeritud CI/CD süsteemide (Jenkins, GitLab CI, GitHub Actions jne) abil.