Dockerイメージのファイル書き出し(Save&Load)

プログラミング

所有しているDockerイメージを他のPCでも使用したい場合に使えるコマンドです。
SaveコマンドでDockerイメージをtarファイルに保存します。その後、保存したtarファイルをLoadコマンドでDockerイメージとして取り込みます。

今回操作するDockerイメージは以下で構築したものです。

Dockerイメージの書き出し ※Saveコマンド

# Dockerイメージの一覧
$ docker images                                                                                                                                              
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
php7-apache                             latest              e676f3213cd1        40 hours ago        1.1GB

# php7-apacheをファイルに書き出し
$ docker save php7-apache:latest > php7-apache-image.tar

# 書き出したファイルの確認
$ ls
php7-apache-image.tar

これでDockerイメージのファイル書き出しは完了です。

Dockerイメージファイルの読み込み ※Loadコマンド

# 読み込み前に既存のイメージを削除
$ docker images                                                                                                                                              
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
php7-apache                             latest              e676f3213cd1        40 hours ago        1.1GB
$ docker rmi e676f3213cd1
$ docker images                                                                                                                                              
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
# 削除完了

# 読み込みファイルの確認
$ ls
php7-apache-image.tar

# イメージファイルの読み込み
$ docker load -i php7-apache-image.tar 
20eeb51aa6dd: Loading layer [==================================================>]  81.91MB/81.91MB                                                                                   
100914c44300: Loading layer [==================================================>]  170.6MB/170.6MB                                                                                   
ecb16ac98f26: Loading layer [==================================================>]  152.9MB/152.9MB                                                                                   
5bf87ce9a0a8: Loading layer [==================================================>]  24.31MB/24.31MB                                                                                   
bef3af56afbf: Loading layer [==================================================>]  130.2MB/130.2MB                                                                                   
80ce826b8a6d: Loading layer [==================================================>]  342.6MB/342.6MB                                                                                   
a01430b18708: Loading layer [==================================================>]  3.584kB/3.584kB                                                                                   
Loaded image: php7-apache:latest

# イメージの確認
[root@localhost vagrant]# docker images
REPOSITORY                              TAG                 IMAGE ID            CREATED             SIZE
php7-apache                             latest              e676f3213cd1        40 hours ago        1.1GB

正常にphp7-apacheのイメージが読み込まれました。

以上でDockerイメージのファイル書き出し(Save&Load)は完了です。

pocketcode

30代のWEB系企業エンジニアです。毎回同じようなことを検索してしまうので、自分の備忘録的に書いています。サイトのデザインはQiita(https://qiita.com)さんに寄せています。