一通り触ってみたので備忘録も兼ねて書いています。
誤りなどがありましたらご指摘をお願いします。
EC2にログイン
ssh -i キーファイル ec2-user@IPアドレスorDNS名
Amazon ECS における Docker の基本に沿っていく(最初にsudo -i
でrootユーザになってもよい)
sudo yum update -y
sudo yum install -y docker
sudo service docker start
sudo usermod -a -G docker ec2-user
一旦出る
exit
再度SSHで入った後docker info
とかでsudo
を付けずにコマンドが実行できるか確認。
疑問点:EC2を再起動した場合は再度usermodをしないといけない?
Install Docker Composeに沿っていく。
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
で確認。
vi Dockerfile
でvimを開く
# Docker-Hubから落としてくる
FROM php:7.3.5-apache
後ろにはhttps://hub.docker.com/_/phpにあるタグで-apache
とあるのを書く。
これでPHPとApacheが両方入る。
vi docker-compose.yml
で開く
# ファイルフォーマットのバージョンを指定
# https://docs.docker.com/compose/compose-file/
version: '3'
services:
web:
image: web # 'docker images'参照。使用するイメージの指定
build: . # 使用するDockerfileの場所
ports:
- "80:80" # host=EC2のport:gest=コンテナのポート
volumes:
# コンテナ内のデータは永続化されないのでマウントさせる
# hostのフォルダ:gestのフォルダ
- /home/ec2-user/tmp/html:/var/www/html
疑問点:インストールされたdocker-composeは1.24.0なのに指定できないのは何故?
今回は/home/ec2-user/tmp/html
に作成。vi index.php
で開く
<?php echo 'Hello Docker!' ?>
docker-compose build up -d
で諸々が作成・起動される。
docker images
とかdocker ps -a
とかで確認。
ブラウザで表示確認
最初はDockerとdocker-composeとの違いに戸惑いました。Dockerコマンド自体の上位互換と考えれば良さそうですね。
https://qiita.com/hidekuro/items/fc12344d36d996198e96#32-docker
https://qiita.com/kotaro-dr/items/b1024c7d200a75b992fc#コンテナ一覧を確認
https://qiita.com/yumatsud/items/33bc22f7d8f640a286f4#docker-composerの設定
https://qiita.com/Ryooota/items/65ff0c32a5d93f225d7a#4-コンテナの起動
Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。
また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!
こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?
コメント