version: "3" services: mongodb: image: "mongo:6.0.4" restart: "always" opensearch: image: "opensearchproject/opensearch:2.6.0" environment: - "TZ=Europe/Berlin" - "OPENSEARCH_JAVA_OPTS=-Xms1g -Xmx1g" - "bootstrap.memory_lock=true" - "discovery.type=single-node" - "action.auto_create_index=false" - "plugins.security.ssl.http.enabled=false" - "plugins.security.disabled=true" restart: "always" graylog: hostname: "server" image: "graylog/graylog:5.0.5" entrypoint: "/usr/bin/tini -- wait-for-it opensearch:9200 -- /docker-entrypoint.sh" environment: TZ: "Europe/Berlin" GRAYLOG_NODE_ID_FILE: "/usr/share/graylog/data/config/node-id" GRAYLOG_PASSWORD_SECRET: "warpzonewarpzone" GRAYLOG_ROOT_PASSWORD_SHA2: "26230bc6e5e044e6e3cef7c76a2800fdf2d3952ef03e85c83491b99eef149c40" GRAYLOG_HTTP_BIND_ADDRESS: "0.0.0.0:9000" GRAYLOG_HTTP_EXTERNAL_URI: "http://graylog.warpzone.lan/" GRAYLOG_ELASTICSEARCH_HOSTS: "http://opensearch:9200" GRAYLOG_MONGODB_URI: "mongodb://mongodb:27017/graylog" ports: - "514:5140/udp" # Syslog - "514:5140/tcp" # Syslog restart: "always" labels: - traefik.enable=true - traefik.http.routers.{{ servicename }}.rule=Host(`{{ domain }}`) - traefik.http.routers.{{ servicename }}.entrypoints=websecure - traefik.http.services.{{ servicename }}.loadbalancer.server.port=9000 networks: - web - default networks: web: external: true