在 docker compose up --build -d 命令中,?**-d?(或 --detach)參數的作用是讓容器以后臺模式(detached mode)?**運行。以下是詳細解釋:
?**-d 參數的作用**
?后臺運行容器:
默認情況下,docker compose up 會附著(attach)?到容器的日志輸出,占用當前終端窗口。
添加 -d 后,容器啟動后會立即釋放終端,允許你繼續在終端中執行其他操作。
?適用場景:
在腳本或自動化流程中啟動服務,無需手動干預。
長期運行的服務(如 Web 服務器、數據庫),不需要實時查看日志。
?命令行為對比
- ?不使用 -d 參數:
bash
docker compose up --build
終端會實時打印所有容器的日志輸出。
按下 Ctrl+C 會停止容器并退出。 - ?使用 -d 參數:
bash
docker compose up --build -d
容器啟動后,終端僅顯示容器名稱和狀態(如 done),隨后返回命令行。
按下 Ctrl+C ?不會影響容器運行,需手動停止(見下文)。
?附加操作
?查看運行中的容器:
bash
docker compose ps
?查看實時日志:
bash
docker compose logs -f # -f 表示持續跟蹤日志
?停止后臺容器:
bash
docker compose down # 停止并刪除容器(保留卷)
docker compose stop # 僅停止容器
?參數組合說明
–build:強制重新構建鏡像(無論鏡像是否已存在)。
-d:僅控制容器的運行模式,與 --build 無依賴關系。
?總結
?**-d 的核心作用**:讓容器在后臺運行,釋放終端。
?適用場景:需要長期運行服務或自動化部署時,優先使用 -d。