Docker Compose 是一個 開源 用於運行多容器 Docker 應用程序的容器工具。 Docker Compose 使用 YAML 語法結構,該結構通常用於配置文件以及定義和運行基於容器的應用程序。
Compose 還支持以 YAML 格式定義和配置應用程序的服務。
Docker Compose 的主要優點是你可以在一個文件中定義一個多容器應用程序,這將只用一個命令啟動應用程序,該命令需要執行以使其運行。
使用 Compose,您可以管理應用程序的整個生命週期:
- 通過啟動、停止或重建管理服務
- 查看正在運行的服務的狀態
- 輸出運行服務的日誌
- 對服務運行一次性命令
在本教程中,我們將學習如何在 Ubuntu 20.04 上安裝 Docker-compose,以及如何運行示例容器應用程序。
在 Ubuntu 上安裝 Docker Compose
要成功安裝 Docker Compose,需要在 Ubuntu 20.04 上安裝 Docker。
安裝 Docker 後,您可以使用以下命令驗證是否安裝了 docker 和 versio:
$ docker version
輸出:
Client: Docker Engine - Community
Version: 20.10.6
API version: 1.41
Go version: go1.13.15
Git commit: 370c289
Built: Fri Apr 9 22:47:17 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.6
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 8728dd2
Built: Fri Apr 9 22:45:28 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0
由於我們現在有一個 Docker,我們準備安裝 Docker compose。
到 安裝 docker compose 從官方 Ubuntu 存儲庫,運行:
$ sudo apt install docker-compose
此選項不能保證您下載最新的 docker-compose 版本。
我們建議使用 URL 下載二進制包,而不是從 Ubuntu 存儲庫下載 Docker Compose curl 命令:
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
此命令將文件保存在: /usr/本地/bin 目錄,在名稱下 docker-compose.
輸出:
% Total % Received % Xferd 平均速度時間時間時間當前下載上傳總花費左速度100 633 100 633 0 0 5456 0 –:–:– –:–:– –:–:– 5456 100 12.1M 100 12.1M 0 0 40.0M 0 –:–:– –:–:– –:–:– 40.0M
接下來,我們需要更改文件權限,使用以下命令使下載的文件可執行:
$ sudo chmod +x /usr/local/bin/docker-compose
驗證安裝,並檢查 Docker Compose 版本:
$ docker–compose –version
輸出:
docker-compose version 1.29.2, build 5becea4c
使用示例容器測試 Docker Compose
為您的示例容器創建新目錄 example:
$ mkdir docker-compose-test
更改您剛剛創建的目錄:
$ cd docker-compose-test
從那裡,創建一個 YAML 配置文件:
$ sudo nano docker-compose.yaml
並將以下配置複製到剛剛打開的 docker-compose.yaml 文件中:
version: '2'
services:
hello_world:
image: ubuntu
command: [/bin/echo, 'Hello world']
Save 這個,然後運行:
$ docker-compose up
您應該看到以下步驟:
- 拉你好世界(ubuntu)
- 為 ubuntu 下載的圖像:最新
- 創建 docker-compose-test_hello_world_1
- 附加到 docker-compose-test_hello_world_1
Docker-compose 使用文件夾名稱作為項目名稱來為容器和網絡添加前綴。
這從 ubuntu 映像創建了容器,並運行在 docker-compose.yaml 上指定的命令。
結論
在本教程中,我們學習瞭如何在 Ubuntu 20.04 上安裝 Docker-compose,以及如何運行示例容器應用程序。 Docker-compose 允許您在單個主機上運行多個 docker 容器,如果您需要在多個節點上運行多個容器,請參考 Kubernetes 或 Swarm 等解決方案。