私のdocker-compose.ymlは次のようになり、dockerレジストリドキュメント here の構成ファイルを追跡しようとしています。 docker-compose upを実行すると、次のエラーが表示されます。
エラー:ファイル './docker-compose.yml'では、サービス 'volumes'は配列ではなくマッピングでなければなりません。
registry:
restart: always
image: sudarshan/registry
ports:
- 5000:5000
environment:
REGISTRY_HTTP_TLS_CERTIFICATE: /certs/domain.crt
REGISTRY_HTTP_TLS_KEY: /certs/domain.key
REGISTRY_AUTH: silly
REGISTRY_AUTH_SILLY_SERVICE: SILLY_SERVICE
REGISTRY_AUTH_SILLY_REALM: SILLY_REALM
volumes:
- /usr/certs:/certs
私のドッカーのバージョンは
Dockerバージョン1.12.1、ビルド23cf638
docker-composeバージョンは
docker-composeバージョン1.7.1、ビルド0a9ab35
Ubuntu 16.04で実行する
編集:
また試した
registry:
restart: always
image: sudarshan/registry
ports:
- 5000:5000
environment:
REGISTRY_HTTP_TLS_CERTIFICATE: /certs/domain.crt
REGISTRY_HTTP_TLS_KEY: /certs/domain.key
REGISTRY_AUTH: silly
REGISTRY_AUTH_SILLY_SERVICE: SILLY_SERVICE
REGISTRY_AUTH_SILLY_REALM: SILLY_REALM
volumes:
- /usr/certs:/certs
問題は、フィールドを適切にインデントしていないことです。 docker-composeは次のようになります。
registry:
restart: always
image: sudarshan/registry
ports:
- 5000:5000
environment:
REGISTRY_HTTP_TLS_CERTIFICATE: /certs/domain.crt
REGISTRY_HTTP_TLS_KEY: /certs/domain.key
REGISTRY_AUTH: silly
REGISTRY_AUTH_SILLY_SERVICE: SILLY_SERVICE
REGISTRY_AUTH_SILLY_REALM: SILLY_REALM
volumes:
- /usr/certs:/certs