2017-07-08 1 views
0

私はUbuntu 14.04を使用していて、いくつかのドッカーコンテナと画像をpython script.Nowで実行していますが、別のUbuntuマシンに再インストールする必要があります。私のドッカー環境をバックアップする方法はありますか

Ex: that machine is not even having docker installed 

が別のマシンへの私のように構成のマシンからバックアップの完全なドッキングウィンドウエンジンへの道

+0

ドッキング自体は、なぜあなたがバックアップしたいのですか?イメージ/コンテナを実行するにはドッカーをインストールする必要があります –

答えて

1

バックアップする場所は、コンテナの実行方法や復元する環境によって異なります。バックアップするために、いくつかのディレクトリが含まれます:

  • の/ var/libに/ドッキングウィンドウ:これはすべての画像、コンテナ、プラグイン、および群れの設定が含まれ
  • の/ etc /ドッキングウィンドウ:これはdaemon.jsonですべてのカスタマイズが含まれており、あります一般的にTLS証明書のために使用さ
  • の/ etc/systemdに/システム/ドッキングウィンドウ*:あなたは、これが含まれていません何

はあなたがマウントされたすべてのコンテナ特定のホストボリュームあるこの場所に起動スクリプトをカスタマイズしている場合がありホストファイルシステム上のさまざまな場所にコピーします。これらのディレクトリは、次の方法で検索できます。

$ docker ps -q | xargs docker inspect -f '{{.Name}}: 
{{ range .HostConfig.Binds }}{{.}} 
{{end}} 
' 

ターゲットサーバーを何らかの方法で変更している場合などです。 Linuxの別のバージョンを実行しているカーネルを変更すると、ストレージドライバを変更して古いイメージとコンテナにアクセスできなくなる可能性があります。その場合、イメージをコピーするために、レジストリサーバーを使ってイメージをプッシュし、新しいホストにプルダウンすることをお勧めします。レジストリサーバは、コンテナ内でかなり簡単に実行でき、ホスト間で画像を移動するための好ましい方法です。なんらかの理由でレジストリサーバーを使用できない場合は、古いホストでdocker save、新しいホストでdocker loadを使用して、イメージをtarファイルに保存してインポートすることができます。

プラットフォームを変更すると、イメージをコピーした後も、/var/lib/docker/volumesと他のホストの場所にボリュームをコピーする必要があります。次に、新しいホスト上のコンテナを再起動するために、docker-compose.ymlを使用してコンテナ構成をコピーする必要があります。

1

が最低であり、あなたは新しいUbuntuマシンでドッカー(同じバージョン可能な場合)をインストールする必要があります。

元のマシンでは、正常にコンテナをシャットダウンできます。バックアップ/var/lib/docker(デフォルト)を実行し、新しいコンピュータで復元します。

私はAWS EC2スポットインスタンスでこれを行います。異なるバージョンのDockerで動作するかどうかは保証されません。

関連する問題