docker-compose コマンド¶
Usage:
docker-compose [-f=<arg>...] [options] [COMMAND] [ARGS...]
docker-compose -h|--help
Options:
-f, --file FILE Specify an alternate compose file (default: docker-compose.yml)
-p, --project-name NAME Specify an alternate project name (default: directory name)
--verbose Show more output
-v, --version Print version and exit
Commands:
build Build or rebuild services
help Get help on a command
kill Kill containers
logs View output from containers
pause Pause services
port Print the public port for a port binding
ps List containers
pull Pulls service images
restart Restart services
rm Remove stopped containers
run Run a one-off command
scale Set number of containers for a service
start Start services
stop Stop services
unpause Unpause services
up Create and start containers
migrate-to-labels Recreate containers to add labels
version Show the Docker-Compose version information
docker-compose
は Docker Compose のバイナリです。このコマンドを使い Docker コンテナ上の複数のサービスを管理します。
Compose 設定ファイルの場所を指定するには、 -f
フラグを使います。複数の -f
設定ファイルを指定できます。複数のファイルをしていすると、Compose は1つの設定ファイルに連結します。Compose はファイルを指定した順番で構築します。後に続くファイルは、既に実行したものを上書き・追加します。
例えば、次のようなコマンドラインを考えます。
$ docker-compose -f docker-compose.yml -f docker-compose.admin.yml run backup_db`
docker-compose.yml
ファイルは webapp
サービスを指定しています。
webapp:
image: examples/web
ports:
- "8000:8000"
volumes:
- "/data"
また、 docker-compose.admin.yml
ファイルで同じサービスを指定すると、以前のファイルで指定した同じフィールドの項目があれば、それを上書きします。新しい値があれば、 webapp
サービスの設定に追加します。
webapp:
build: .
environment:
- DEBUG=1
-f
に -
(ダッシュ)をファイル名として指定すると、標準入力から設定を読み込みます。設定に標準入力を使う場合のパスは、現在の作業用ディレクトリからの相対パスとなります。
-f
フラグはオプションです。コマンドラインでこのフラグを指定しなければ、Compose は現在の作業用ディレクトリと docker-compose.yml
ファイルと docker-compose.override.yml
ファイルのサブディレクトリを探します。もし、2つのファイルが指定されると、1つの設定ファイルに連結します。 このとき、 docker-compose.yml
ファイルにある値は、 docker-compose.override.yml
ファイルで設定された値で上書きされます。
詳しくは COMPOSE
環境変数 をご覧ください。
各設定ファイルはプロジェクト名を持っています。 -p
フラグでプロジェクト名を指定できます。フラグを指定しなければ、Compose は現在のディレクトリの名前を使います。詳細は COMPOSE_PROJECT
環境変数 をご覧ください。