Dieser Artikel vermittelt Ihnen das Wissen über Compose in Docker, einschließlich der Compose-Dateistruktur und des Wissens über die Installation des Docker-Compose-Tools.
Was ist Docker Compose?
Docker Compose ist eine Container-Orchestrierungsfunktion, die verschiedene Server, die in verschiedenen Containern laufen, orchestriert und vereint.
kann verwendet werden, um die meisten Container auf einheitliche Weise zu verwalten: einschließlich, aber nicht beschränkt auf: Netzwerk, Port, Mount usw. kann zum Implementieren des Clusterings von Containern verwendet werden. Compose kann eine Reihe von Vorgängen im Zusammenhang mit Containern und Bildern ausführen. Das heißt, eine Funktion zum Verwalten von Containern
yml-Datei ist eine Datei im Schlüsselwertformat.
yml-Dateien reagieren sehr empfindlich auf das Format. Sie müssen auf folgende Dinge achten:
Erkennen Sie nur die Einrückung von Leerzeichen, nicht die Einrückungsform der Tabulatortaste.Volumts | |
---|---|
: Der Pfad der Dienst-Docerfile-Datei | Bilder |
Befehl | : Führen Sie eine Anweisung aus |
: Wird verwendet, um den Namen des Containers anzugeben, da der Containername eindeutig ist. Wenn Sie einen benutzerdefinierten Namen angeben, können Sie nicht skalieren (einen Replikatsatz festlegen) | #Repliksatz: Erstellen Sie ein Bild in mehreren Containern. Die Ausführungsumgebung und andere Aspekte dieser mehreren Container sind genau gleich. Wenn ein Container in der Containerarchitektur hängt, können Sie direkt einen identischen Container starten, um die Anzahl der Replikatsätze beizubehalten. Dies ist das Konzept von Replikatsätzen und auch der Kern von K8s. Es kann die Geschwindigkeit von Microservices verbessern, die Notfallwiederherstellung verbessern und eine hohe Parallelitätsleistung erzielen |
: Es ist ein Controller, in k8s ist es ein Plug-in zum Steuern und Verwalten von Replikatsätzen | restart |
Listen Sie den Container auf, der derzeit vom Container gesteuert wird. Container | |
Erstellen und starten Sie den Container. | |
Führen Sie Befehle im Container aus Server, was der Anzahl der Replikatsätze entspricht | Container, Netzwerke, Datenvolumes und Spiegel löschen |
Stoppen/Starten/Neustarten | Containerdienst stoppen/starten/neu starten |
docker compose基本使用格式:docker-compose [options] [COMMAND] [ARGS…] docker-compose选项:
二、安装docker compose工具1、下载curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose Nach dem Login kopieren 首次连接下载的时候,可能会提示失误或者连接不上,可能是因为网络原因,可以多试几次 2、添加权限文件在刚下载之后,默认是没有执行权限的,所以需要手动添加执行权限 chmod +x /usr/local/bin/docker-compos Nach dem Login kopieren 3、运行docker-composedocker-compose Nach dem Login kopieren 可以看到,现在已经正常执行了 三、编译镜像手动创建下面的文件(dockerfile文件之前有的话,直接拉取过来也是可以的) tree . ├── docker-compose.yml ├── nginx │ ├── Dockerfile │ ├── nginx-1.12.0.tar.gz └── wwwroot └── index.html Nach dem Login kopieren 其中yml文件内部 cat docker-compose.yml version: '3' services: nginx: hostname: nginx build: context: ./nginx dockerfile: Dockerfile ports: - 1321:80 - 1707:443 networks: - cluster volumes: - ./wwwroot: /usr/local/nginx/html networks: cluster: Nach dem Login kopieren nginx的dockerfile文件 cat ./nginx/Dockerfile FROM centos:7 ADD nginx-1.12.0.tar.gz /tmp RUN yum -y install pcre-devel zlib-devel gcc gcc-c++ make &> /dev/null \ && useradd -M -s /sbin/nologin nginx \ && cd /tmp/nginx-1.12.0/ \ && ./configure \ --prefix=/usr/local/nginx \ --user=nginx \ --group=nginx \ --with-http_stub_status_module &> /dev/null \ && make &> /dev/null \ && make install &> /dev/null VOLUME ["/usr/local/nginx/html"] EXPOSE 80 CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"] Nach dem Login kopieren index.html文件中就是自己配置的网页信息,就不多做介绍了 确定之后,编译 docker-compose -f docker-compose.yml up -d Nach dem Login kopieren 查看运行结果 docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES da38007f09ab dockercompose_nginx "/usr/local/nginx/sb…" About a minute ago Up About a minute 0.0.0.0:666->80/tcp, :::666->80/tcp, 0.0.0.0:667->443/tcp, :::667->443/tcp dockercompose_nginx_1 #可以看到,这个端口信息就是我们在yml文件中设置的端口信息,直接在这个生效了 docker images REPOSITORY TAG IMAGE ID CREATED SIZE dockercompose_nginx latest b1e4b9dfa72d 3 minutes ago 478MB Nach dem Login kopieren 访问网址端口,查看该网站页面 curl 192.168.75.51:666 hello #显示结果 cat ./wwwroot/index.html hello Nach dem Login kopieren 推荐学习:《docker视频教程》 |
Das obige ist der detaillierte Inhalt vonDocker-Grundlagen erstellen Dateistruktur und Installationstools (detaillierte Beispiele). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!