dockercompose
Posted on 2018-10-10 in zakki
要は
- Dockerfile ( 手動 ) + docker-compose.yml ( 手動 )
- Dockerfile (DockerHub 製 ) + docker-compose.yml ( 手動 )
のどちらでもよいってこと?そもそも、
- Dockerfile:FROM、CMD、RUN、の定義。どのようなコンテナを作成するかを定義。ゲスト(コンテナ)側。
- docker-compose:version、services、volume、の定義。どのようにコンテナを動作させるかを定義。複数のコンテナを動作させるときがメインだけど、一つだけでももちろん良い。ホスト側。
こういうこと?
docker-compose.yml
version: '3'
services:
nginx: ## 任意
build: ## image がなかったらビルドするらしい
dockerfile: ## dockerfile の名前を変えている場合
image: nginx:latest or nginx:v1.15.5 ## こんな感じ ## image は最初にローカルを探して、無かったら DockerHub を探しに行く。
container_name: nginx-container ## sudo docker ps の [NAMES] カラムに表示させたい名前
volumes: ## ホスト側のディレクトリをコンテナ側のディレクトリとしてあつかう(マウント)
- ./logs/nginx/:/var/log/nginx/
- ./html/:/usr/share/nginx/html/
ports: 8080:80 ## ポートマッピング