Docker-compose
はじめに
インフラエンジニア初学者のぽれいんと申します。
転職する前はプログラミングスクールにて主にHTML、CSS、Ruby、MySQL等について学びました。
※このブログでは自分が後々、見返すことができるようにまとめることを目的としていますが、もし需要があるようでしたら是非ともご覧ください。
<前回の記事>
<参考>
Docker Compose を使う|初心者が絵で理解する Docker
《滅びの呪文》Docker Composeで作ったコンテナ、イメージ、ボリューム、ネットワークを一括完全消去する便利コマンド - Qiita
docker-compose.ymlの書き方について解説してみた - Qiita
docker-compose の書き方! 分かりやすいDockerFileとの違い | SHURA-SPOT
docker-compose
docker-composeとは複数のコンテナから成るサービスを自動的に構築、起動してくれる便利なツール。コンテナを複数用意するため、管理がしやすい。
・イメージ図
docker-compose インストール
curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
docker-compose.ymlの書き方
・基本構文
version: "3"
services:
web:
container_name: web
build: ./web
ports:
- "80:80"
volumes:
- ./work:/work
db:
container_name: db
build: ./db
ports:
- "3306:3306"
volumes:
- ./work:/work
・基本構文の意味
version: #composeファイル形式の宣言
services: #サービス。これの下にサービスの名称を記入
container_name: #コンテナの名称
build: #Dockerfileのあるディレクトリを指定してイメージをビルド
ports: #公開用のポートの指定
volumes: #作業フォルダの同期
・こういうのもあるよ
environment: #環境変数の指定
restart: always # いつもコンテナの再起動を実施
depends_on # サービス間の依存関係を指定
便利
今までの状態を元に戻す場合(破滅の呪文)
docker-compose down --rmi all --volumes --remove-orphans
docker rm `docker ps -f "status=exited" -q`