A certain engineer "COMPLEX"

開発メモ その56 Red Hat Enterprise Linux 7.2でDockerとコンテナを自動で再起動

Problem


マシン再起動後、自動起動してほしいコンテナってありますよね。
Portainerとか特にそうです。
そんな自動起動の方法のメモ。

Resolution


Dockerの自動起動

恐らくデフォルトで自動起動になっているとは思います。
もし、自動起動設定になっていない場合は下記。


$ systemctl enable docker

コンテナの自動起動

再起動を指定できるのは、Dockerのバージョン1.2.0から。
run実行時に--restartオプションを付与することでDocker起動時にコンテナを自動で起動させることができます。
また、オプションに追加可能なポリシーは下記。

ポリシー 内容
no 再起動しない (既定値)
on-failure 終了ステータスが非0の場合に再起動する
on-failure:X 終了ステータスが非0の場合にX回だけ再起動する
always 終了ステータスを無視して再起動する
Configure containers at runtime

ただし、上記の場合は、runで指定する場合で、既に作成したコンテナには使えません。
作成済みコンテナのに対してrestartを設定するには下記。


$ docker update --restart=always

コメントを残す

メールアドレスが公開されることはありません。

%d人のブロガーが「いいね」をつけました。