Dockerイメージのバックアップリポジトリを移行する手順は次のとおりです。
Dockerレジストリを移行およびバックアップするには、次の手順を実行します。
- 移行先のホストに、移行したイメージの格納にとレーサリーを宛先とする新たな Docker レポジトリを作成します。
- ソースホストにおいてDockerサービスを停止し、移行中に新しいイメージがリポジトリにプッシュされないようにします。
- イメージをエクスポートするには、docker saveコマンドを使用して、ソースマシンのイメージを1つ以上のtarファイル形式でエクスポートします。たとえば、すべてのイメージを1つのtarファイルにエクスポートするには、次のコマンドを実行できます。
- docker save -o images.tar $(docker images -q)
- コピーイメージ: エクスポートしたイメージファイルを、ソースホストからターゲットホストにコピーします。
- イメージのインポート:ターゲットホストで`docker load`コマンドを使用してイメージファイルをインポートします。たとえば、以下のコマンドを実行してイメージをインポートできます。
- docker load -i images.tar
- Dockerレジストリの設定:ターゲットホストにDockerレジストリを設定し、イメージのプッシュと取得リクエストを受け取れるようにする。使用できるのは、DockerレジストリかHarborなどのサードパーティツール。
- ソースホストでイメージをターゲットリポジトリのアドレスにDocker Tagコマンドでタグ付けし、Docker Pushコマンドでターゲットリポジトリへイメージをプッシュする。 例えば次のようなコマンドを実行してイメージをプッシュします。
- docker tag <イメージID> <ターゲットリポジトリアドレス>/<イメージ名>:<タグ>
docker push <ターゲットリポジトリアドレス>/<イメージ名>:<タグ> - 移行検証: ターゲットホストにイメージが正しく移行されたか検証します。docker pullコマンドを使用してターゲットリポジトリからイメージをプルし、docker runコマンドを使用してコンテナを実行してイメージが正常に動作するか検証します。
コンテナレジストリをホスト間で移行してバックアップするには、上記の手順を実行します。具体的な状況によっては、レジストリが格納されているボリュームや、レジストリのデータと設定ファイルの移行など、追加の設定とアクションが必要になる場合があります。