やったこと
docker-compose config
を使ってみます。
確認環境
$ docker --version
Docker version 19.03.13, build 4484c46d9d
$ docker-compose --version
docker-compose version 1.27.4, build 40524192
調査
docker-compose config --help
より
Validate and view the Compose file.
ファイルのバージョンをバリデーションをしてくるようです。
それでは使ってみましょう。
バリデーションが通る場合
docker-compose.yml
version: '3'
services:
app1:
build: .
ports:
- '9000:8080'
app2:
build: .
ports:
- '9090:8080'
このオプションをつけて実行してみます。
–services Print the service names, one per line.
$ docker-compose config --service
app1
app2
バリデーションが通らない場合
docker-compose.yml
version: '3'
serves:
app1:
build: .
ports:
- '9000:8080'
service
と書くべきところを serves
とします。
エラーが発生しました。
$ docker-compose config --service
ERROR: The Compose file './docker-compose.yml' is invalid because:
Invalid top-level property "serves". Valid top-level sections for this Compose file are: version, services, networks, volumes, secrets, configs, and extensions starting with "x-".
You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.
For more on the Compose file format versions, see https://docs.docker.com/compose/compose-file/