Dockerコンテナの自動起動設定を確認する方法(WordPressサーバー運用)

Docker

WordPressサーバーをDockerで運用している場合、気になるのが サーバー再起動時の挙動 です。

Ubuntu Serverを再起動したときに

  • WordPress
  • nginx
  • その他のコンテナ

自動で起動するのかどうか

自分も「設定した気がするけど覚えてない」という状態だったので、
確認する方法を調べてついでに記事に残しておきます。


Dockerコンテナの自動起動設定とは

Dockerには Restart Policy(再起動ポリシー) という設定があります。

これを設定しておくと、

  • サーバー再起動
  • Docker再起動
  • コンテナ停止

などのときに 自動でコンテナを再起動してくれます。

WordPressサーバーの場合は 必須設定に近いです。


現在のコンテナを確認する

まず現在動いているコンテナを確認します。

docker ps

CONTAINER ID   IMAGE
abc123 wordpress
def456 mysql
ghi789 nginx

再起動ポリシーを確認する

次にコンテナの restart設定 を確認します。

docker inspect コンテナ名

docker inspect wordpress

出力の中に

"RestartPolicy": {
"Name": "always",

があれば 自動起動設定されています。


もっと簡単に確認する方法

こちらのコマンドの方が見やすいです。

docker inspect -f '{{ .HostConfig.RestartPolicy.Name }}' コンテナ名

docker inspect -f '{{ .HostConfig.RestartPolicy.Name }}' wordpress

結果

always

これなら 自動起動設定済みです。


Restart Policyの種類

Dockerにはいくつかの再起動設定があります。

no(デフォルト)

自動起動しない

always(おすすめ)

常に自動起動

サーバー再起動時も復活します。

unless-stopped

手動停止していない限り起動

on-failure

エラー時のみ再起動


WordPressサーバーでおすすめの設定

基本はこれです。

restart: always

理由

  • サーバー再起動で自動復帰
  • 手動で停止しない限り稼働

WordPress運用なら ほぼこれ一択です。


Dockerコンテナに自動起動を設定する

既存コンテナに設定する場合。

docker update --restart always コンテナ名

docker update --restart always wordpress

docker-composeの場合

docker-composeなら最初から設定できます。

services:
wordpress:
image: wordpress
restart: always

WordPressサーバーは docker-composeで管理しておくと楽です。


今回の確認ポイント

今回自分が確認したのは

  • WordPress
  • nginx

のコンテナが restart: always になっているか

もし設定されていない場合は

docker update --restart always

で修正しておく予定です。


まとめ

DockerでWordPressを運用する場合は

  • コンテナ自動起動設定
  • docker-compose管理
  • バックアップ

このあたりを整えておくと かなり安定します。

今回みたいに

「設定したか覚えてない」

みたいな部分は、
確認ついでに記事にしちゃってます。

コメント

タイトルとURLをコピーしました