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 環境変数 をご覧ください。