infrastructure/roles/teamspeak/templates/teamspeak.container.j2
Saibotk e7a172877b
refactor!(teamspeak): Use podman quadlet setup
This is mostly equivalent to the awesome role found in @histalek's repository:
bde4d9dacb/roles/teamspeak
2024-08-14 00:53:09 +02:00

38 lines
911 B
Django/Jinja

{{ ansible_managed | comment }}
[Unit]
Description = Teamspeak server
[Service]
Restart = always
RestartSec = 5s
[Container]
Image = {{ teamspeak_containerimage }}:{{ teamspeak_image_tag }}
ContainerName = teamspeak
AutoUpdate = registry
LogDriver = journald
NoNewPrivileges = true
ReadOnly = true
DropCapability = all
AddCapability = CAP_CHOWN CAP_SETGID CAP_SETUID
UserNS = auto:size=65535
{% if teamspeak_selinux_level != omit %}
SecurityLabelLevel = {{ teamspeak_selinux_level }}
{% endif %}
Environment = TS3SERVER_LICENSE=accept
PublishPort = {{ teamspeak_voice_port }}:9987/udp
PublishPort = {{ teamspeak_filetransfer_port }}:30033/udp
Volume = {{ teamspeak_install_dir }}/data:/var/ts3server:U
PodmanArgs = --memory={{ teamspeak_memory_high }}
PodmanArgs = --memory-swap={{ teamspeak_swap_max }}
PodmanArgs = --memory-reservation={{ teamspeak_memory_low }}
[Install]
WantedBy = default.target