2022-06-27 docker compose の profile でサービス除外
docker compose の profile でサービス除外
docker compose の profile 機能を使うと一部のサービスを除外することができる。
version: "3.9"
services:
backend:
image: backend
db:
image: mysql
db-migrations:
image: backend
command: myapp migrate
depends_on:
- db
profiles:
- tools
例えば上記の設定ファイルがあったときにデフォルトだと db-migrations
コンテナは立ち上がらない
# backend, db のみ起動
$ docker-compose up -d
下記のように明示的に指定することで、コンテナを立ち上げることができる。
$ docker-compose run db-migrations
下記のように debug 時のときのみとか常時実行する必要ないコンテナはこの profile を設定しておくのが吉。
services:
phpmyadmin:
image: phpmyadmin
depends_on:
- db
profiles:
- debug
db:
image: mysql