homelab/server/config/gitlab/docker-compose.yml

71 lines
2.7 KiB
YAML

version: '3.3'
services:
gitlab:
image: 'gitlab/gitlab-ee:latest'
container_name: gitlab_gitlab
restart: unless-stopped
hostname: 'gitlab.jafner.net'
networks:
- web
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.jafner.net'
gitlab_rails['gitlab_shell_ssh_port'] = 2229
nginx['listen_https'] = false
nginx['listen_port'] = 80
nginx['proxy_set_headers'] = {
"X-Forwarded-Proto" => "https",
"X-Forwarded-Ssl" => "on"
}
letsencrypt['enable'] = false
gitlab_rails['monitoring_whitelist'] = ['127.0.0.0/8', '192.168.1.0/24']
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.gmail.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "noreply@jafner.net"
gitlab_rails['smtp_password'] = "kvdunrhjsqbslson"
gitlab_rails['smtp_domain'] = "jafner.net"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
gitlab_rails['gitlab_email_from'] = 'gitlab@jafner.net'
gitlab_rails['gitlab_email_reply_to'] = 'noreply@jafner.net'
registry_external_url 'https://registry.gitlab.jafner.net'
gitlab_rails['registry_enabled'] = true
gitlab_rails['registry_host'] = "registry.gitlab.jafner.net"
gitlab_rails['api_url'] = 'https://registry.gitlab.jafner.net'
registry_nginx['enable'] = false
registry['registry_http_addr'] = "0.0.0.0:5000"
ports:
- '2229:22'
volumes:
- '${DOCKER_DATA}/config:/etc/gitlab'
- '${DOCKER_DATA}/logs:/var/log/gitlab'
- '${DOCKER_DATA}/data:/var/opt/gitlab'
shm_size: '256m'
labels:
- traefik.http.routers.gitlab.rule=Host(`gitlab.jafner.net`)
- traefik.http.routers.gitlab.tls.certresolver=lets-encrypt
- traefik.http.routers.gitlab.service=gitlab
- traefik.http.services.gitlab.loadbalancer.server.port=80
- traefik.http.routers.gitlab-registry.rule=Host(`registry.gitlab.jafner.net`)
- traefik.http.routers.gitlab-registry.tls.certresolver=lets-encrypt
- traefik.http.routers.gitlab-registry.service=gitlab-registry
- traefik.http.services.gitlab-registry.loadbalancer.server.port=5000
gitlab-runner:
image: 'gitlab/gitlab-runner:latest'
container_name: gitlab_runner
restart: always
environment:
- GODEBUG="x509ignoreCN=0"
volumes:
- ${DOCKER_DATA}/runner-config:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock
labels:
- traefik.enable=false
networks:
web:
external: true