2021-05-12 14:32:11
容器:Ubuntu 16.04安裝Docker Compose詳解
什麼是Docker Compose
Docker Compose是執行多容器Docker應用程式的工具。要使用Compose設定應用程式的服務,我們使用組態檔,然後執行單個命令,可以建立並啟動設定中指定的所有服務。
Docker Compose適用於許多不同的專案,如:
- 開發:使用Compose命令列工具,我們建立(並互動)一個孤立的環境,這將承載正在開發的應用程式。
- 通過使用Compose檔案,開發人員將記錄並設定所有應用程式的服務依賴關係。
- 自動測試:此用例需要執行測試的環境。Compose提供了一種方便的方式來管理測試套件的隔離測試環境。完整的環境在Compose檔案中定義。
- Docker Compose是在Fig 組態檔中建立的,這個社群專案現在沒有使用。
在本教學中,我們將看到如何在Ubuntu 16.04機器上安裝Docker Compose。
安裝Docker
為了安裝Docker Compose,我們需要Docker。首先,為官方Docker儲存庫新增公鑰:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add-
接下來,將Docker儲存庫新增到apt源列表中:
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
更新資料庫包,使用用apt安裝Docker:
$ sudo apt-get update
$ sudo apt install docker-ce
在安裝過程結束時,Docker守護程式應該啟動,以便在引導時載入。 我們可以使用以下命令檢查其狀態:
$ sudo systemctl status docker --------------------------------- ● docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running)
安裝Docker Compose
此時可以安裝Docker Compose。 通過執行以下命令下載當前版本:
# curl -L https://github.com/docker/compose/releases/download/1.14.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
去除執行許可權:
# chmod +x /usr/local/bin/docker-compose
檢查Docker Compose版本:
$ docker-compose -v
輸出應該是這樣的:
docker-compose version 1.14.0, build c7bdf9e
測試 Docker Compose
Docker Hub包含用於演示的Hello World映象,說明了使用Docker Compose執行容器所需的設定。
建立一個新的目錄並進入它:
$ mkdir hello-world $ cd hello-world
建立一個新的YAML檔案:
$ $EDITOR docker-compose.yml
在此檔案中貼上以下內容:
unixmen-compose-test: image: hello-world
注意:第一行用作容器名稱的一部分。
儲存並退出。
執行容器
接下來,在hello-world目錄中執行以下命令:
$ sudo docker-compose up
如果一切正確,這應該是Compose所顯示的輸出:
Pulling unixmen-compose-test (hello-world:latest)... latest: Pulling from library/hello-world b04784fba78d: Pull complete Digest: sha256:f3b3b28a45160805bb16542c9531888519430e9e6d6ffc09d72261b0d26ff74f Status: Downloaded newer image for hello-world:latest Creating helloworld_unixmen-compose-test_1 ... Creating helloworld_unixmen-compose-test_1 ... done Attaching to helloworld_unixmen-compose-test_1 unixmen-compose-test_1 | unixmen-compose-test_1 | Hello from Docker! unixmen-compose-test_1 | This message shows that your installation appears to be working correctly. unixmen-compose-test_1 | unixmen-compose-test_1 | To generate this message, Docker took the following steps: unixmen-compose-test_1 | 1. The Docker client contacted the Docker daemon. unixmen-compose-test_1 | 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. unixmen-compose-test_1 | 3. The Docker daemon created a new container from that image which runs the unixmen-compose-test_1 | executable that produces the output you are currently reading. unixmen-compose-test_1 | 4. The Docker daemon streamed that output to the Docker client, which sent it unixmen-compose-test_1 | to your terminal. unixmen-compose-test_1 | unixmen-compose-test_1 | To try something more ambitious, you can run an Ubuntu container with: unixmen-compose-test_1 | $ docker run -it ubuntu bash unixmen-compose-test_1 | unixmen-compose-test_1 | Share images, automate workflows, and more with a free Docker ID: unixmen-compose-test_1 | https://cloud.docker.com/ unixmen-compose-test_1 | unixmen-compose-test_1 | For more examples and ideas, visit: unixmen-compose-test_1 | https://docs.docker.com/engine/userguide/ unixmen-compose-test_1 | helloworld_unixmen-compose-test_1 exited with code 0
只要命令處於活動狀態,Docker容器就會執行,因此當測試完成執行時,容器將停止。
總結
本文介紹了關於在Ubuntu 16.04機器上安裝Docker Compose的教學。 我們還看到了如何通過YAML格式的Compose檔案建立一個簡單的專案。
更多Docker相關教學見以下內容:
Docker安裝應用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm
Ubuntu 16.04 伺服器上設定使用 Docker http://www.linuxidc.com/Linux/2017-06/145176.htm
Ubuntu 15.04下安裝Docker http://www.linuxidc.com/Linux/2015-07/120444.htm
Docker 安裝範例 http://www.linuxidc.com/Linux/2017-04/142666.htm
Docker 建立基礎映象 http://www.linuxidc.com/Linux/2017-05/144112.htm
在 Ubuntu 15.04 上如何安裝Docker及基本用法 http://www.linuxidc.com/Linux/2015-09/122885.htm
Ubuntu 16.04上Docker使用手記 http://www.linuxidc.com/Linux/2016-12/138490.htm
使用Docker分分鐘啟動常用應用 http://www.linuxidc.com/Linux/2017-04/142649.htm
Ubuntu 16.04下Docker修改組態檔不生效解決辦法 http://www.linuxidc.com/Linux/2017-05/143862.htm
相關文章