コンテナは IT の風景に溶け込んでいる。 実際、アプリケーションやサービスのコンテナ化により、企業は以前よりもさらに俊敏になることが可能になりました。
そして、自分の会社のためにもう少し俊敏さを求めない人はいないでしょう。 コンテナーは、ソフトウェアを小さく自己充足的なパッケージとして展開する方法です。 例えば、NGINXサーバーをデプロイしたい場合、サーバーとその依存関係をすべて標準ハードウェアまたは仮想ハードウェアにインストールする代わりに、NGINXイメージを取得し、そのイメージに基づいてコンテナをデプロイするだけです。 数秒で NGINX Web サーバーを使用する準備が整います。
“Why not just use a virtual machine?” と思われるかもしれません。 仮想マシンとは異なり、コンテナは、それを実行するために本格的なオペレーティング システムを必要としません。 実際、コンテナはプラットフォームに依存しません。 コンテナをサポートするシステムさえあれば、デプロイすることができるのです。 さらに良いことに、コンテナは、どのプラットフォームにデプロイされても、常に同じ方法で実行されます。
しかし、コンテナをデプロイするために何が使用されるのでしょうか。 1 つのシステムとして Docker があります。 Docker は、コンテナ化されたソフトウェアをロールアウトするために利用できる最も簡単なツールの 1 つです。
コンテナの利点は何ですか。
コンテナを使用する利点は(従来の方法または仮想マシンのいずれよりも)たくさんあります。 以下はその一部です。
- 迅速なデプロイ。 Docker Hub からダウンロードしたイメージにより、1 つのコマンドでコンテナーを迅速にデプロイできます。
- 単一のイメージから好きなだけ多くのコンテナーを作成することができます。 コンテナーは、従来の方法よりもはるかに少ないシステム リソースを必要とします。
- 移植性。 コンテナーとして実行されるアプリケーションは、異なるオペレーティング システムやハードウェア プラットフォームにデプロイできます。
- より容易なアプリケーション開発。 設計上、コンテナはアジャイル開発サイクルをサポートします。
- ほぼ即時の起動。 仮想マシンの起動に時間がかかるのに対し、コンテナはほぼ瞬時に起動できます。
- モジュール性。
コンテナーとは何か、なぜそれを使うべきなのかをもう少し理解していただいたところで、最も人気のあるオープンソースのサーバーOSであるUbuntu Server (version 18.0) にDockerをインストールする方法を説明しましょう。04)とCentOS 7です。
CentOS 7にDockerをインストールする
まず、CentOS 7にDocker CE(Community Edition)をインストールします。 インストールはコマンドラインから行いますので、CentOS 7のサーバーにログインして、入力の準備をしてください。
最初のステップは、Dockerに必要な依存関係をインストールすることです。 これを行うには、次のコマンドを実行します。
1
|
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
|
このコマンドが完了したら、次に、このコマンドで、次のコマンドを実行してください。 コマンドでdocker-ceのリポジトリを追加する必要があります。
1
|
sudo yum-config-manager –add-repo https://download.docker.com/linux/centos/docker-ce.repo
|
リポジトリがあるところで、コマンドで docker-ce をインストールしましょう。
1
|
sudo yum install docker-ce
|
インストール (と GPG キー – 図 A 参照 ) を承認するかどうかを尋ねられます。
Figure A
これが完了したら、ユーザーを Docker グループに追加する必要があります。 このステップをスキップすると、sudo を使用して Docker コマンドを実行することしかできなくなり、これはセキュリティ上のリスクとなります。 ユーザーをDockerグループに追加するには、次のコマンドを実行します。
1
|
sudo usermod -aG docker $(whoami)
|
CentOS 7 からログアウトして変更を有効にするにはログインし直します。
最後に、Dockerデーモンを起動し、システムブート時に起動するように有効化する必要があります。 これは、次の 2 つのコマンドで行うことができます。
1
2
|
sudo systemctl enable docker
を実行する。 sudo systemctl start docker
|
コマンド docker images (これはシステムで見つかった利用可能なイメージを一覧するコマンドです) を発行すると、次のようになります。 は、Dockerが動作しているだけでなく、現在利用可能なイメージがないことがわかります(図B)。
docker_b.jpg
Docker は稼働していますが、イメージは含まれていないことがわかります。
Docker Hub から NGINX イメージを引き出す場合は、コマンドを実行します。
1
|
docker pull nginx
|
docker images コマンドを再び発行すると、新しく pull したイメージを使用できます (図 C)。
Figure C
NGINX イメージはコンテナー展開に使用する準備ができています。
Ubuntu Server 18.04 への Docker インストール
Ubuntu Server への Docker インストールは実際には非常に簡単です。 Docker は標準のリポジトリにあるので、Ubuntu Server にログインして、次のコマンドを発行するだけです:
1
|
sudo apt-get install docker.Docker.DockerGet
|
上記コマンドにより、Docker を実行するために必要なすべての依存関係がインストールされます。 それが完了したら、コマンドで docker サービスを有効にして起動します。
最後に。 コマンドでdockerグループに自分を追加します。
サーバからログアウトしログインしなおしてみてください。 これでCentOS 7の時と同じようにコマンドを発行することができます。 コマンドで利用可能なイメージをリストアップします:
予想通りイメージが表示されないでしょう(図 D)。 Figure D Ubuntu Serverではまだ利用可能なイメージはないようです。 コマンドでNGINXのイメージを引き下げます。
画像がダウンロードできたら、もう一度 docker images コマンドを出して一覧を確認しましょう(図 E)。 Figure E Ubuntu Serverで利用できるNGINXイメージ まとめ以上、CentOS 7とUbuntu Server 18.04 にDockerインストールする方法について説明しました。 本シリーズの次回のインストールでは、Docker Hubから引っ張ってきたNGINXのイメージを使って、コンテナを展開する方法を学びます。 Feature image by _jinnie_ from . |