Compare commits

..
Author SHA1 Message Date
Mauricio SiuandClaude Fable 5 8f84a52855 fix(gitlab-ce): serve on the generated domain (remove removed unicorn config, pin omnibus)
The template set unicorn['worker_processes'] / unicorn['worker_timeout'] in
GITLAB_OMNIBUS_CONFIG. Unicorn was removed in GitLab 14.0, so on current
gitlab-ce images `gitlab-ctl reconfigure` aborts with "Removed configurations
found in gitlab.rb" and GitLab never starts serving — the generated domain
returned 502 Bad Gateway (issue #380).

Rewrite the template as the official all-in-one Omnibus setup:
- pin gitlab/gitlab-ce:19.1.2-ce.0 instead of :latest
- external_url http://<domain> with nginx listen_port 80 / listen_https false
  (TLS terminates at Traefik)
- set gitlab_rails['initial_root_password'] from a generated template password
- puma single mode + prometheus monitoring off to keep memory reasonable
- drop the external postgres/redis containers (Omnibus bundles and manages
  its own) and the broken ports entries ("2224" published a random host port
  while sshd listens on 22)

Verified on a live Dokploy instance: domain serves the GitLab sign-in page
and root login with the generated password works.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-14 11:11:25 -06:00
6 changed files with 11 additions and 70 deletions
+1 -8
View File
@@ -1,6 +1,6 @@
services: services:
evolution-api: evolution-api:
image: evoapicloud/evolution-api:v2.3.7 image: evoapicloud/evolution-api:latest
restart: always restart: always
volumes: volumes:
- evolution-instances:/evolution/instances - evolution-instances:/evolution/instances
@@ -29,13 +29,6 @@ services:
- CACHE_REDIS_URI=${CACHE_REDIS_URI} - CACHE_REDIS_URI=${CACHE_REDIS_URI}
- CACHE_REDIS_PREFIX_KEY=${CACHE_REDIS_PREFIX_KEY} - CACHE_REDIS_PREFIX_KEY=${CACHE_REDIS_PREFIX_KEY}
- CACHE_REDIS_SAVE_INSTANCES=${CACHE_REDIS_SAVE_INSTANCES} - CACHE_REDIS_SAVE_INSTANCES=${CACHE_REDIS_SAVE_INSTANCES}
- TYPEBOT_ENABLED=${TYPEBOT_ENABLED}
- TYPEBOT_API_VERSION=${TYPEBOT_API_VERSION}
- CHATWOOT_ENABLED=${CHATWOOT_ENABLED}
- OPENAI_ENABLED=${OPENAI_ENABLED}
- DIFY_ENABLED=${DIFY_ENABLED}
- N8N_ENABLED=${N8N_ENABLED}
- EVOAI_ENABLED=${EVOAI_ENABLED}
evolution-postgres: evolution-postgres:
image: postgres:16-alpine image: postgres:16-alpine
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "evolutionapi", "id": "evolutionapi",
"name": "Evolution API", "name": "Evolution API",
"version": "v2.3.7", "version": "v2.1.2",
"description": "Evolution API is a robust platform dedicated to empowering small businesses with limited resources, going beyond a simple messaging solution via WhatsApp.", "description": "Evolution API is a robust platform dedicated to empowering small businesses with limited resources, going beyond a simple messaging solution via WhatsApp.",
"logo": "evolutionapi.png", "logo": "evolutionapi.png",
"links": { "links": {
-7
View File
@@ -31,13 +31,6 @@ env = [
"CACHE_REDIS_URI=redis://evolution-redis:6379", "CACHE_REDIS_URI=redis://evolution-redis:6379",
"CACHE_REDIS_PREFIX_KEY=evolution", "CACHE_REDIS_PREFIX_KEY=evolution",
"CACHE_REDIS_SAVE_INSTANCES=true", "CACHE_REDIS_SAVE_INSTANCES=true",
"TYPEBOT_ENABLED=true",
"TYPEBOT_API_VERSION=latest",
"CHATWOOT_ENABLED=true",
"OPENAI_ENABLED=true",
"DIFY_ENABLED=true",
"N8N_ENABLED=true",
"EVOAI_ENABLED=true",
] ]
mounts = [] mounts = []
+6 -47
View File
@@ -1,65 +1,24 @@
services: services:
gitlab: gitlab:
image: gitlab/gitlab-ce:latest image: gitlab/gitlab-ce:19.1.2-ce.0
restart: unless-stopped restart: unless-stopped
hostname: gitlab.example.com shm_size: "256m"
environment: environment:
GITLAB_OMNIBUS_CONFIG: | GITLAB_OMNIBUS_CONFIG: |
external_url 'http://${GITLAB_HOST}' external_url 'http://${GITLAB_HOST}'
gitlab_rails['gitlab_ssh_host'] = '${GITLAB_HOST}'
gitlab_rails['gitlab_shell_ssh_port'] = 2224
gitlab_rails['db_adapter'] = 'postgresql'
gitlab_rails['db_host'] = 'postgresql'
gitlab_rails['db_port'] = '5432'
gitlab_rails['db_database'] = '${POSTGRES_DB}'
gitlab_rails['db_username'] = '${POSTGRES_USER}'
gitlab_rails['db_password'] = '${POSTGRES_PASSWORD}'
# Redis config for external TCP connection
gitlab_rails['redis_url'] = 'redis://redis:6379/0'
gitlab_rails['redis_host'] = 'redis'
gitlab_rails['redis_port'] = 6379
gitlab_rails['redis_socket'] = nil
gitlab_rails['gitlab_email_enabled'] = false
gitlab_rails['gitlab_default_can_create_group'] = true
gitlab_rails['gitlab_username_changing_enabled'] = false
unicorn['worker_processes'] = 2
unicorn['worker_timeout'] = 60
postgresql['enable'] = false
redis['enable'] = false
nginx['enable'] = true
nginx['listen_port'] = 80 nginx['listen_port'] = 80
nginx['listen_https'] = false nginx['listen_https'] = false
gitlab_rails['initial_root_password'] = '${GITLAB_ROOT_PASSWORD}'
gitlab_rails['gitlab_email_enabled'] = false
puma['worker_processes'] = 0
sidekiq['concurrency'] = 10
prometheus_monitoring['enable'] = false prometheus_monitoring['enable'] = false
ports:
- "80"
- "2224"
volumes: volumes:
- gitlab_config:/etc/gitlab - gitlab_config:/etc/gitlab
- gitlab_logs:/var/log/gitlab - gitlab_logs:/var/log/gitlab
- gitlab_data:/var/opt/gitlab - gitlab_data:/var/opt/gitlab
depends_on:
- postgresql
- redis
postgresql:
image: postgres:16-alpine
restart: unless-stopped
environment:
POSTGRES_DB: ${POSTGRES_DB}
POSTGRES_USER: ${POSTGRES_USER}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
volumes:
- postgresql_data:/var/lib/postgresql/data
redis:
image: redis:7-alpine
restart: unless-stopped
volumes:
- redis_data:/data
volumes: volumes:
gitlab_config: gitlab_config:
gitlab_logs: gitlab_logs:
gitlab_data: gitlab_data:
postgresql_data:
redis_data:
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "gitlab-ce", "id": "gitlab-ce",
"name": "GitLab CE", "name": "GitLab CE",
"version": "latest", "version": "19.1.2",
"description": "GitLab Community Edition is a free and open source platform for managing Git repositories, CI/CD pipelines, and project management.", "description": "GitLab Community Edition is a free and open source platform for managing Git repositories, CI/CD pipelines, and project management.",
"logo": "gitlab-ce.svg", "logo": "gitlab-ce.svg",
"links": { "links": {
+2 -6
View File
@@ -1,15 +1,11 @@
[variables] [variables]
main_domain = "${domain}" main_domain = "${domain}"
postgres_db = "gitlab" gitlab_root_password = "${password:32}"
postgres_user = "gitlab"
postgres_password = "${password:32}"
[config] [config]
env = [ env = [
"GITLAB_HOST=${main_domain}", "GITLAB_HOST=${main_domain}",
"POSTGRES_DB=${postgres_db}", "GITLAB_ROOT_PASSWORD=${gitlab_root_password}",
"POSTGRES_USER=${postgres_user}",
"POSTGRES_PASSWORD=${postgres_password}",
] ]
[[config.domains]] [[config.domains]]