#author("2018-08-30T18:18:55+09:00","","") [[CentOS7]] *Docker : Docker-Registry (SSL) [#rf0a62f5] Docker Private Registry を設定して、自身のローカル環境に Docker イメージを保存します。 デフォルトの HTTPS アクセスを使用する場合の設定です。 Registry Pod を起動するホストで [[こちらを参考>SSL証明書 Let’s Encryptをインストール]]にSSL証明書を取得しておきます。 Registry ノード上の [/etc/letsencrypt/live/(FQDN)] 配下に証明書を取得しているものとして進めます。 証明書を指定して Registry を起動します。 下記設定の場合、イメージは ローカル環境の [/var/lib/registry] 配下に保存されます。 |BGCOLOR(black):COLOR(white):|c |[root@localhost ~]# cp /etc/letsencrypt/live/centos.hoge.com/fullchain.pem /etc/docker/certs.d/server.crt| |[root@localhost ~]# cp /etc/letsencrypt/live/centos.hoge.com/privkey.pem /etc/docker/certs.d/server.key| |[root@localhost ~]# docker run -d -p 5000:5000 --restart=always --name registry \ &br; -v /var/lib/registry:/var/lib/registry \ &br; -v /etc/docker/certs.d:/certs \ &br; -e REGISTRY_HTTP_TLS_CERTIFICATE=/certs/server.crt \ &br; -e REGISTRY_HTTP_TLS_KEY=/certs/server.key \ &br; registry:2 &br; 2: Pulling from docker.io/library/registry &br; 81033e7c1d6a: Pull complete &br; 6ff332201ab29c521fa70e54187d7677f9df1803550f8d61bcaff88f8c602e3b| |[root@localhost ~]# docker ps| |CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES &br; 6ff332201ab2 registry:2 "/entrypoint.sh /e..." 21 sec ago 18 seconds 0.0.0.0:5000->5000/tcp registry| 任意の Docker ノードのローカルイメージをプライベートレジストリに Push/Pull するには以下のように実行します。 |BGCOLOR(black):COLOR(white):|c |[root@node01 ~]# docker images| |REPOSITORY TAG IMAGE ID CREATED SIZE &br; docker.io/centos latest e934aafc2206 9 days ago 199 MB| |&color(lightpink){# タグ付けをして push する};| |[root@node01 ~]# docker tag centos centos.hoge.com:5000/centos| |[root@node01 ~]# docker push centos.hoge.com:5000/centos| |The push refers to a repository [centos.hoge.com:5000/centos] &br; 43e653f84b79: Layer already exists &br; latest: digest: sha256:191c883e479a7da2362b2d54c0840b2e8981e5ab62e11ab925abf8808d3d5d44 size: 529| |[root@node01 ~]# docker images| |REPOSITORY TAG IMAGE ID CREATED SIZE &br; centos.hoge.com:5000/centos latest e934aafc2206 9 days ago 199 MB &br; docker.io/centos latest e934aafc2206 9 days ago 199 MB| |&color(lightpink){# 一旦イメージを削除して Pull 可能か確認};| |[root@node01 ~]# docker rmi docker.io/centos| |[root@node01 ~]# docker rmi centos.hoge.com:5000/centos| |[root@node01 ~]# docker images| |REPOSITORY TAG IMAGE ID CREATED SIZE| |[root@node01 ~]# docker pull centos.hoge.com:5000/centos| |Using default tag: latest &br; Trying to pull repository centos.hoge.com:5000/centos ... &br; latest: Pulling from centos.hoge.com:5000/centos &br; 469cfcc7a4b3: Pull complete &br; Digest: sha256:191c883e479a7da2362b2d54c0840b2e8981e5ab62e11ab925abf8808d3d5d44 &br; Status: Downloaded newer image for centos.hoge.com:5000/centos:latest| |[root@node01 ~]# docker images| |REPOSITORY TAG IMAGE ID CREATED SIZE &br; centos.hoge.com:5000/centos latest e934aafc2206 9 days ago 199 MB|