docker pullが使えない環境でdocker imageを使う方法
いままでWindows 上のVMWare にCentOS を立てて色々動かしていたが、在宅勤務がメインになったのでWindows Update で端末が落ちたりとメンテが面倒になった。
というわけでCentOS サーバーに移行することにした。移行を期に手動でセットアップしていたのをdocker を使用するように変えようと思ったが、そのサーバーのある環境ではセキュリティが厳しく、外部に出られないようになっていた。
yum install もdocker pull も制限されていた。docker pull が使えない環境でdocker を使うにはどうしたいいか。
結論
docker pull ができる環境でimage を保存してLoad する。
やり方
環境
今回の環境は以下の通り。
- docker pull が使えない環境:CentOS
- docker pull が使える環境: Windows
なおdocker pull が使える環境: Windowsでは、VMWare 上でCentOS が動作している。
image の作成
Windows 上のCentOS で以下を実行する。
docker pull image_name docker save image_name > path_to_share_folder/image.tar
- image_name:docker で入れたいもの
- path_to_share_folder:ホストOS との共有フォルダのパス
ホストOSとの共有フォルダにimage.tar が作成されるので、image.tar をDocker pull が使えない環境に持っていく。
Docker のインストール
docker pull が使えない環境にDocker をインストールする。公式手順にある通り、以下の手順でインストールできる。
- .rmpファイルのダウンロード
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ からダウンロードする。ここでも外部に繋げない場合は、外から持ってきてファイル転送する。 - Docker CE のインストール
sudo yum install /path/to/package.rpm - Docker の起動
sudo systemctl start docker
イメージのロード
最後にimage.tar をロードする。
docker load < path_to_image_folder/image.tar
- path_to_image_folder:image.tar の格納先
まとめ
これでdocker pull が使えない環境でdocker image を使うことができた。サーバー移設など、既存のdocker イメージを別の場所に移動する場合にも使えるので参考になれば。
コメント
コメントを投稿