第41回 「ホステッドレジストリ」を知る――NASAも使っているDockerイメージ管理:古賀政純の「攻めのITのためのDocker塾」(1/3 ページ)
今回からは、Dockerイメージの管理サービスについて紹介していきます。NASAのジェット推進研究所でも利用されているDockerイメージの管理サービスを例に、具体的な操作方法も披露します。
Dockerイメージは、個人で使用するだけでなく、複数人で共有して利用する場合もあります。クラウドや専用ソフトウェアの導入による効率的な運用も必要です。今回からは、Dockerイメージの管理サービスについて簡単にご紹介していきます。また、米航空宇宙局(NASA)のジェット推進研究所(通称、JPL)でも利用されているDockerイメージの管理サービスを例に、具体的な操作方法もご紹介します。
NASAの施設というと、米国カリフォルニア州にあるジェット推進研究所や、テキサス州のヒューストンにあるジョンソン宇宙センターが有名ですが、実は、弊社の事業所もヒューストンにあり、NASAにさまざまなIT機器を導入しています。ちなみに、Hewlett-Packard Enterprise(HPE)ヒューストン事業所からNASAまでは、高速道路を使えば、約90分で行くことができます。
ヒューストンには、NASAの関連企業が数多く存在しますが、そういった宇宙産業関連企業へのIT機器の導入においては、米国HPEのヒューストン事業所が大きな役割を果たしています。弊社のヒューストン事業所は、サーバ、ストレージ、ネットワーク機器の組み立てなどを行う巨大工場、研究施設、開発ラボなどがあります。工場では、サーバ機器のラッキングや部品の組み立てだけでなく、商用版のLinux OSのインストール、動作確認なども行っています。また必要に応じて、オープンソースの技術コンサルティングを行う構築部隊がDockerのインストールなども行っています。
米HPEのヒューストン事業所の巨大工場(筆者撮影)。サーバへの商用Linux OSのインストール作業も行われている。また、オープンソースの技術コンサルティングを行う構築部隊がヒューストン事業所に出向き、Dockerの構築を行うこともある
Dockerイメージの配布手段を知る
NASAは、前世紀から研究開発用の大型のコンピューターを数多く導入していますが、最近は、アプリケーションの開発において、Dockerも利用しています。NASAのジェット推進研究所では、Dockerイメージの管理サービスを利用しています。では、NASAでも利用されているDockerイメージの管理サービスとはどのようなものなのでしょうか。
その前に、Dockerイメージの配布手段を知っておく必要がありますので、まずは以下で、主要なDockerイメージの配布手段における概要を紹介します。
Dockerが提供するDocker Hub
連載第40回までは、Dockerエンジンが稼働するマシン上で、docker pullコマンドを使って、さまざまなDockerイメージをインターネットから入手し、ローカルに保存したDockerイメージを取り扱ってきました。このDockerイメージは、Docker社が提供するDocker Hubと呼ばれる一種のDockerイメージの配信サービスで提供されています。Dockerイメージは、Docker Hubから簡単に入手できるため、コミュニティのオープンソースソフトウェアを利用する場合は、Docker Hub上のDockerイメージを入手するのが一般的です。
Docker社が提供しているDocker Hubには、世界中のコミュニティによって膨大な数のDockerイメージがアップロードされています。Dockerイメージだけでなく、そのイメージをビルドするための手順が記されたDockerfile、具体的なビルド手順、Dockerコンテナの実行方法などの情報も入手できます。Docker Hubに限らず、Linuxのアプリケーションのパッケージや、開発者のソフトウェアのソースコードなどを管理する保管庫(データベース)を「リポジトリ」と呼ぶことがありますが、Dockerイメージの保管庫であるリポジトリは、通常、「Dockerレジストリ」と呼ばれています。インターネット経由でユーザーにサービスを提供し、不特定多数でDockerイメージを共有するレジストリは、「パブリックレジストリ」と呼ばれます。
また、Docker Hubは、公開リポジトリ(パブリックリポジトリといいます)の機能だけでなく、プライベートリポジトリも提供しています。
関連記事
- 古賀政純の「攻めのITのためのDocker塾」
- 第37回 Dockerでソフトウェア定義型ネットワーキングツール「pipework」を活用する
前回まで、3回に渡ってOpenStackでも利用されているソフトウェア定義型ネットワーキングを実現するOpen vSwitch(OVS)とovs-dockerを使ってホストOSとコンテナを同一LANセグメントに所属させ、マルチホストのコンテナ間通信を実現しました。今回は、Docker基盤で古くから利用されている「pipework」を使ったネットワーキングをご紹介します。 - 第38回 pipeworkでDockerコンテナに固定IPアドレスを付与する(構築編その1)
ソフトウェア定義型ネットワークを実現する「pipework」のコンテナを実際に使って、ホストOSとDockerコンテナを同一LANセグメントに所属させることで、マルチホストのコンテナ間通信を行う手順を解説します。 - 第39回 DHCPとpipeworkでDockerコンテナに動的IPアドレスを付与する(構築編その2)
Open vSwitch(OVS)を構築したホストOS上で、ソフトウェア定義型ネットワークを実現する「pipework」を利用し、DHCPクライアントの機能を使って、Dockerコンテナに動的にIPアドレスを割り当てる手順を紹介します。 - 第40回 pipeworkでDockerコンテナの送信帯域幅制御を行う(構築編その3)
今回は、ソフトウェア定義型ネットワークを実現する「pipework」を使って、Dockerコンテナのネットワーク帯域幅を制御する具体的な手順をご紹介します。
Copyright © ITmedia, Inc. All Rights Reserved.