GNU/Linux >> Linux の 問題 >  >> Panels >> Docker

Dockerイメージをあるサーバーから別のサーバーにパッケージ化して転送する方法

開発マシンでDockerイメージを構築し、それをサーバーにデプロイする場合は、Dockerレジストリを使用できますが、Dockerには、イメージをファイルに保存して別のサーバーにロードするためのツールもあります。

コンテナレジストリは必要ありません

通常、コンテナーのビルド(イメージと呼ばれる)をリモートサーバーに転送するには、Dockerコンテナーレジストリを使用します。これは断然最善の方法です。これは単一の権限であり、複数のサーバーに更新を簡単に配布できます。これには、コンテナを公開する必要もありません。 GoogleのGCRやAWSのECSなど、優れたプライベートコンテナレジストリがたくさんあります。 DockerHubはプライベートリポジトリもサポートしています。単にプライバシーが心配な場合は、プライベートレジストリに切り替えて、docker pushを引き続き使用してください およびdocker pull

ただし、昔ながらの方法でそれを実行しようとしている人のために、Docker CLIには、画像をファイルに保存し、それらをリモートサーバーにロードするためのツールがいくつか含まれています。

画像を保存するには、docker saveを使用できます 、出力ファイルを指定してから、画像名とタグを指定します。

docker save -o ./savedimage imagename:tag

タグを指定しない場合、Dockerはすべてのタグをパッケージ化します。

これにより、画像のコピーがシリアル化され、出力ファイルの下に保存されます。画像はtarfileとして保存されます。 tar.gzとして保存する場合 、-oは省略できます フラグを立てて出力をgzipにパイプします :

docker save imagename:tag | gzip > savedimage.tar.gz

次に、このファイルとscpを取得できます またはターゲットサーバーへのFTPコピー。そこに到達したら、docker loadを使用できます 再度インポートするには:

docker load -i savedimage

これにより、docker build . -t imagenamedocker container runを使用してローカルで作成されたイメージと同じように使用できます :

docker container run imagename

Docker
  1. Dockerを使用してOpenVPNサーバーをインストールしてホストする方法

  2. Dockerイメージを他の人と共有する方法

  3. 非 cPanel サーバーから Web サイトを転送する方法

  1. Dockerキャッシュ–クリーンなイメージの再構築とDockerキャッシュのクリアを行う方法

  2. ホスト間でDockerイメージを移動する方法

  3. Dockerイメージを変更する方法

  1. cpmoveを使用してあるサーバーから別のサーバーにアカウントを転送/移行する方法

  2. Dockerfileを使用してカスタムDockerイメージを自動的に構築および構成する方法–パート3

  3. コンテナと Dockerfile から Docker イメージを作成する方法