2.3 KiB
copenhagen-a
Game servers. Located at my dad's place in Copenhagen as an off-site location.
Overview
| Location | Copenhagen |
| OS | Ubuntu 22.04 LTS |
| Tailscale IP | 100.89.206.60 |
| Role | Gaming servers (Minecraft, WoW) |
| Form factor | Lenovo "tiny" desktop (lunchbox-sized) |
Hardware
| Component | Spec |
|---|---|
| CPU | Intel i5-4570T (4 threads) |
| Memory | 16 GB |
| Boot disk | 500 GB |
Compact Lenovo desktop — powered by a standard ThinkPad charging brick. Small, quiet, and draws minimal power.
Services
Minecraft
| Image | itzg/minecraft-server |
| Port | 25565 |
| Deployment | Docker |
Not proxied through Caddy — accessed directly via Tailscale or the host's public IP.
World of Warcraft (MaNGOS Zero)
WoW 1.12 (Vanilla) private server using the MaNGOS Zero emulator. Runs natively — not in Docker.
| Service | Port | Managed by |
|---|---|---|
| mangos-realmd | 3724 | systemd |
| mangos-world | 8085 | systemd |
| MariaDB | 3306 | systemd (apt-managed) |
- Runs as the
mangosuser - Install path:
/home/mangos/mangos/zero/ - MariaDB hosts the character, world, and auth databases locally
- Both
mangos-realmdandmangos-worldstart automatically on boot via systemd - The
mariadbAnsible role manages package + secrets; thesystemd_servicesrole drops the unit files (ansible/services/mangos-realmd/,ansible/services/mangos-world/)
Other
| Service | Port | Deployment | Notes |
|---|---|---|---|
| smartctl_exporter | 9633 | Docker | Disk SMART metrics scraped by Alloy |
| node_exporter | 9100 | Native | Host metrics |
| systemd_exporter | — | Native | systemd unit metrics |
| Alloy | — | Native | Ships everything to Grafana Cloud |
| Tailscale | — | Native | Mesh networking |
Networking
Connected directly to the ISP router's built-in switch. Symmetrical 500 Mbit connection — more than enough for game servers.
Notes
copenhagen-a has a static public IP, which is needed for game servers that require direct client connections (WoW realm list, Minecraft server list). The reboot playbook (ansible/playbooks/reboot.yml) does a netplan pre-flight check before rebooting to make sure the static IP config will come back up cleanly.