Docker Compose 指令
NOTE: 新版指令改成 docker compose
。
NOTE: 服務一旦佈署完成,docker-compose.yml 的路徑如果有變更,就不能繼續使用指令 docker-compose 來管理 container,不過已經啟動的服務運行不會影響,但關閉後就無法再被啟動。
新增與啟動所有應用服務
# For all services
docker-compose up -d
# For specified service
docker-compose up -d <service-name>
Build the image of the service
docker-compose build <service-name>
docker-compose up --rebuild <service-name>
目前的應用服務狀態
docker-compose ps
重啟所有應用服務但不要刪除所屬 container
docker-compose stop
docker-compose start
如果 container 屬性沒有異動,只是所屬的服務需要重啟載入新設定,可以使用這。
停止所有應用服務並刪除所屬 container
# For all services
docker-compose down
# For a specified service
docker-compose stop <service-name>
docker-compose rm -f <service-name>
NOTE:
- 如果有修改 docker-compose.yml,必須使用 down 關閉服務後,用 up -d 重新啟動。
- 停止服務後,重新啟動只能使用 docker-compose up -d
檢視服務啟動失敗的日誌
docker-compose logs
執行某個應用服務的特定程序
docker-compose exec <service-name> sh -c "pwd"
環境變數檔 --env-file
docker compose --env-file .env up -d
docker-compose.yml
Set environment variables in containers
web:
environment:
- DEBUG=1