Docker Compose 快速入門

wongchaofan發表於2024-07-06

這是一個非規範性示例,僅突出顯示了使用 Compose 可以執行的關鍵操作。

第 2 步:在 Compose 檔案中定義服務

Compose 簡化了整個應用程式堆疊的控制,使您可以輕鬆地在單個易於理解的 YAML 配置檔案中管理服務、網路和卷。

在您的專案目錄中建立一個名為的檔案compose.yaml並貼上以下內容:

services:
  web:
    build: .
    ports:
      - "8000:5000"
  redis:
    image: "redis:alpine"

該Compose檔案定義了兩個服務:webredis

步驟 7:拆分你的服務

使用多個 Compose 檔案可讓您針對不同的環境或工作流程自定義 Compose 應用程式。這對於可能使用數十個容器且所有權分佈在多個團隊的大型應用程式非常有用。

  1. 在您的專案資料夾中,建立一個名為 的新 Compose 檔案infra.yaml

  2. 從檔案中剪下 Redis 服務compose.yaml並將其貼上到新infra.yaml檔案中。確保services在檔案頂部新增頂級屬性。您的infra.yaml檔案現在應如下所示:

services:
  redis:
    image: "redis:alpine"

在您的compose.yaml檔案中,新增include頂級屬性以及檔案路徑infra.yaml

include:
   - infra.yaml
services:
  web:
    build: .
    ports:
      - "8000:5000"
    develop:
      watch:
        - action: sync
          path: .
          target: /code

步驟 8:嘗試一些其他命令

如果您想在後臺執行服務,您可以傳遞標誌-d(“分離”模式)docker compose up並使用docker compose ps它來檢視當前正在執行的內容:

docker compose up -d

Starting composetest_redis_1...
Starting composetest_web_1...

docker compose ps

       Name                      Command               State           Ports         
-------------------------------------------------------------------------------------
composetest_redis_1   docker-entrypoint.sh redis ...   Up      6379/tcp              
composetest_web_1     flask run                        Up      0.0.0.0:8000->5000/tcp

如果你使用 啟動了 Compose docker compose up -d,請在使用完服務後停止它們:

 docker compose stop

相關文章