如何在 Ubuntu 20.04 上安裝和使用 Docker Compose

本文最先發布在: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

QQ 羣: 82695646雪夢科技交流羣

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章