Ein Freund stellte am Wochenende Fragen zu Docker. Heute werde ich Ihnen einen schnellen Einstieg in Docker, Kernkonzepte und allgemeine Anweisungen geben. 1. Grundlegende Konzepte und Operationen 1.1. Installation 1.1. Für die Installation von Docker unter CentOS ist die Distributionsversion 7 und höher erforderlich. Es wird empfohlen, den Overlay2-Speichertreiber zu verwenden.
# 卸载已有 docker sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine # 添加安装源 sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo # 安装最新版 sudo yum install docker-ce docker-ce-cli containerd.io # 启动 sudo yum install docker-ce docker-ce-cli containerd.io1.2, Bild
Ein Image kann mehrere Container erstellen. Das Wesentliche beim Ausführen eines Containers ist die Erstellung einer Lese-/Schreibkopie des Dateisystems.
Lebenszyklus:
Erstellt: anfänglicher Konstruktionszustand
Laufend: Ausführungszustand
Gestoppt: Angehaltener Zustand
Pause: Angehaltener Zustand
Gelöscht: Gelöschter Zustand
Vorgänge: 1. Erstellen und starten Sie den Container
Erstellen : docker create -it --name=mynginx mynginx
Start: docker start mynginx
Erstellen und starten: docker run -it --name=mynginx mynginx
2 Beenden Sie den Container Docker stoppt mynginx
3. Betreten Sie den Container Docker Attach Mynginx docker exec -it mynginx sh (mehr verwendet)
4. Löschen Sie den Container Docker RM Mynginx Löschen Sie den laufenden Container: docker rm -f mynginx
5 Exportieren Sie den Container Docker-Export mynginx > mynginx.tar
6 Docker Import mynginx.tar mynginx:import
speichert und verteilt Docker-Images; der Registrierungsserver ist der eigentliche Server, auf dem das Warehouse gespeichert ist, und kann viele Warehouses enthalten, und jedes Warehouse kann mehrere Bilder enthalten.
Öffentlicher Lager-Docker-Hub https://hub.docker.com/ Login: Docker-Login Schieben Sie das Bild in das Lager: Docker Push
Verwenden Sie die Verteilung, um ein privates Lager zu erstellen https://github.com/distribution/distribution
docker run -d -p 5000:5000 --name Registry Registry:2.7 docker push localhost:5000/mynginx
kann das standardmäßige gemeinsame Dateisystem umgehen und direkt auf dem Host in Form von Dateien oder Verzeichnissen existieren. Es löst die Probleme der Datenpersistenz und des Datenaustauschs zwischen Containern. Vorgang: 1. Erstellen: Docker-Volume erstellen Volume-Name
2. -v gibt den Pfad an, der beibehalten werden soll. Docker erstellt das Volume automatisch für uns und bindet es an den Container. docker run -d --name=nginx-volume -v /usr/share/nginx/html nginx
3. Ansicht: Docker-Volume ls
4. - Die Der Parameter -mount gibt den Namen des Volumes an docker run -d --name=nginx --mount source=volume-name,target=/usr/share/nginx/html nginx
6. Datenträger löschen: docker volume rm volume-name
7 : Docker run --mount source=lv,target=/tmp/log --name=v-producer -it test docker run -it --name Consumer --volumes-from v-producer test
8. Datenaustausch zwischen Volumes und Hosts: docker run -v /data:/usr/local/data -it test
Überwachung anzeigen: http://localhost:8080 http://localhost:8080/containers/ http: // localhost: 8080/docker/docker, ist der Docker-Client, sendet Anfragen
- dockerd, der Servereingang, ist für den Empfang von Anfragen und die Rückgabe von Ergebnissen verantwortlich
- docker-init, Container Prozess Nr. 1, verwaltet Untercontainer
- Docker-Proxy, leitet den Netzwerkverkehr des Hosts an den Container
- 2, Containerd
Container, ist für das Lebenszyklusmanagement des Containers verantwortlich, B. Container-Start, -Stopp usw während der Entwicklung und beim Debuggen
- 3
- https://www.jianshu.com/p/91f9d9ec374f
Runc erstellt und zerstört über die Systemschnittstelle Container alle Container auf dem Host. cAdvisor ist eine allgemeine Open-Source-Container-Überwachungslösung von Google. Installationsreferenz:
2. Implementierungsprinzip
- Namespace ist eine Funktion des Linux-Kernels, die im selben Hostsystem implementiert werden kann, um ID zu verarbeiten, Hostname, Benutzer, Dateiname, Netzwerk- und Interprozesskommunikation und andere Ressourcenisolation.
- Docker verwendet sechs Typen: Mount-Namespace, Mount-Point-Isolation PID-Namespace, Prozessisolation UTS-Namespace, Hostnamen-Isolierung IPC-Namespace, Isolation der Kommunikation zwischen Prozessen Benutzernamespace, Benutzer- und Benutzergruppenisolation Net Namespace, Netzwerkgerät, IP-Adresse und Portisolation
2.2, Cgroups
Das obige ist der detaillierte Inhalt vonDocker-Schnellstart, Kernkonzepte und allgemeine Anweisungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!