本文最先發布在:https://www.itcoder.tech/posts/how-to-install-and-use-docker-compose-on-ubuntu-20-04/
Docker Compose 是一個命令行工具,它允許你定義和編排多容器 Docker 應用。它使用 YAML 文件來配置應用服務,網絡和卷。
使用 Compose, 你可以定義一個可以運行在任何系統上的可移植應用環境。
Compose 通常被用來本地開發,單機應用部署,和自動測試。
本文講解如何在 Ubuntu 20.04 上安裝最新版的 Docker Compose。我們還將探討 Docker Compose 的幾個概念和命令。
一、前提條件
我們假設你已經在你的機器上安裝了 Docker。
二、在 Ubuntu 上安裝 Docker Compose
Docker Compose 是一個二進制文件。安裝非常簡單直接。我們將會將該文件下載到一個目錄,並添加到系統的 PATH 環境變量,同時將該文件設置爲可執行。
Docker Compose 軟件包在官方的 Ubuntu 20.04 源倉庫中可用,但是可能不是最新版本。
在寫作這篇文章的時候,Docker Compose 最新的版本是1.25.5
。
在下載 Compose 之前,瀏覽 Compose 發佈頁面 並且檢查是否有新版本可以下載。
使用curl
將 Compose 文件下載到/usr/local/bin
目錄:
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
一旦下載完成,將該文件設置爲可執行:
sudo chmod +x /usr/local/bin/docker-compose
想要驗證安裝成功,運行下面的命令,打印 Compose 的版本:
docker-compose --version
輸出應該像下面這樣:
docker-compose version 1.25.5, build b02f1306
就這些。Docker Compose 已經在你的 Ubuntu 機器上安裝好了,並且你可以開始使用它了。
三、Docker Compose 入門
在這一節,我們將會是使用 Docker Compose 來構建一個多容器 WordPress 應用。
第一步就是創建一個項目目錄:
mkdir my_app
cd my_app
打開你的文本編輯器,並且創建一個文件,名爲docker-compose.yml
,放在項目目錄下:
nano docker-compose.yml
粘貼下面的內容:
version: '3'
services:
db:
image: mysql:5.7
restart: always
volumes:
- db_data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
wordpress:
image: wordpress
restart: always
volumes:
- ./wp_data:/var/www/html
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: root
WORDPRESS_DB_PASSWORD: password
depends_on:
- db
volumes:
db_data:
wp_data:
讓我們來分析docker-compose.yml
文件的結構。
文件第一行指定了 Compose file的版本。這裏有一些不同的 Compose 版本,每個版本支持指定的 Docker 發行版。
下一步,你定義服務,卷,和網絡。
在這個例子中,我們有服務器,db
和 wordpress
。當 docker-compose 運行,每一個服務運行一個鏡像,創建一個獨立的容器。
服務可以使用 DockerHub 上可用的鏡像,或者從 Dockerfile 文件本地構建的鏡像。服務一段同時還可以指定一些設置,用來指定暴露端口,卷,環境變量,依賴,和其他的 Docker 命令。
在項目目錄,通過運行下面的命令來啓動 WordPress 應用:
docker-compose up
Compose 將會拉取鏡像,啓動容器,並且創建wp_data
目錄。
在你的瀏覽器中輸入http://0.0.0.0:8080/
,你將會看到 Wordpress 安裝屏幕。此時,WordPress 應用已經啓動並且運行了,你可以開始安裝主題或者插件了。
想要停止 Compose,按CTRL+C
。
你還可以通過在 Compose 後面加上-d
選項,以後臺模式啓動 Compose:
docker-compose up -d
想要檢查運行的服務,使用ps
選項:
docker-compose ps
輸出如下:
Name Command State Ports
----------------------------------------------------------------------------------
my_app_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp
my_app_wordpress_1 docker-entrypoint.sh apach ... Up 0.0.0.0:8080->80/tcp
當 Compose 運行在後臺模式,想要停止服務,運行:
docker-compose stop
想要停止,並且移除應用容器,和網絡,使用down
選項:
docker-compose down
四、卸載 Docker Compose
想要卸載 Docker Compose,只需要簡單刪除二進制文件即可,輸入:
sudo rm /usr/local/bin/docker-compose
五、總結
我們已經向你展示如何在 Ubuntu 20.04 上安裝 Docker Compose 。使用 Docker Compose 可以明顯改善你的工作流程,提高你的工作效率。你可以使用 Docker Compose 定義一個開發環境,並且分享給項目合作者。
如果你有任何疑問,請通過以下方式聯繫我們:
微信:
微信羣: 加上面的微信,備註微信羣
QQ: 3217680847