Sette opp ditt eget Docker -bildelagde

Sette opp ditt eget Docker -bildelagde
Å sette opp ditt eget private Docker -bildelagde er veldig viktig av mange grunner. Med ditt private Docker -bildelagde kan du:
  • Hold bildene du laster ned fra Docker Hub til ditt private Docker -bildelager for fremtidig bruk.
  • Hold Docker tilpassede bilder som du har bygget på ditt private Docker -bildelager.
  • Få tilgang til det private Docker -bildelaget fra hvilken som helst Docker -server.

I denne artikkelen skal jeg vise deg hvordan du konfigurerer og bruker ditt eget private Docker -bildelager. Så la oss komme i gang.

Forutsetninger:

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.JSONLinuxhint-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.

Startregisterbeholder:

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.