それでは、クライアントマシンから、Dockerプライベートレジストリを利用してみます。クライアントマシンには、連載第46回で示した手順で、事前にDockerエンジンをインストールしておいて下さい。
Dockerエンジンが稼働するクライアントマシンからDockerプライベートレジストリのDockerイメージ「172.16.1.100:5000/ubuntu:16.04」を入手し、Dockerコンテナを起動しますが、Dockerプライベートレジストリを利用するクライアントは、TLS(Transport Layer Security)を使った暗号化通信の利用有無に関する設定を事前に行っておく必要があります。
今回は、TLS通信を行わない設定にします。このTLS通信の有無に関する設定は、クライアントマシンのDockerエンジンの設定ファイル(/etc/docker/daemon.json)として設定しますが、インストール直後は設定ファイルが存在しないため、新規に作成する必要があります。
以下は、クライアントマシンで稼働するDockerエンジンが参照するDockerプライベートレジストリの、TLS通信に関する設定例です。クライアントマシンのコマンドプロンプトは、「client #」で表すとします。
client # vi /etc/docker/daemon.json { "insecure-registries":["172.16.1.100:5000"] } ←プライベートレジストリを指定
上記は、DockerプライベートレジストリサーバのIPアドレスとポート番号の組み合わせとして172.16.1.100:500を設定した例です。上記の設定ファイルを作成したら、Dockerデーモンを再起動します。
client # systemctl restart docker
クライアントマシンから、DockerプライベートレジストリをTLS通信なしで利用することができるようになりましたので、実際に、クライアントマシンから、Dockerプライベートレジストリに登録されたDockerイメージ「172.16.1.100:5000/ubuntu:16.04」を入手し、コンテナが起動できるかを確認してみましょう。
client # docker pull 172.16.1.100:5000/ubuntu:16.04 client # docker run \ > -it \ > --rm \ > --name c1 \ > 172.16.1.100:5000/ubuntu:16.04 cat /etc/os-release NAME="Ubuntu" VERSION="16.04.2 LTS (Xenial Xerus)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 16.04.2 LTS" VERSION_ID="16.04" ...
プライベートレジストリに登録されたDockerイメージ「172.16.1.100:5000/ubuntu:16.04」を入手し、クライアントマシン上でUbuntu 16.04ベースのDockerコンテナが稼働できました。
このように、Dockerプライベートレジストリは、閉じたネットワーク環境でのDockerハブのようなDockerイメージ管理を可能にします。国内外問わず、インターネットにアクセスできない環境においてDockerイメージを社内に配信したいというニーズは少なくありません。Dockerプライベートレジストリは、Dockerイメージの社内保管庫として利用できますので、是非、本連載の手順で構築してみてください。
日本ヒューレット・パッカード オープンソース・Linuxテクノロジーエバンジェリスト。兵庫県伊丹市出身。1996年頃からオープンソースに携わる。2000年よりUNIXサーバのSEおよびスーパーコンピューターの並列計算プログラミング講師、SIを経験。2006年、米国ヒューレット・パッカードからLinux技術の伝道師として「OpenSource and Linux Ambassador Hall of Fame」を2年連続受賞。プリセールスMVPを4度受賞。現在は日本ヒューレット・パッカードにて、Hadoop、Spark、Docker、Linux、FreeBSDなどのサーバ基盤のプリセールスSE、文書執筆を担当。日本ヒューレット・パッカードが認定するオープンソース・Linux テクノロジーエバンジェリストとして、メディアでの連載記事執筆、講演活動なども行っている。Red Hat Certified Virtualization Administrator, Novell Certified Linux Professional, Red Hat Certified System Administrator in Red Hat OpenStack, Cloudera Certified Administrator for Apache Hadoopなどの技術者認定資格を保有。著書に「Mesos実践ガイド」「OpenStack 実践ガイド」「Docker 実践ガイド」「CentOS 7実践ガイド」「Ubuntu Server実践入門」などがある。趣味はレーシングカートとビリヤード。古賀氏の最新記事が読めるブログはこちら。
Copyright © ITmedia, Inc. All Rights Reserved.