Contents

Docker Compose 強制重啟 Container

在 Docker Compose 的早期版本中,連續啟動兩次會導致容器重啟,但在某一版之後,這種行為已經被改變。然而,有時我們可能需要手動重啟容器。在這篇文章中,我將介紹如何重啟容器。

Docker Compose 重啟容器

Docker Compose 是一個用於定義和運行多容器 Docker 應用程式的工具。透過 Docker Compose,您可以使用 YAML 文件來配置應用程式的服務,然後一次性地創建和啟動所有服務。

--force-recreate 是 Docker Compose 的一個選項,當使用此選項時,Docker Compose 會強制重建、重啟容器。這在您需要更新容器設定或應用程式代碼時非常有用。

使用 --force-recreate 選項的命令如下:

1
docker-compose up --force-recreate

Docker 指令重啟容器

在 Docker 中,你可以使用 --restart 參數來設定容器的自動重啟。以下是一個例子:

在這個例子中,--restart=always 指定了如果容器停止,Docker 應該總是嘗試重啟它。除了 always,–restart 參數還可以設定為以下的值:

  • no:容器不會自動重啟。
  • on-failure:只有在容器退出狀態非零(表示出錯)時,才會自動重啟。
  • unless-stopped:除非手動停止,否則總是重啟容器。

請注意,這個設定只適用於容器異常終止的情況,並不包括 Docker 服務或主機的重啟。如果你需要在 Docker 服務或主機重啟後自動啟動容器,你應該使用 Docker 的 –restart 參數。