デフォルト
docker compose build
などを実行する際に特に何も設定していない場合にはカレントディレクトリ名がプロジェクト名となります。
例えばカレントディレクトリがsample-app
であった場合、プロジェクト名もsample-app
となります。
プロジェクト名の設定方法
プロジェクト名は以下の方法で設定できます。
-p
オプションを使用
docker compose
コマンドを実行する際に-p
または--project-name
を使用することでプロジェクト名を指定できます。
ターミナル
$ docker compose -p プロジェクト名 build
$ docker compose --project-name プロジェクト名 build
環境変数で設定する
環境変数COMPOSE_PROJECT_NAME
にプロジェクト名を設定することでプロジェクト名を指定できます。
ターミナル
$ COMPOSE_PROJECT_NAME=プロジェクト名 docker compose build
または
.env
COMPOSE_PROJECT_NAME=プロジェクト名
ターミナル
$ docker compose build
トップレベルのname
で設定
compose.yml
に以下のように記述することでプロジェクト名を指定できます。
compose.yml
name: プロジェクト名
services:
db:
image: mysql:8.0.30
<以下略>
補間
compose.yml
でプロジェクト名を補間するためには${COMPOSE_PROJECT_NAME}
のように記述します。
compose.yml
name: プロジェクト名
services:
api:
build:
context: .
dockerfile: ./docker/api/Dockerfile
volumes:
- .:/${COMPOSE_PROJECT_NAME}
優先順位
複数の方法でプロジェクト名を指定した場合、以下の順位で適用されます。
-
-p
オプションを使用 -
COMPOSE_PROJECT_NAME=プロジェクト名 docker compose build
を実行 -
.env
ファイルにCOMPOSE_PROJECT_NAME=プロジェクト名
を記述 - トップレベルの
name
プロパティ