2017-07-27 7 views
0

CentOS 7のボックスには、デフォルトのDocker 1.12パッケージ(docker)が約12個のコンテナで動作しています。私は、instructionsに従って最新のDockerパッケージ(docker-ce)をリポジトリで提供したいと考えています。`docker`から` docker-ce`にアップグレードするときに、実行中のコンテナを保存することはできますか?

ただし、まずdockerパッケージをアンインストールする必要があります。これは私の走っている容器をゴミ箱に入れますか?もしそうなら、それを避けるためにとにかくありますか?

答えて

3

実際には、live-restoreと呼ばれるドッカー1.12(ちょうどあなたの場合)から始まる機能があります。ドッカーエンジン1.12以降で

https://docs.docker.com/engine/admin/live-restore/#enable-the-live-restore-option

デーモンが使用不能になった場合にコンテナが稼働して残るように、あなたは、デーモンを設定することができます。ライブ復元オプションは、デーモンのクラッシュ、計画された停止、またはアップグレードによるコンテナのダウンタイムを削減するのに役立ちます。

有効にするには、daemon.jsonをこれに更新します。

{ 
"live-restore": true 
} 

次に、SIGHUPをドッカーエンジンに送信します。

場合によっては、必要なバックアップをすべて実行してください。

+0

この信号を安全に送信するにはどうすればよいのですか? –

+1

新しい設定が使用されているかどうかを確認するには '' kill -HUP 'を実行し、lsof を実行し、正しい設定ファイルがリストされていることを確認します。 –

関連する問題