A set-up for containerized dedicated servers for the online enjoyment of members of Harambee
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
2.1 KiB

6 months ago
  1. version: "3.7"
  2. services:
  3. #
  4. # Valheim
  5. #
  6. valheim:
  7. image: lloesche/valheim-server
  8. container_name: games_valheim
  9. restart: unless-stopped
  10. environment:
  11. - TZ=${TZ}
  12. - SERVER_NAME=${VALHEIM_SERVER_NAME}
  13. - SERVER_PORT=${VALHEIM_SERVER_PORT}
  14. - WORLD_NAME=${VALHEIM_WORLD_NAME}
  15. - SERVER_PASS=${VALHEIM_SERVER_PASS}
  16. - SERVER_PUBLIC=${VALHEIM_SERVER_PUBLIC}
  17. ports:
  18. - "2456-2458:2456-2458/udp"
  19. volumes:
  20. - "${DATA_DIR}/valheim:/config"
  21. #
  22. # Factorio
  23. #
  24. factorio:
  25. image: factoriotools/factorio:stable
  26. container_name: games_factorio
  27. restart: unless-stopped
  28. environment:
  29. - TZ=${TZ}
  30. - UPDATE_MODS_ON_START=${FACTORIO_UPDATE_MODS_ON_START} # [true|false], requires FACTORIO_TOKEN to be set
  31. - USERNAME=${FACTORIO_USERNAME}
  32. - TOKEN=${FACTORIO_TOKEN}
  33. - GAME_PASSWORD=${FACTORIO_GAME_PASSWORD}
  34. - ADMIN_USERNAME=${FACTORIO_USERNAME}
  35. ports:
  36. - "34197:34197/udp"
  37. - "27015:27015/tcp"
  38. volumes:
  39. - "${DATA_DIR}/factorio:/factorio"
  40. - "./config/factorio/server-settings.json:/server-settings.json:ro"
  41. - "./config/factorio/server-adminlist.json:/server-adminlist.json:ro"
  42. - "./config/factorio/map-settings.json:/factorio/config/map-settings.json"
  43. - "./config/factorio/map-gen-settings.json:/factorio/config/map-gen-settings.json"
  44. - "./config/factorio/mod-list.json:/factorio/mods/mod-list.json"
  45. entrypoint: /bin/sh -c "mkdir -p /factorio/config && envsubst < /server-settings.json > /factorio/config/server-settings.json && envsubst < /server-adminlist.json > /factorio/config/server-adminlist.json && exec /docker-entrypoint.sh"
  46. #
  47. # Minecraft
  48. #
  49. minecraft:
  50. image: itzg/minecraft-server:latest
  51. container_name: games_minecraft
  52. restart: unless-stopped
  53. env_file:
  54. - ./config/minecraft/minecraft.env
  55. environment:
  56. - TZ=${TZ}
  57. - EULA=TRUE
  58. - RCON_PASSWORD=${MINECRAFT_RCON_PASSWORD}
  59. ports:
  60. - "25565:25565"
  61. - "25575:25575"
  62. volumes:
  63. - "${DATA_DIR}/minecraft:/data"
  64. tty: true
  65. stdin_open: true