Let's Encrypt im Gitlab CE Docker-Image deaktivieren

English Deutsch

Hinweis: Eine frühere Version dieses Beitrags listete letsencrypt['enabled'] = false anstelle von letsencrypt['enable'] = false auf (das d in enabled fehlt in der korrekten Version) — siehe dieses GitLab-Issue für weitere Details. Danke an Jonas Hohmann für den Hinweis.

Problem:

Du möchtest das Gitlab CE Docker-Image ausführen, aber da du es zusammen mit anderen Services hinter einem Reverse Proxy betreiben möchtest, siehst du eine Fehlermeldung wie diese:

letsencrypt_error.txt
gitlab_1  | letsencrypt_certificate[gitlab.mydomain.com] (letsencrypt::http_authorization line 3) had an error: RuntimeError: acme_certificate[staging] (/opt/gitlab/embedded/cookbooks/cache/cookbooks/letsencrypt/resources/certificate.rb line 20) had an error: RuntimeError: [gitlab.mydomain.com] Validation failed for domain gitlab.mydomain.com

Lösung

Füge

gitlab_omnibus_config.rb
letsencrypt['enable'] = false

zu GITLAB_OMNIBUS_CONFIG hinzu. Siehe diese Datei auf GitHub für weitere Let’s Encrypt-bezogene Konfigurationen, die du hinzufügen kannst.

In docker-compose.yml könnte es so aussehen:

docker-compose.gitlab.yml
gitlab:
   image: 'gitlab/gitlab-ce:latest'
   restart: always
   hostname: 'gitlab.mydomain.com'
   environment:
     GITLAB_OMNIBUS_CONFIG: |
       external_url 'https://gitlab.mydomain.com'
       letsencrypt['enable'] = false
   ports:
     - '7080:80'
     - '1022:22'
   volumes:
     - '/var/lib/gitlab/config:/etc/gitlab'
     - '/var/lib/gitlab/logs:/var/log/gitlab'
     - '/var/lib/gitlab/data:/var/opt/gitlab'

Check out similar posts by category: Container, Docker