I denne artikkelen skal jeg vise deg hvordan du konfigurerer og bruker ditt eget private Docker -bildelager. Så la oss komme i gang.
Du må ha Docker installert for å følge denne artikkelen. Jeg har skrevet mange artikler om å installere Docker i mange forskjellige Linux -distribusjoner. Hvis du har problemer med å installere Docker på ønsket Linux -distribusjon, kan du lese disse artiklene på https: // linuxhint.com.
Hvis du trenger ytterligere hjelp til å installere Docker på ønsket Linux -distribusjon, kan du be om hjelp på https: // support.Linuxhint.com.
Nettverkstopologi:
Dette er nettverkstopologien for å eksperimentere med Docker Private Image Repository i denne artikkelen. Her har jeg 2 virtuelle maskiner (VMS) Linuxhint-Docker1 og Linuxhint-Docker2 med Docker installert. Begge disse VM -ene er på samme nettverk. Her, Linuxhint-Docker1 VM har IP -adressen 192.168.21.203 og DNS -navn Docker1.Linuxhint.lokal. Jeg vil installere og konfigurere en Docker -beholder på Linuxhint-Docker1 VM på port 5000 Å være et Docker privat bildelagde. Deretter vil jeg teste det private docker -bildelaget ved å skyve og trekke Docker -bilder fra Linuxhint-Docker2 Vm. Jeg vil også trekke Docker -bilder som er lastet opp til det private docker -bildelageret fra Linuxhint-Docker1 VM bare for å bekrefte at hvilken som helst Docker -server i nettverket kan bruke bilder fra det konfigurerte private Docker -bildelageret. Så la oss fortsette.
Sette opp et privat Docker -bildelagde:
I denne delen skal jeg vise deg hvordan du setter opp ditt eget private docker -bildelagde. Jeg skal bruke Linuxhint-Docker1 VM i denne delen.
Lag først en katalog på datamaskinen din der du vil lagre alle Docker -bildene av ditt private Docker -bildelager.
$ mkdir -p ~/docker/depot
Lag nå en beholder av register Bilde fra Docker Hub med følgende kommando:
$ Docker Container Run -D -P 5000: 5000 -Navnregister -V
~/docker/register:/var/lib/registerregister
De register beholderen skal opprettes. Docker -bildene du presser på dette private docker -bildelageret vil bli lagret til ~/docker/register Katalog på Linuxhint-Docker1 Vm.
Aktivering av usikkert-register:
Du må aktivere usikkert register på Docker -serverne som du vil få tilgang til Docker Private Image Repository som du har opprettet.
I denne artikkelen vil jeg få tilgang til Docker Private Image Repository konfigurert på VM Linuxhint-Docker1 fra Linuxhint-Docker2 Vm. Så på Linuxhint-Docker2 VM, jeg må fortelle Docker hvilke usikre Docker -depoter jeg vil bruke.
For å gjøre det, opprette en ny Docker -konfigurasjonsfil /etc/docker/daemon.JSON på Linuxhint-Docker2 VM med følgende kommando:
$ sudo nano/etc/docker/daemon.JSON
Skriv inn følgende linjer som er merket i skjermdumpen nedenfor.
"Usikre-registreringer": ["192.168.21.203: 5000 "]
Her har jeg lagt til IP -adressen og porten til Linuxhint-Docker1 Vm. Hvis du har DNS konfigurert i nettverket ditt, kan du også bruke et DNS -navn her.
Jeg har konfigurert DNS for Linuxhint-Docker1 som følger via /etc/verter fil på Linuxhint-Docker2 Vm.
$ sudo nano /etc /verter
Som du kan se, DNS -navnet for Linuxhint-Docker1 VM er Docker1.Linuxhint.lokal
Så du kan legge det til som et usikkert register til /etc/docker/daemon.JSON fil som følger:
"Usikre-registries": ["Docker1.Linuxhint.Lokal: 5000 "]
Jeg har lagt til både IP -adressen og DNS -navnet som det usikre registeret. Så finalen /etc/docker/daemon.JSON Filen ser ut som følger:
Til slutt, start på nytt Docker service på Linuxhint-Docker2 VM med følgende kommando:
$ sudo SystemCTL Restart Docker
Nå kan du bruke ditt eget private Docker -bildelagde som er vert for Linuxhint-Docker1 VM fra Linuxhint-Docker2 Vm.
Å skyve bilder til og trekke bilder fra det private Docker -bildelageret:
Nå, trekk ethvert Docker-bilde fra Docker Hub på Linuxhint-Docker2 VM. Jeg vil gå for Ubuntu Bilde i denne artikkelen.
$ docker image pull ubuntu
Som du kan se, Ubuntu Bildet trekkes fra Docker Hub.
$ docker bildeliste
Nå, for å skyve Ubuntu Bilde til ditt eget private docker -bildelagde, du må merke Ubuntu Bilde i et bestemt format.
Formatet er,
IP: port/image_name: tag_name
Her, IP er IP -adressen eller DNS -navn av VM der den private docker -bildelagerbeholderen kjører.
HAVN er porten der den private docker -bildelagerbeholderen kjører.
Image_name og Tag_name er henholdsvis navnet og taggen til bildet du vil bruke for å identifisere bildet. Tag_name er valgfritt.
Du kan merke Ubuntu Bilde ved hjelp av IP -adresse som følger:
$ docker tag ubuntu 192.168.21.203: 5000/Ubuntu
Du kan også merke Ubuntu -bildet ved å bruke DNS -navn som følger:
$ docker tag ubuntu docker1.Linuxhint.Lokal: 5000/ubuntu
Skyv nå det merkede bildet til det private Docker -bildelageret som følger:
$ docker image push 192.168.21.203: 5000/Ubuntu
Som du kan se, blir bildet lastet opp til det private Docker -bildelageret.
Nå skal jeg fjerne alle hurtigbufrede Docker -bilder fra min Linuxhint-Docker2 Vm.
$ docker image rm ubuntu
$ docker image rm 192.168.21.203: 5000/Ubuntu
Som du kan se, har jeg ikke noe hurtigbufret bilde i det lokale Docker -depotet.
La oss nå prøve å trekke Ubuntu -bildet fra det private Docker -bildelaget.
$ docker image pull 192.168.21.203: 5000/Ubuntu
Som du kan se, blir Ubuntu -bildet trukket fra det private Docker -bildelageret.
Bildet er også hurtigbufret i det lokale Docker -bildelageret.
Som du kan se, kan jeg også trekke bildene på Linuxhint-Docker1 VM lastet opp fra Linuxhint-Docker2 Vm.
Så vi kan skyve og trekke Docker -bilder fra vårt private Docker -bildelagde.
Hvis du starter Docker -serveren din på nytt der register Containeren kjører, så starter den ikke automatisk på neste oppstart. Så det private Docker -bildelagde vil ikke fungere. Men du kan enkelt starte register Container og få den i gang med følgende kommando:
$ docker container startregister
Slik setter du opp og bruker ditt eget Docker -bildelager. Takk for at du leste denne artikkelen.