第49回 Dockerプライベートレジストリにユーザー認証を付ける(準備編)古賀政純の「攻めのITのためのDocker塾」(1/3 ページ)

インターネットを経由しないDockerプライベートレジストリに、ユーザー認証を用意することで、社内LANなどにDockerイメージ配信システムを構築できます。今回はこのユーザー認証付きのプライベートレジストリを用意する具体的な方法を解説します。

» 2017年10月06日 08時00分 公開

 前回は、Dockerプライベートレジストリ(DPR)にユーザー認証を付ける方法の概要を紹介しました。今回は、ユーザー認証機能つきのDockerイメージ配信システムを社内LAN上に構築する具体的な方法を紹介します。以下は、ユーザー認証付きの社内配信用のDPRのシステム構成案です。システムのゴール、手段、メリット、想定ハードウェアとソフトウェアの構成を以下に示します。

ゴール

  • 社内の各部門にあるDockerホストから、社内に設置したDPRサーバ経由でDockerイメージを入手、または登録できる。パスワードを付与されたユーザーのみが、DPRを利用できるとする
  • ユーザー「admin」は、Dockerイメージの登録、入手が可能で、ユーザー「koga」は、Dockerイメージの入手のみが可能で、ユーザー「tanaka」は、Dockerイメージの登録も入手もできない設定にする

手段

  • DPRサーバ上で、Authorization Serviceが稼働するDockerコンテナを稼働させることで、ユーザー認証付きのDPRを実現する。利用者側は、Dockerエンジンが稼働できるとする

ユーザー認証機能付きの社内DPR構築のメリット

  • ユーザーは、インターネットにアクセスしない環境においても、Dockerイメージの入手、登録、Dockerコンテナの利用が可能だが、ユーザー認証により、社内の限られたユーザーのみに利用を制限できる
  • Dockerイメージへのアクセス制限を設けることで、社内部門間のDockerイメージの漏えい防止が期待できる

想定ハードウェア

  • HPE Apollo 4200 Gen9サーバー x 1台(DPR用)
  • Dockerコンテナが稼働するマシン x 1台以上(アクセス元のクライアントマシン)

必要なソフトウェア

  • Dockerホスト用のLinux OS
  • Dockerエンジン
  • Docker社が提供するDockerイメージ「registry:latest」
  • Cesanta Softwareが提供するDockerイメージ「cesanta/docker_auth」

 ユーザー認証機能付きDPRの構築手順は以下のとおりです。

  1. ホストOSにDockerエンジンをインストール
  2. OpenSSLにより証明書を作成し、ホストOS上に配置
  3. ユーザー名と対応するパスワードを記述したYMLファイルを作成
  4. YMLファイルをロードするユーザー認証用のDockerコンテナの起動
  5. DPRをコンテナとして起動
  6. Dockerイメージをインターネット経由で入手
  7. 入手したDockerイメージにタグを付与
  8. ユーザー名とパスワードを使って、DPRにログイン
  9. タグを付与したDockerイメージをDPRに登録
  10. ユーザー名とパスワードを使って、クライアントマシンからDockerイメージを入手
  11. 入手したDockerイメージをクライアント上で起動

 ホストOSは、CentOS 7.3.1611(以下、CentOS 7.3と表記)を想定します。また、Dockerエンジンは、2017年9月時点での最新バージョンである「17.06.2-ce」(Docker エンジンのコミュニティエディション)を使用します。各マシンの役割、ソフトウェア構成、ネットワーク構成は、以下のとおりです。

各マシンの役割、ソフトウェア構成、ネットワーク構成
物理マシン サーバ1号機 サーバ2号機
役割 DPR クライアントマシン
ホストOS CentOS 7.3 CentOS 7.3
Dockerエンジン 17.06.2-ce 17.06.2-ce
ホストOSのIPアドレス 172.16.1.100/16 172.16.1.101/16
ホストOSのゲートウェイ 172.16.1.1 172.16.1.1
ホストOSのDNS参照先 172.16.1.254 172.16.1.254
ホスト名 n0100 n0101
レジストリの認証情報 YMLファイルに保持
ユーザー認証付きのDPRのシステム構成例 図 ユーザー認証付きのDPRのシステム構成例
       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ