Estou tentando configurar meu próprio gitlab usando https dentro de um contêiner docker.
Bem, desde que eu não tente usar https tudo funciona bem!
Agora meu problema começa.
De acordo com meus logs, o gitlab não pode carregar o arquivo sub.domain.com.crt por causa de "malformatting".
Estou usando o Lets Encrypt e tenho um cert.pem, privkey.pem, fullchain.pem e um chain.pem. Eu acho que os únicos arquivos que eu vou precisar são fullchain.pem e privkey.pem.
Ok, agora vou contar os passos que fiz até agora:
1. Eu criei um docker-compose.yml
.
web:
image: 'gitlab/gitlab-ce:latest'
restart: always
hostname: 'git.domain.com'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://git.domain.com'
# Add any other gitlab.rb configuration here, each on its own line
ports:
- '20080:80'
- '20443:443'
- '20022:22'
volumes:
- '/srv/gitlab/config:/etc/gitlab'
- '/srv/gitlab/logs:/var/log/gitlab'
- '/srv/gitlab/data:/var/opt/gitlab'
docker-compose up -d
. Eu tenho um diretório /srv/gitlab/config/ssl/
onde meus fullchain.pem
e meus privkey.pem
são armazenados.
Convertei esses arquivos usando openssl x509 ...
para obter um arquivo git.domain.com.crt
e git.domain.com.key
(eu também apenas tentei isso simplesmente copiando esses arquivos, apenas alterando a extensão do arquivo que funcionava melhor, já que eu podia "ler" o conteúdo desses arquivos arquivos ...).
Eu tenho acesso ao arquivo /etc/gitlab/ssl/git.domain.com.crt
dentro do meu contêiner e meus registros estão dizendo:
2017/10/12 18:06:36 [emerg] 2176#0: PEM_read_bio_X509_AUX("/etc/gitlab /ssl/git.domain.com.crt") failed (SSL:error:0906D06C:PEMroutines:PEM_read_bio:no start line:Expecting: TRUSTED CERTIFICATE)
Esses arquivos .pem são criados usando o letsencrypt. Abaixo você pode ver a saída do meu fullchain.pem
.
-----BEGIN CERTIFICATE-----
MIIFATCCA+mgAwIBAgISA0XaZQaUu+WRxU05xvO36gAFMA0GCSqGSIb3DQEBCwUA
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xNzEwMTIxNjQ1MzZaFw0x
[...]
LzANBgkqhkiG9w0BAQsFAAOCAQEAQQBhsE1JYkmrdnLEZXp8iJU6niatU7MAgeab
7ztd7mKJMr8rQ03HrBDdjQaO8S5S9hykTs6zTrU7zkRoQ27oNKFIlszHVg+2DL3/
S8Veur+WhlzAi8MlchFkMf28YI0RkbxVuJcrV0yxE7tfqKg8X5rvbeH6PoDMYydO
a5ZY1CNpR7Jrq+Tn+NoOq9qU8e2+ZMnD2FVxDoe17okWKiXk1Ogs0q1MyPbrE2c4
4KTYq3lnyhNAo1orGrNmGe+xzs7ikUjy+wzoJy3kcIjuEg8H3Bj5eNWsWJllTF0Y
I76E+yK1e2MzDhBpim27hVbwBzn/lpm/dwYs+DpAnYb0Naw/9w==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIEkjCCA3qgAwIBAgIQCgFBQgAAAVOFc2oLheynCDANBgkqhkiG9w0BAQsFADA/
[...]
-----END CERTIFICATE-----
Alguém tem uma dica do que estou perdendo?
Muito obrigado!
Atenciosamente, Patrick