rundeck/compose.yaml

78 lines
3.5 KiB
YAML

services:
rundeck:
image: "rundeck/rundeck:${RUNDECK_VERSION}"
container_name: "rundeck-rundeck-${CONTEXT}"
networks:
rundeck-default:
profiles: ["full", "rundeck"]
depends_on:
postgres:
condition: "service_started"
ulimits:
nproc: "${ULIMIT_NPROC:-65535}"
nofile:
soft: "${ULIMIT_NPROC:-65535}"
hard: "${ULIMIT_NPROC:-65535}"
mem_limit: "4g"
extends:
file: "common-settings.yaml"
service: "common-settings"
ports:
- "${RUNDECK_PORT}:4440"
volumes:
- "/opt/docker-data/rundeck-${CONTEXT}/rundeck/data/data:/home/rundeck/server/data"
- "/opt/docker-data/rundeck-${CONTEXT}/rundeck/data/logs:/home/rundeck/var/logs"
- "/opt/docker-data/rundeck-${CONTEXT}/rundeck/config/projects:/home/rundeck/projects"
- "/opt/docker-data/rundeck-${CONTEXT}/rundeck/config/realm.properties:/home/rundeck/server/config/realm.properties"
- "/opt/docker-data/rundeck-${CONTEXT}/rundeck/config/known_hosts:/home/rundeck/.ssh/known_hosts"
environment:
RUNDECK_DATABASE_DRIVER: "org.postgresql.Driver"
RUNDECK_DATABASE_USERNAME: "${POSTGRES_USER}"
RUNDECK_DATABASE_PASSWORD: "${POSTGRES_PASSWORD}"
RUNDECK_DATABASE_URL: "jdbc:postgresql://postgres/${POSTGRES_DB}?autoReconnect=true&useSSL=false&allowPublicKeyRetrieval=true"
RUNDECK_GRAILS_URL: "${RUNDECK_GRAILS_URL}"
RUNDECK_SERVER_FORWARDED: 'true'
RUNDECK_LOGGING_LOGLEVEL_DEFAULT: "${RUNDECK_LOGGING_LOGLEVEL_DEFAULT:-warn}"
RUNDECK_LOGGING_LOGLEVEL_ROOT: "${RUNDECK_LOGGING_LOGLEVEL_ROOT:-warn}"
RUNDECK_LOGGING_LOGLEVEL_HIBERNATE: "${RUNDECK_LOGGING_LOGLEVEL_HIBERNATE:-warn}"
RUNDECK_LOGGING_LOGLEVEL_SPRING: "${RUNDECK_LOGGING_LOGLEVEL_SPRING:-warn}"
RUNDECK_LOGGING_LOGLEVEL_SPRINGBEAN: "${RUNDECK_LOGGING_LOGLEVEL_SPRINGBEAN:-warn}"
RUNDECK_LOGGING_LOGLEVEL_INTERNALS: "${RUNDECK_LOGGING_LOGLEVEL_INTERNALS:-warn}"
RUNDECK_LOGGING_LOGLEVEL_GRAILS: "${RUNDECK_LOGGING_LOGLEVEL_GRAILS:-warn}"
RUNDECK_LOGGING_LOGLEVEL_JETTY: "${RUNDECK_LOGGING_LOGLEVEL_JETTY:-warn}"
RUNDECK_LOGGING_AUDIT_ENABLED: "${RUNDECK_LOGGING_AUDIT_ENABLED:-}"
TZ: "${TIMEZONE}"
postgres:
image: "postgres:${POSTGRES_VERSION}"
container_name: "rundeck-postgres-${CONTEXT}"
networks:
rundeck-default:
profiles: ["full", "postgres"]
ulimits:
nproc: "${ULIMIT_NPROC:-65535}"
nofile:
soft: "${ULIMIT_NPROC:-65535}"
hard: "${ULIMIT_NPROC:-65535}"
extends:
file: "common-settings.yaml"
service: "common-settings"
ports:
- "${POSTGRES_PORT}:5432"
volumes:
- "/opt/docker-data/rundeck-${CONTEXT}/postgres/data:/var/lib/postgresql/data"
environment:
POSTGRES_DB: "${POSTGRES_DB}"
POSTGRES_USER: "${POSTGRES_USER}"
POSTGRES_PASSWORD: "${POSTGRES_PASSWORD}"
TZ: "${TIMEZONE}"
networks:
rundeck-default:
name: "rundeck-${CONTEXT}"
driver: "bridge"
driver_opts:
com.docker.network.enable_ipv6: "false"
ipam:
driver: "default"
config:
- subnet: "${SUBNET}"