[英]gitlab docker login failed : certificate signed by unknown authority
When I tried to login to my registry I received "x509 certificate signed by unknown authority" 当我尝试登录到注册表时,收到“未知授权机构签名的x509证书”
I have a dockerized gitlab behind a reverse proxy with ssl (cert are on my host) 我在带有ssl的反向代理后面有一个dockerized gitlab(证书位于我的主机上)
services:
gitlab:
image: 'gitlab/gitlab-ce:latest'
restart: always
hostname: 'gitlab.example.com'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.mydomain.com'
registry_external_url 'https://gitlab.mydomain.com:5555'
registry_nginx['enable'] = true
registry_nginx['listen_port'] = 5555
registry_nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.mydomain.com.pem"
registry_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.mydomain.com.key"
gitlab_rails['gitlab_shell_ssh_port'] = 2222
nginx['listen_port'] = 80
nginx['listen_https'] = false
ports:
- '8088:80'
- '2222:22'
- '5555:5555'
volumes:
- './config:/etc/gitlab'
- './logs:/var/log/gitlab'
- './data:/var/opt/gitlab'
Did you already faced this kind of problem ? 您是否已经遇到过此类问题?
I found the answer, so if anyone have the same issue it could be helpful. 我找到了答案,因此,如果有人遇到相同的问题,可能会有所帮助。
So, copy and paste letsencrypt cert into a directory (here ./ssl) and use it as volume into your docker-compose.yml. 因此,将letencrypt cert复制并粘贴到目录(此处为./ssl)中,并将其作为卷使用到您的docker-compose.yml中。 Restart your container and It will be fine.
重新启动容器,就可以了。
(be sure to do it each time you regenerate your cert with a cron) (每次使用cron重新生成证书时,请务必执行此操作)
services:
gitlab:
image: 'gitlab/gitlab-ce:latest'
restart: always
hostname: 'gitlab.example.com'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.mydomain.com'
registry_external_url 'https://gitlab.mydomain.com:5555'
registry_nginx['enable'] = true
registry_nginx['listen_port'] = 5555
registry_nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.mydomain.com.pem"
registry_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.mydomain.com.key"
gitlab_rails['gitlab_shell_ssh_port'] = 2222
nginx['listen_port'] = 80
nginx['listen_https'] = false
ports:
- '8088:80'
- '2222:22'
- '5555:5555'
volumes:
- './config:/etc/gitlab'
- './logs:/var/log/gitlab'
- './data:/var/opt/gitlab'
- './ssl:/etc/gitlab/ssl/'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.