version: "2" services: minetest: image: buckaroobanzay/minetest:5.3.0-r5 restart: always ports: - "30000:30000/udp" depends_on: - "postgres" volumes: - "./data/minetest:/data" - "./data/crashlogs:/crashlogs" - "./data/minetest/debug.txt:/root/.minetest/debug.txt" - "./config/metatool.cfg:/data/world/metatool.cfg" logging: options: max-size: 50m postgres: image: postgres:11.9 restart: always shm_size: '2gb' environment: POSTGRES_PASSWORD: enter volumes: - "./data/postgres:/var/lib/postgresql/data" command: - "postgres" - "-c" - "shared_buffers=4GB" - "-c" - "synchronous_commit=off" logging: options: max-size: 50m postgres-exporter: image: wrouesnel/postgres_exporter:v0.8.0 restart: always environment: - DATA_SOURCE_URI=postgres:5432/postgres?sslmode=disable - DATA_SOURCE_USER=postgres - DATA_SOURCE_PASS=enter depends_on: - postgres auth-proxy: image: minetestauth/minetest-auth-proxy depends_on: - "minetest" labels: com.centurylinklabs.watchtower.enable: "true" restart: always beerchat-proxy: image: beerchat/beerchat depends_on: - "minetest" volumes: - "./data/beerchat.json:/data/beerchat.json:ro" labels: com.centurylinklabs.watchtower.enable: "true" restart: always mapserver: image: minetestmapserver/mapserver:latest restart: always labels: com.centurylinklabs.watchtower.enable: "true" depends_on: - "postgres" - "minetest" volumes: - "./data/minetest/world:/minetest" working_dir: "/minetest" logging: options: max-size: 50m wiki: image: buckaroobanzay/php restart: always depends_on: - "postgres" - "auth-proxy" volumes: - "./data/wiki/extensions:/var/www/html/extensions" - "./data/wiki/images:/var/www/html/images" - "./data/wiki/LocalSettings.php:/var/www/html/LocalSettings.php" - "./data/wiki/LocalSettings.secrets.php:/var/www/html/LocalSettings.secrets.php" logging: options: max-size: 50m nginx: image: nginx:1.19.3 networks: - terminator - default restart: always depends_on: - highscore - mapserver - webmail - wiki - kv - nodered environment: VIRTUAL_PORT: 80 VIRTUAL_HOST: pandorabox.io LETSENCRYPT_HOST: pandorabox.io LETSENCRYPT_EMAIL: thomas@rudin.io volumes: - "./data/nginx/nginx.conf:/etc/nginx/nginx.conf:ro" - "./data/nginx/htpasswd:/etc/nginx/htpasswd:ro" - "./data/nginx/routes:/routes" - "./data/nginx/html:/html" - "./data/crashlogs:/crashlogs" logging: options: max-size: 50m highscore: image: buckaroobanzay/xphighscore restart: always labels: com.centurylinklabs.watchtower.enable: "true" volumes: - "./data/minetest/world:/data/world:ro" depends_on: - postgres environment: PGHOST: postgres PGUSER: postgres PGDATABASE: postgres PGPASSWORD: enter PGPORT: 5432 webmail: image: minetestmail/mail restart: always labels: com.centurylinklabs.watchtower.enable: "true" depends_on: - minetest manager: image: buckaroobanzay/minetest_manager depends_on: - minetest restart: always volumes: - "./data:/data" environment: - WORLDMODS_DIR=/data/minetest/world/worldmods - WORLDMODS_BRANCH=master - MEDIADIR=/data/nginx/html/media - DEBUG_LOG=/data/minetest/debug.txt - ERROR_LOG_OUTPUT=/data/nginx/html/error-log.txt logging: options: max-size: 50m kv: image: anapsix/webdis restart: always environment: - LOCAL_REDIS=true nodered: image: nodered/node-red:1.2.2-12-minimal depends_on: - postgres - beerchat-proxy restart: always environment: - TZ=Europe/Zurich volumes: - "./data/nodered:/data" logging: options: max-size: 50m networks: terminator: external: true