gitlab: image: 'gitlab/gitlab-ce:11.9.9-ce.0' restart: always hostname: 'gitlab' links: - postgresql:postgresql - redis:redis environment: GITLAB_OMNIBUS_CONFIG: | postgresql['enable'] = false gitlab_rails['db_username'] = "gitlab" gitlab_rails['db_password'] = "gitlab" gitlab_rails['db_host'] = "postgresql" gitlab_rails['db_port'] = "5432" gitlab_rails['db_database'] = "gitlabhq_production" gitlab_rails['db_adapter'] = 'postgresql' gitlab_rails['db_encoding'] = 'utf8' redis['enable'] = false gitlab_rails['redis_host'] = 'redis' gitlab_rails['redis_port'] = '6379' external_url 'http://gitlab:30080' gitlab_rails['gitlab_shell_ssh_port'] = 30022 ports: # both ports must match the port from external_url above - "30080:30080" # the mapped port must match ssh_port specified above. - "30022:22" # smtp port - "25:25" # the following are hints on what volumes to mount if you want to persist data # volumes: # - data/gitlab/config:/etc/gitlab:rw # - data/gitlab/logs:/var/log/gitlab:rw # - data/gitlab/data:/var/opt/gitlab:rw postgresql: restart: always image: postgres:9.6.2-alpine environment: - POSTGRES_USER=gitlab - POSTGRES_PASSWORD=gitlab - POSTGRES_DB=gitlabhq_production # the following are hints on what volumes to mount if you want to persist data # volumes: # - data/postgresql:/var/lib/postgresql:rw redis: restart: always image: redis:3.0.7-alpine