概要
docker-compose.yml
で複数コンテナの定義をする際に、Dockerfileは別にしたい!と調べてたらできたのでメモ。
手順
> mkdir 任意のディレクトリ > cd 任意のディレクトリ > touch docker-compose.yml > touch Dockerfile1 > touch Dockerfile2
build.dockerfile
で指定ができるみたいです。
docker-compose.yml
version: '3' services: container1: build: context: . dockerfile: Dockerfile container2: build: context: . dockerfile: Dockerfile2 container3: build: .
Dockerfile
FROM python:3.6
Dockerfile2
FROM node:latest
コンテナを起動してみます。
> docker-compose up --build Creating network "任意のディレクトリ_default" with the default driver Building container1 Step 1/1 : FROM python:3.6 ---> 4f13b7f2138e Successfully built 4f13b7f2138e Successfully tagged 任意のディレクトリ_container1:latest Building container2 Step 1/1 : FROM node:latest ---> b064644cf368 Successfully built b064644cf368 Successfully tagged 任意のディレクトリ_container2:latest Building container3 Step 1/1 : FROM python:3.6 ---> 4f13b7f2138e Successfully built 4f13b7f2138e Successfully tagged 任意のディレクトリ_container3:latest Creating 任意のディレクトリ_container3_1 ... done Creating 任意のディレクトリ_container2_1 ... done Creating 任意のディレクトリ_container1_1 ... done Attaching to 任意のディレクトリ_container1_1, 任意のディレクトリ_container2_1, 任意のディレクトリ_container3_1 任意のディレクトリ_container1_1 exited with code 0 任意のディレクトリ_container2_1 exited with code 0 任意のディレクトリ_container3_1 exited with code 0
やったぜ。
参考
docker-compose コマンドまとめ
https://qiita.com/wasanx25/items/d47caf37b79e855af95f