0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【仮想化技術】Docker-machineを使用してAWS-EC2上にコンテナ環境を作成する

Posted at

docker-Machineとは

下記の記事を参照

事前

IAM(Identity and Access Management)は、AWSリソースのアクセス制御を管理するサービスで、アクセスキーはAWSのAPIやCLI経由で認証するための情報です。

  • aws_access_key_id:公開識別子(アクセスID)
  • aws_secret_access_key:認証用の秘密鍵(非公開)

これらの認証情報は、AWS CLI や SDK を使って、AWSのリソース(EC2、S3、RDS など)にプログラム的にアクセスするために使用されます。下記のようにcredentialsに登録しておきます。

user@host .aws % cat credentials
[default]
aws_access_key_id = xxxxxxxx
aws_secret_access_key = xxxxxxx

docker-machineを作成

docker-machine create \
 --driver amazonec2 \
 --amazonec2-access-key xxxxxxxx \
  --amazonec2-secret-key xxxxxxxx \
  --amazonec2-instance-type t2.micro \
  --amazonec2-region us-east-2\
  --amazonec2-root-size 16 \
  --amazonec2-security-group docker-machine \
  --amazonec2-vpc-id vpc-xxxxxx \
  --amazonec2-subnet-id subnet-xxxxxxx \
  --amazonec2-open-port 8000  \
 aws-sandbox2

下記のようにdocker-machineが作成される。

user@host .aws % docker-machine ls
NAME           ACTIVE   DRIVER      STATE     URL                       SWARM   DOCKER    ERRORS
aws-sandbox2   -        amazonec2   Running   tcp://xx.xx.xx.xx          v28.0.1

コンテナを起動

この状態でnginxのコンテナを起動してみます。そしてこのコンテナのipアドレスも確認してみます。

docker run -d -p 8000:80 --name webserver nginx
docker-machine ip aws-sandbox2
x.xx.xx.xx

実際に、ブラウザからこのパブリックIPに8000ポートに接続すると、IPがルーティングされてEC2上で起動しているnginxのコンテナ80ポートにつながり画面が表示されました。

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?