added project zomboid server
This commit is contained in:
@@ -26,6 +26,6 @@ ansible-playbook -i inventory.ini ansible-playbook.yml --skip-tags wazuh --ask-b
|
||||
# Full run (no --tags) — unchanged behavior
|
||||
```
|
||||
|
||||
Tags: `packages`, `directories`, `sysctl`, `network`, `wireguard`, `npm`, `gitea`, `jellyfin`, `wazuh`, `minecraft`, `images`
|
||||
Tags: `packages`, `directories`, `sysctl`, `network`, `wireguard`, `npm`, `gitea`, `jellyfin`, `wazuh`, `minecraft`, `zomboid`, `images`
|
||||
|
||||
Note: `--tags` runs skip the bulk image pull (tagged `images`); containers auto-pull their image on deploy (`podman_container` pull policy defaults to `missing`).
|
||||
@@ -32,4 +32,6 @@
|
||||
tags: [wazuh]
|
||||
- role: minecraft
|
||||
tags: [minecraft]
|
||||
- role: zomboid
|
||||
tags: [zomboid]
|
||||
|
||||
|
||||
45
roles/zomboid/tasks/main.yml
Normal file
45
roles/zomboid/tasks/main.yml
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
# Project Zomboid dedicated server (danixu86 container, SteamCMD-based, B42-ready).
|
||||
# Players: zomboid.boxswapper.io:16261 (UDP) - direct connect or in-game browser (PUBLIC=true).
|
||||
# External prerequisites (NOT managed by this repo):
|
||||
# - Cloudflare A record zomboid.boxswapper.io -> public IP (grey-cloud, like mc.boxswapper.io)
|
||||
# - Router port forwards: UDP 16261-16276 + TCP 27015 (RCON) -> 10.10.0.46
|
||||
# - CHANGED zomboid_admin_password / zomboid_rcon_password in vars.yml before first deploy
|
||||
- name: Create Project Zomboid data directory
|
||||
ansible.builtin.file:
|
||||
path: /opt/apps/zomboid/data
|
||||
state: directory
|
||||
mode: '0755'
|
||||
|
||||
- name: Deploy Project Zomboid Server
|
||||
containers.podman.podman_container:
|
||||
image: "{{ zomboid_image }}"
|
||||
name: zomboid
|
||||
env: "{{ zomboid_env_base }}"
|
||||
restart_policy: always
|
||||
recreate: true
|
||||
state: started
|
||||
volumes:
|
||||
- /opt/apps/zomboid/data:/home/steam/Zomboid:z
|
||||
- /usr/share/zoneinfo/America/Denver:/etc/timezone:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
ports:
|
||||
- "16261-16276:16261-16276/udp"
|
||||
- "27015:27015/tcp"
|
||||
network:
|
||||
- npm_internal
|
||||
ip: '{{ zomboid_ip }}'
|
||||
vars:
|
||||
zomboid_env_base:
|
||||
# CACHEDIR fixed to the bind-mounted path so saves/configs/logs persist
|
||||
CACHEDIR: "/home/steam/Zomboid"
|
||||
ADMINUSERNAME: "{{ zomboid_admin_username }}"
|
||||
ADMINPASSWORD: "{{ zomboid_admin_password }}"
|
||||
RCONPASSWORD: "{{ zomboid_rcon_password }}"
|
||||
SERVERNAME: "{{ zomboid_servername }}"
|
||||
DISPLAYNAME: "{{ zomboid_displayname }}"
|
||||
PUBLIC: "{{ zomboid_public }}"
|
||||
MEMORY: "{{ zomboid_memory }}"
|
||||
SERVERPRESET: "{{ zomboid_preset }}"
|
||||
FORCEUPDATE: "true"
|
||||
LANG: "en_US.UTF-8"
|
||||
24
vars.yml
24
vars.yml
@@ -17,6 +17,8 @@ directories:
|
||||
- /opt/apps/wazuh/config/wazuh_indexer
|
||||
- /opt/apps/minecraft
|
||||
- /opt/apps/minecraft/data
|
||||
- /opt/apps/zomboid
|
||||
- /opt/apps/zomboid/data
|
||||
|
||||
|
||||
## Jellyfin directories for media
|
||||
@@ -34,6 +36,7 @@ images:
|
||||
- docker.io/wazuh/wazuh-indexer:{{ wazuh_version }}
|
||||
- docker.io/wazuh/wazuh-manager:{{ wazuh_version }}
|
||||
- docker.io/itzg/minecraft-server:latest
|
||||
- docker.io/danixu86/project-zomboid-dedicated-server:latest
|
||||
|
||||
|
||||
wazuh_version: 4.14.1
|
||||
@@ -85,3 +88,24 @@ minecraft_plugins:
|
||||
- https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/spigot
|
||||
- https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/spigot
|
||||
|
||||
## Project Zomboid dedicated server (danixu86 container, SteamCMD-based, B42-ready)
|
||||
## Players connect to zomboid.boxswapper.io:16261 (UDP) — direct connect or in-game browser (zomboid_public: true).
|
||||
## External DNS (not managed here): Cloudflare A record zomboid.boxswapper.io -> public IP (grey-cloud,
|
||||
## same as mc.boxswapper.io / vpn.boxswapper.io). Router MUST forward UDP 16261-16276 + TCP 27015 (RCON)
|
||||
## -> 10.10.0.46. Port range covers MaxPlayers=16 (game 16261 + query 16262 + per-slot ports); widen it
|
||||
## if you raise MaxPlayers in <zomboid_servername>.ini.
|
||||
zomboid_host: zomboid.boxswapper.io
|
||||
zomboid_ip: 10.10.0.46
|
||||
zomboid_image: docker.io/danixu86/project-zomboid-dedicated-server:latest
|
||||
## SERVERNAME becomes the config folder/file name — must NOT contain spaces or special characters.
|
||||
zomboid_servername: zomboid
|
||||
zomboid_displayname: "Welcome to our future,...retards"
|
||||
zomboid_admin_username: admin
|
||||
## CHANGE THESE before first deploy — ADMINPASSWORD is mandatory on first startup (server fails to boot without it)
|
||||
## and RCONPASSWORD gates the 27015/tcp admin console.
|
||||
zomboid_admin_password: bhb8zGdpqHvgEUTM
|
||||
zomboid_rcon_password: fs5vCfJq3ZMl3V01
|
||||
zomboid_public: "true"
|
||||
zomboid_memory: 8g
|
||||
zomboid_preset: apocalypse
|
||||
|
||||
|
||||
Reference in New Issue
Block a user