OSの再起動時に、init.dまたはsystemdのようなプロセスによってDockerデーモンが自動的に再起動すると仮定すると、1つ以上のDockerコンテナを再起動する好ましい方法は何ですか?たとえば、リバースプロキシまたはデータベースサーバーの背後に複数のWebサーバーがある場合があります。
CoreOSはsystemdを使用して長期実行サービスを管理します。
docker -d -r
でデーモンを起動すると、デーモンが停止する前に実行していたすべてのコンテナが再起動されます。これは、次のリリースでデフォルトの動作になります。
私のために働いたのは、--restart='always'
をコンテナに追加することです{run -d ...}コマンド
私が見た唯一のドキュメントは Docker's Host Integration docs です。
基本的に、-r=false
でデーモンを起動し、systemd(またはCoreOS以外を使用している場合はupstart)を使用することをお勧めします。