Skip to content
Snippets Groups Projects
Verified Commit 3e04b489 authored by Martin Weise's avatar Martin Weise
Browse files

Updated the docker compose file

parent bc04a9e9
No related branches found
No related tags found
2 merge requests!404Updated the limits,!403Updated the limits
This commit is part of merge request !403. Comments created here will be created in the context of that merge request.
# Example values to override for non-test deployments
#BASE_URL=https://example.com
#ADMIN_EMAIL=noreply@example.com
#LOG_LEVEL=info
#IDENTITY_SERVICE_ADMIN_PASSWORD=admin
#AUTH_SERVICE_ADMIN_PASSWORD=admin
#METADATA_DB_PASSWORD=dbrepo
#DATA_DB_PASSWORD=dbrepo
#AUTH_DB_PASSWORD=dbrepo
#S3_ACCESS_KEY_ID=seaweedfsadmin
#S3_SECRET_ACCESS_KEY=seaweedfsadmin
#SYSTEM_PASSWORD=admin
\ No newline at end of file
MARIADB_VERSION=11.3.2
POSTGRES_VERSION=17.0.0
KEYCLOAK_VERSION=26.0.4
RABBITMQ_VERSION=3.13.7
OPENSEARCH_VERSION=2.10.0
NGINX_VERSION=1.27.3-alpine3.20-slim
OPENLDAP_VERSION=2.6.8
SEAWEEDFS_VERSION=3.71.0
PROMETHEUS_VERSION=2.54.1
\ No newline at end of file
x-resources-nano: &resources-nano
resources:
reservations:
cpus: '0.1'
memory: 128M
limits:
cpus: '0.15'
memory: 192M
x-resources-nano-hm: &resources-nano-hm
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 4096M
x-resources-micro: &resources-micro
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
x-resources-small: &resources-small
resources:
reservations:
cpus: '0.5'
memory: 512M
limits:
cpus: '0.75'
memory: 768M
x-resources-medium: &resources-medium
resources:
reservations:
cpus: '0.5'
memory: 1024M
limits:
cpus: '0.75'
memory: 1536M
x-resources-large: &resources-large
resources:
reservations:
cpus: '1'
memory: 2048M
limits:
cpus: '1.5'
memory: 3072M
x-healthcheck-params: &healthcheck-params
interval: 30s
timeout: 10s
retries: 15
volumes:
metadata-db-data:
data-db-data:
......@@ -13,7 +72,7 @@ services:
restart: "no"
container_name: dbrepo-metadata-db
hostname: metadata-db
image: docker.io/mariadb:11.3.2
image: docker.io/mariadb:${MARIADB_VERSION}
volumes:
- metadata-db-data:/var/lib/mysql
- ./config/1_setup-schema.sql:/docker-entrypoint-initdb.d/1_setup-schema.sql
......@@ -25,17 +84,9 @@ services:
MARIADB_ROOT_PASSWORD: "${METADATA_DB_PASSWORD:-dbrepo}"
healthcheck:
test: ./usr/local/bin/healthcheck.sh --connect --innodb_initialized
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.5'
memory: 4096M
limits:
cpus: '1'
memory: 8192M
<<: *resources-nano-hm
logging:
driver: json-file
......@@ -43,7 +94,7 @@ services:
restart: "no"
container_name: dbrepo-data-db
hostname: data-db
image: docker.io/mariadb:11.3.2
image: docker.io/mariadb:${MARIADB_VERSION}
volumes:
- data-db-data:/var/lib/mysql
- ./config/1_grant-user.sql:/docker-entrypoint-initdb.d/1_grant-user.sql
......@@ -55,17 +106,9 @@ services:
MARIADB_USER: "${READONLY_USERNAME:-readonly}"
healthcheck:
test: ./usr/local/bin/healthcheck.sh --connect --innodb_initialized
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.5'
memory: 4096M
limits:
cpus: '1'
memory: 8192M
<<: *resources-nano-hm
logging:
driver: json-file
......@@ -73,7 +116,7 @@ services:
restart: "no"
container_name: dbrepo-auth-db
hostname: auth-db
image: docker.io/bitnami/postgresql:17.0.0-debian-12-r1
image: docker.io/bitnami/postgresql:${POSTGRES_VERSION}
volumes:
- auth-db-data:/bitnami/postgresql
environment:
......@@ -83,17 +126,9 @@ services:
PGPASSWORD: "${AUTH_DB_PASSWORD:-dbrepo}"
healthcheck:
test: "psql -U ${AUTH_DB_USERNAME:-keycloak} -h 127.0.0.1 -p 5432 -d ${AUTH_DB_NAME:-keycloak} -c 'select version();'"
interval: 15s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 2048M
<<: *resources-nano
logging:
driver: json-file
......@@ -101,7 +136,7 @@ services:
restart: "no"
container_name: dbrepo-auth-service
hostname: auth-service
image: docker.io/bitnami/keycloak:26.0.4-debian-12-r0
image: docker.io/bitnami/keycloak:${KEYCLOAK_VERSION}
volumes:
- ./config/import-realms.sh:/docker-entrypoint-initdb.d/import-realms.sh
- ./config/master-realm.json:/opt/keycloak/data/import/master-realm.json
......@@ -127,17 +162,9 @@ services:
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
healthcheck:
test: curl -fsS localhost:8080/realms/master
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '1'
memory: 2048M
limits:
cpus: '1.5'
memory: 3072M
<<: *resources-small
depends_on:
dbrepo-identity-service:
condition: service_healthy
......@@ -160,13 +187,7 @@ services:
SYSTEM_USERNAME: "${SYSTEM_USERNAME:-admin}"
SYSTEM_PASSWORD: ${SYSTEM_PASSWORD:-admin}
deploy:
resources:
reservations:
cpus: '0.1'
memory: 128M
limits:
cpus: '0.15'
memory: 192M
<<: *resources-nano
depends_on:
dbrepo-auth-service:
condition: service_healthy
......@@ -222,17 +243,9 @@ services:
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
healthcheck:
test: curl -sSL localhost:8080/actuator/health/liveness | grep 'UP' || exit 1
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '1'
memory: 2048M
limits:
cpus: '1.5'
memory: 3072M
<<: *resources-small
depends_on:
dbrepo-auth-service:
condition: service_healthy
......@@ -269,17 +282,9 @@ services:
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
healthcheck:
test: curl -sSL localhost:8080/health | grep 'UP' || exit 1
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-micro
logging:
driver: json-file
......@@ -287,7 +292,7 @@ services:
restart: "no"
container_name: dbrepo-broker-service
hostname: broker-service
image: docker.io/bitnami/rabbitmq:3.13.7-debian-12-r4
image: docker.io/bitnami/rabbitmq:${RABBITMQ_VERSION}
ports:
- 5672:5672
- 1883:1883
......@@ -304,17 +309,9 @@ services:
condition: service_healthy
healthcheck:
test: rabbitmq-diagnostics -q is_running | grep 'is fully booted and running'
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-micro
logging:
driver: json-file
......@@ -322,22 +319,14 @@ services:
restart: "no"
container_name: dbrepo-search-db
hostname: search-db
image: docker.io/bitnami/opensearch:2.10.0
image: docker.io/bitnami/opensearch:${OPENSEARCH_VERSION}
ports:
- "9200:9200"
healthcheck:
test: curl -sSL 127.0.0.1:9200
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.5'
memory: 1024M
limits:
cpus: '0.75'
memory: 1536M
<<: *resources-medium
volumes:
- search-db-data:/bitnami/opensearch/data
logging:
......@@ -361,17 +350,9 @@ services:
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
healthcheck:
test: curl -sSL localhost:8080/health | grep 'UP' || exit 1
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-micro
logging:
driver: json-file
......@@ -395,17 +376,9 @@ services:
NUXT_OIDC_PROVIDERS_KEYCLOAK_USER_INFO_URL: "${BASE_URL:-http://localhost}/realms/dbrepo/protocol/openid-connect/userinfo"
healthcheck:
test: curl -fsSL 127.0.0.1:3000 && curl -fsSL 127.0.0.1:3000/health
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-micro
depends_on:
dbrepo-search-service:
condition: service_healthy
......@@ -418,24 +391,16 @@ services:
restart: "no"
container_name: dbrepo-gateway-service
hostname: gateway-service
image: docker.io/nginx:1.27.3-alpine3.20-slim
image: docker.io/nginx:${NGINX_VERSION}
ports:
- "80:8080"
volumes:
- ./config/dbrepo.conf:/etc/nginx/conf.d/default.conf
healthcheck:
test: lsof -i TCP:80 || exit 1
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 2048M
<<: *resources-nano
depends_on:
dbrepo-analyse-service:
condition: service_healthy
......@@ -471,17 +436,9 @@ services:
- identity-service-data:/bitnami/openldap
healthcheck:
test: "ldapwhoami -H ldap://localhost:1389 -D ${IDENTITY_SERVICE_ADMIN_DN:-cn=admin,dc=dbrepo,dc=at} -w ${IDENTITY_SERVICE_ADMIN_PASSWORD:-admin} || exit 1"
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 2048M
<<: *resources-nano
logging:
driver: json-file
......@@ -499,13 +456,7 @@ services:
SYSTEM_USERNAME: "${SYSTEM_USERNAME:-admin}"
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
deploy:
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 2048M
<<: *resources-nano
depends_on:
dbrepo-search-db:
condition: service_healthy
......@@ -527,13 +478,7 @@ services:
SYSTEM_USERNAME: "${SYSTEM_USERNAME:-admin}"
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
deploy:
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 2048M
<<: *resources-nano
depends_on:
dbrepo-dashboard-ui:
condition: service_healthy
......@@ -546,7 +491,7 @@ services:
restart: "no"
container_name: dbrepo-storage-service
hostname: storage-service
image: docker.io/bitnami/seaweedfs:3.71.0-debian-12-r4
image: docker.io/bitnami/seaweedfs:${SEAWEEDFS_VERSION}
command: [ "server", "-s3", "-s3.port=9000", "-s3.config=/app/s3_config.json", "-metricsPort=9090" ]
volumes:
- ./config/s3_config.json:/app/s3_config.json
......@@ -555,17 +500,9 @@ services:
- "8888:8888"
healthcheck:
test: echo "cluster.check" | weed shell | grep "checking master.*ok" || exit 1
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-nano
logging:
driver: json-file
......@@ -573,23 +510,15 @@ services:
restart: "no"
container_name: dbrepo-metric-db
hostname: metric-db
image: docker.io/bitnami/prometheus:2.54.1-debian-12-r4
image: docker.io/bitnami/prometheus:${PROMETHEUS_VERSION}
volumes:
- ./config/prometheus.yml:/etc/prometheus/prometheus.yml
- metric-db-data:/opt/bitnami/prometheus/data
healthcheck:
test: promtool check healthy
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-nano
logging:
driver: json-file
......@@ -605,13 +534,7 @@ services:
S3_SECRET_ACCESS_KEY: ${S3_SECRET_ACCESS_KEY:-seaweedfsadmin}
STORAGE_ENDPOINT: ${STORAGE_ENDPOINT:-http://storage-service:9000}
deploy:
resources:
reservations:
cpus: '0.1'
memory: 1024M
limits:
cpus: '0.5'
memory: 2048M
<<: *resources-nano
depends_on:
dbrepo-storage-service:
condition: service_healthy
......@@ -656,17 +579,9 @@ services:
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
healthcheck:
test: curl -sSL localhost:8080/actuator/health/liveness | grep 'UP' || exit 1
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '1'
memory: 2048M
limits:
cpus: '1.5'
memory: 3072M
<<: *resources-large
depends_on:
dbrepo-data-db:
condition: service_healthy
......@@ -692,17 +607,9 @@ services:
LDAP_ROOT: "${IDENTITY_SERVICE_ROOT:-dc=dbrepo,dc=at}"
healthcheck:
test: curl -fsSL --head 127.0.0.1:3000
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-nano
extra_hosts:
- "localhost:host-gateway"
logging:
......@@ -723,17 +630,9 @@ services:
SYSTEM_PASSWORD: "${SYSTEM_PASSWORD:-admin}"
healthcheck:
test: curl -fsSL --head 127.0.0.1:8080/health
interval: 10s
timeout: 5s
retries: 12
<<: *healthcheck-params
deploy:
resources:
reservations:
cpus: '0.25'
memory: 256M
limits:
cpus: '0.375'
memory: 384M
<<: *resources-micro
depends_on:
dbrepo-dashboard-ui:
condition: service_healthy
......
......@@ -83,6 +83,7 @@ lint-docker-compose:
- "IGNORE_VOLUMES=1 IGNORE_IMAGE=1 bash .scripts/check-service.sh 'dbrepo-storage-service-init'"
- "IGNORE_IMAGE=1 bash .scripts/check-service.sh 'dbrepo-dashboard-service-init'"
- "IGNORE_IMAGE=1 bash .scripts/check-service.sh 'dbrepo-ui'"
- "diff ./.env ./.docker/.env"
lint-helm-chart:
image: docker.io/alpine:${ALPINE_VERSION}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment