【发布时间】:2019-08-03 21:27:29
【问题描述】:
我想使用这个 docker-compose.yaml 文件在我的服务器上创建一个 docker 注册表:
version: '3'
services:
registry:
restart: always
image: registry:2
ports:
- 5000:5000
volumes:
- /home/ubuntu/registry/volumes/data:/var/lib/registry
- /home/ubuntu/registry/volumes/certs:/certs
- /home/ubuntu/registry/volumes/auth:/auth
environment:
REGISTRY_HTTP_TLS_CERTIFICATE: /home/ubuntu/registry/certs/domain.crt
REGISTRY_HTTP_TLS_KEY: /home/ubuntu/registry/certs/domain.key
REGISTRY_AUTH: htpasswd
REGISTRY_AUTH_HTPASSWD_PATH: /home/ubuntu/registry/auth/htpasswd
REGISTRY_AUTH_HTPASSWD_REALM: Registry Realm
我在跑步 ''' 码头工人组成 ''' 但是会出现这个错误。
registry_1 | time="2019-08-03T21:17:38.938127498Z" level=fatal msg="open /home/ubuntu/registry/certs/domain.crt: no such file or directory"
我确定这些文件存在,你知道吗?
【问题讨论】:
-
它们存在于主机上,而不是容器中。
-
我知道,但我认为这个容器应该从主机读取它们,对吧?
-
如果您
docker-compose run registry sh并四处寻找,您应该会看到目录/certs和/auth包含来自主机的内容,但它们不会是主机特定的路径名。您应该更改环境变量以匹配容器内的路径。
标签: docker docker-compose docker-registry