iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 10
1

我們希望每個容器功能性都盡量單純,但是我們的服務卻一點都不單純,所以我們常常需要同時執行多個容器,那要怎麼控制多個容器之間的溝通與資源共享呢?

Compose 就是因為這個需求所存在的,Compose 可以執行和管理多個容器,設定檔則是使用 YAML 格式。透過他你可以使用單一個指令把所有服務啟動或關閉。

docker compose 範例

下面這個官方的範例,意思是就是這個服務中有兩個容器,一個容器叫 redis 並使用官方最新的 redis 映像檔,另一個容器叫 web 在目前工作目錄下建構一個映像檔當作來源,並且開放 5000 這個對外 port,掛兩個 volume,本機的目前位置掛到容器的 /code 路徑,建立一個名字叫 logvolume01 的 volume 並掛在 web 容器的 /var/log 路徑位置。

docker-compose.yml

version: '3'
services:
  web:
    build: .
    ports:
      - '5000:5000'
    volumes:
      - .:/code
      - logvolume01:/var/log
    links:
      - redis
  redis:
    image: redis
volumes:
  logvolume01: {}

接著我們只要執行

docker-compose up -d

就可以一鍵啟動兩個容器,接著執行

docker-compose down

就可以把兩個都停止。

資料來源


上一篇
Day09 - Docker CLI 常用語法
下一篇
Day11 - 安裝 Kubernetes
系列文
誤入 DevOps 叢林的後端工程師30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言