AWS EC2でDockerコンテナーを使用する方法

前書き

過去数年間、Dockerなどのコンテナー技術の使用は、さまざまなセクターの機関で大幅に増加しています。その結果、AmazonやGoogleなどの人気のクラウドプロバイダーは、これをサポートする高度なツールを発明しました。それらの一部には、Amazon Elastic Compute Cloud(EC2)、Amazon Elastic Container Service(Amazon ECS)、およびEC2 Container Registry(ECR)が含まれます。 EC2はクラウドでスケーラブルな仮想サーバーを提供するお気に入りの製品であり、Amazon ECSはEC2インスタンスのスケーラブルなグループでDockerアプリケーションを実行および管理するために使用されるAmazon Webサービスです.


この記事では、AWSの単一サーバーにDockerコンテナーをデプロイする方法を見ていきます.

レッツ・ロール!

Dockerコンテナーのデプロイ

まず、Dockerを手動でインストールして実行することにより、AWSでサーバーを実行する方法を見ていきます。 AWSでDockerイメージを実行する方法についても説明します。まあ、プロセスを成功させるには、サーバーが必要です。この場合は、EC2インスタンスと呼ばれる仮想サーバーを簡単に起動できるAWS EC2を使用できます.

ステップ1:EC2インスタンスをセットアップする

AWSにアクセスして、EC2コンソールにアクセスするためのリンクをクリックします。クリック インスタンスを起動

次に、EC2を正常に実行するために、 アマゾンマシンイメージ(AMI). AMIには、AMIを構成してサーバーで起動するために必要なすべてのソフトウェアコンポーネントが含まれています。 AWSは、MYSQL、AMI、Windowsなどの無料およびサブスクリプションのオプションを多数提供しています。この場合、Amazon Linux AMIを選択します.

次に、 インスタンスタイプ インストール中に必要なCPU、ストレージ、ネットワーク容量、メモリのタイプを決定します。選ぶ t2.micro, 次に示すように、[次へ]ボタンをクリックします。

上記のボタンをクリックして、セキュリティ構成ページに到達するまで、すべてのインスタンス機能のデフォルト設定を保持します。このページには、システムトラフィックを制御するファイアウォールルールが含まれています。デフォルトでは、すべての新しいポートがブロックされるため、このページを使用して、任意のソースからの着信HTTPおよびSSHリクエストを許可します。セキュリティクラスタに名前を付けてから、 レビューと立ち上げ ボタン:

このページで、 発売 ボタンをクリックすると、ポップアップページが表示され、選択する必要があります キーペア. これには、SSH経由でEC2インスタンスにリンクするために使用される公開鍵フォルダーと秘密鍵フォルダーの両方が含まれています。 「新しい鍵ペアを作成」ボタンをクリックして、鍵に名前を付けます。先に進んで、キーペアをダウンロードしてください.

これで、キーファイルをシステムの安全な場所に保存できます。インスタンスの起動に進みます。これにより、起動ページに移動します。ヒット “インスタンスの表示」 にアクセスするためのボタン EC2インスタンス ページ.

このページには、存在するEC2インスタンスのリスト全体が表示されます。詳細を確認するには、このページの新しいEC2インスタンスファイルをクリックしてください。パブリックアドレスと起動時刻が表示されます。 Dockerのインストール時にSSHで使用するため、IPアドレスをコピーします。.

Dockerのインストール

次に、EC2インスタンスにDockerをインストールします。キーペアが保存されている場所でターミナルを開き、次のコマンドを入力します。

> cd〜/ my-aws-key-pairs
> chmod 400 my-ec2-key-pair.pem
> ssh -i my-ec2-key-pair.pem ec2-user @

正しい情報を入力すると、次の情報が得られます。

__ | __ | _)
_ | (/ Amazon Linux AMI
___ | \ ___ | ___ |

https://aws.amazon.com/amazon-linux-ami/2015.09-release-notes/
[ec2-user] $

次に、Dockerをインストールします。

[ec2-user] $ sudo yum update -y
[ec2-user] $ sudo yum install -y docker
[ec2-user] $ sudo service docker start

含める ec2-user ドッカーセットで使用せずにコマンドを実行します sudo. このプロセスを適用するには、ログアウトしてから再度ログインする必要があります。

[ec2-user] $ sudo usermod -a -G docker ec2-user
[ec2-user] $ exit

> ssh -i my-ec2-key-pair.pem ec2-user @

[ec2-user] $ docker info

すべてを正しく実行すると、上記のコマンドでDockerのインストールに関する大量の情報がエラーなしで表示されます。これでイメージを実行できます。この場合、トレーニング/ Webアプリを使用して次のようなものを取得します。

[ec2-user] $ docker run -d -p 80:5000 training / webapp:latest python app.py

コンテナーのDockerにEC2インスタンスにあるポート5000をポート80にリンクするように指示する「-p 80:5000」テキストに注意してください。次のコマンドを使用して、プロセスが完了したかどうかをテストします。

[ec2-user] $ curl http:// localhost
こんにちは世界!

「Help world」というメッセージが表示されたら、DockerコンテナーがAWSクラウドで実行されていることを確認してください.
Dockerコンテナをデプロイする

では、最初のコンテナを実行します.

を作成する Nginx 次のコマンドを入力してコンテナ:

[ec2 -user @ ip-172-31 -8 -51〜] $ docker run -d -p 80:80–name nginx nginx
ローカルで画像「nginx:latest」を見つけることができません
最新:ライブラリ/ nginxからのプル
94ed0c431eb5:完全なプル
9406c100a1c3:プル完了
aa74daafd50c:プル完了
ダイジェスト:sha256:788fa27763db6d69ad3444e8ba72f947df9e7e163bad7c1f5614f8fd27a311c3
ステータス:nginxの新しいイメージをダウンロード:最新
b60fe57f39f49b7de72e6ceff7d1333ea5b2f6a13952064a831cd634e8b5c3c
[ec2 -user @ ip-172-31 -8-51〜] $

dockerのコマンドを実行して、nginxコンテナが正常に作成されたことを確認します。

[ec2 -user @ ip-172-31 -8-51〜] $
コンテナーIDイメージコマンド作成されたステータスポート名
60fe57f39f4 nginx "nginx -g ‘デーモン…." 12秒前12秒0.0.0.0:80->/ tcp nginx
[ec2 -user @ ip-172-31 -8-51〜] $

最後のステップは、 パブリックDNS名 ブラウザでは、次のようなものが必要です。

これで、Docker ContainerまたはAWS EC2のデプロイに成功したため、すべてが完璧に見えます。ただし、上記の手動プロセスを使用すると、自動化と統合でいくつかの問題が発生する可能性があります.

  • 上記のプロセスには1つのDockerコンテナーを単一のEC2インスタンスにデプロイする必要があるため、最初は自動化です。では、複数のコンテナにいくつかのEC2インスタンスをデプロイするにはどうすればよいでしょうか。?
  • 次は統合です。 AWSクラウドでDockerコンテナを実行する場合、それは構成プロセス全体の一部にすぎません。ただし、Dockerをシステムの他の構造と統合する必要があります。.

これらの問題を解決するには、ECSの下でEC2インスタンスのセットを表すECSグループまたはクラスターを作成する必要があるEC2コンテナーサービス(ECS)を使用できます。次に、実行する必要のあるコンテナーを指定し、ECSに任せて、指定されたクラスターにそれらのコンテナーをデプロイします。これには、新しいバージョンの開発や他のAWS構造の統合に使用することも含まれます.

ECSは、さまざまなEC2インスタンスで異なるDockerコンテナーを管理するのに役立ちます。.

結論

おめでとう!これで、AWS EC2でDockerコンテナーを正常に構成およびデプロイする方法を学びました。これまでお読みいただきありがとうございます。この情報が、DockerのインストールとEC2での展開に行き詰まっている方に役立つことを願っています。.

これらの上位3つの最高のWebホスティングサービスをチェック

FastComet

開始価格:
$ 2.95


信頼性
9.7


価格
9.5


使いやすい
9.7


サポート
9.7


特徴
9.6

レビューを読む

FastCometにアクセス

A2ホスティング

開始価格:
$ 3.92


信頼性
9.3


価格
9.0


使いやすい
9.3


サポート
9.3


特徴
9.3

レビューを読む

A2 Hostingにアクセス

ChemiCloud

開始価格:
$ 2.76


信頼性
10


価格
9.9


使いやすい
9.9


サポート
10


特徴
9.9

レビューを読む

ChemiCloudにアクセス

関連するハウツー記事

  • AWS EC2でDockerコンテナーを使用する方法
    専門家
  • AWS EC2でDockerコンテナーを使用する方法
    専門家
  • AWS Lightsailでウェブサイトをホストする方法
    中間
  • AWSでcPanelをセットアップする方法
    中間
  • CentOS 7 VPSまたは専用サーバーでDocker Swarmクラスターをセットアップする方法
    専門家
Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me