概要
VM1にDocker Private Registryを立て、
そこにpushしたimageをVM2で取得する。
環境
CentOS7の仮想マシンを二つ準備(VM1,VM2)
手順
[VM1]
Docker Private Registryで5000番ポートを使用するため、
ポートを開けておく。
# firewall-cmd --add-port=5000/tcp --permanent
# firewall-cmd --reload
指定したRegistryにSSL通信しないように設定する。
# vi /etc/sysconfig/docker
(以下を設定)
INSECURE_REGISTRY='--insecure-registry <VM1のIPアドレス>:5000'
# systemctl restart docker.service
Docker Private Registryのイメージを取得して起動する。
# docker pull registry
# docker run -d -p 5000:5000 registry
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c0914e450d33 registry:latest "docker-registry" 30 minutes ago Up 17 minutes 0.0.0.0:5000->5000/tcp elated_rosalind
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
sample_image tag_name 2b827fadd9bd 30 minutes ago 260.8 MB
Docker Private Registryにpushするイメージを、タグ付けする。
# docker tag sample_image:tag_name \<VM1のIPアドレス\>:5000/sample_image:tag_name
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
sample_image tag_name 2b827fadd9bd 30 minutes ago 260.8 MB
<VM1のIPアドレス>:5000/sample_image tag_name 2b827fadd9bd 30 minutes ago 260.8 MB
Docker Private Registryにイメージをpushする
# docker push \<VM1のIPアドレス\>:5000/sample_image:tag_name
[VM2]
VM1のDocker Private Registryからイメージを取得する。
# docker pull \<VM1のIPアドレス\>:5000/sample_image:tag_name
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
<VM1のIPアドレス>:5000/sample_image tag_name 2b827fadd9bd 37 minutes ago 260.8 MB