1 # Please see https://docs.tuleap.org/installation-guide/docker-image.html
3 # This docker-compose file is meant to be used by developers working on the Tuleap codebase
8 context: tools/docker/reverse-proxy
12 - ./tools/docker/reverse-proxy/nginx.conf:/etc/nginx/nginx.conf:ro,cached
13 - reverse-proxy-cert:/etc/pki/tls
19 - tuleap-web.tuleap-aio-dev.docker # Same as the default sys_default_domain setting in a dev setup
22 image: ghcr.io/enalean/tuleap-aio-dev:el9-php82
25 - .:/usr/share/tuleap:cached
27 - reverse-proxy-cert:/front-cert:ro
28 - /sys/fs/cgroup:/sys/fs/cgroup:rw
29 - .env:/root/.tuleap_env:ro
34 - TULEAP_SYS_DBHOST=db
42 image: mailhog/mailhog
45 image: ghcr.io/enalean/ldap
53 context: tools/docker/gerrit
59 - CANONICAL_WEB_URL=http://gerrit.tuleap-aio-dev.docker:8080
67 context: tools/docker/jenkins
71 - JENKINS_OPTS="--prefix=/jenkins"
73 - jenkins-data:/var/jenkins_home
74 - reverse-proxy-cert:/opt/reverse-proxy-cert:ro
78 context: tools/docker/gitlab
81 hostname: 'gitlab.local'
83 GITLAB_OMNIBUS_CONFIG: |
84 external_url 'https://gitlab.local'
85 letsencrypt['enable'] = false
87 - gitlab-config:/etc/gitlab
88 - gitlab-data:/var/opt/gitlab
95 image: onlyoffice/documentserver:8.1.0@sha256:423328ee377374c48a30c2aa416e4afedf621faff068f97966cb9b87a28550bd
98 - JWT_SECRET=TULEAP_DO_NOT_USE_THIS_IN_PRODUCTION
99 - USE_UNAUTHORIZED_STORAGE=true
102 image: quay.io/keycloak/keycloak:20.0.3
106 - --hostname-url https://tuleap-web.tuleap-aio-dev.docker/keycloak
107 - --hostname-strict=false
109 - KEYCLOAK_ADMIN=admin
110 - KEYCLOAK_ADMIN_PASSWORD=admin
112 - ./tools/docker/keycloak/data/import:/opt/keycloak/data/import
118 command: --upgrade=FORCE
120 - ./src/etc/tuleap-mysql80-dev.cnf:/etc/mysql/conf.d/tuleap.cnf:ro,cached
121 - db80-data:/var/lib/mysql
124 image: redis:6.2.7@sha256:a93c14584715ec5bd9d2648d58c3b27f89416242bee0bc9e5fb2edc1a4cbec1d
127 command: redis-server --appendonly yes --auto-aof-rewrite-percentage 20 --auto-aof-rewrite-min-size 200kb
130 image: prom/prometheus:v2.3.0
132 - .metrics_secret.key:/metrics_secret.key
133 - ./prometheus.yml:/etc/prometheus/prometheus.yml
134 - prom-data:/prometheus
137 image: getmeili/meilisearch:v1.6.0@sha256:5d43759296bfd10786bc08fce9df04792baae1ab7484710c1f635492087762c7
139 - meilisearch-data:/meili_data
141 - MEILI_ENV=development
142 - MEILI_NO_ANALYTICS=true
143 - MEILI_MASTER_KEY=MEILI_MASTER_KEY_DO_NOT_USE_IN_PRODUCTION
146 image: osixia/phpldapadmin:0.7.1
152 - PHPLDAPADMIN_LDAP_HOSTS=ldap