From 1cd14a62d90da234d2fdf8f69c80d36317fdd6b6 Mon Sep 17 00:00:00 2001 From: Lancelot Date: Sat, 1 Feb 2025 15:00:54 +0100 Subject: [PATCH] Add dynamic compose for tailscale (#6599) --- apps/tailscale/config.json | 5 +++-- apps/tailscale/docker-compose.json | 36 ++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 apps/tailscale/docker-compose.json diff --git a/apps/tailscale/config.json b/apps/tailscale/config.json index ba48dc6c0c..e02493ece6 100644 --- a/apps/tailscale/config.json +++ b/apps/tailscale/config.json @@ -3,10 +3,11 @@ "name": "Tailscale", "available": true, "exposable": false, + "dynamic_config": true, "no_gui": true, "port": 8093, "id": "tailscale", - "tipi_version": 38, + "tipi_version": 39, "version": "1.78.3", "categories": ["network", "security"], "description": "Zero config VPN. Installs on any device in minutes, manages firewall rules for you, and works from anywhere.", @@ -63,5 +64,5 @@ ], "supported_architectures": ["arm64", "amd64"], "created_at": 1691943801422, - "updated_at": 1734026149000 + "updated_at": 1738177633406 } diff --git a/apps/tailscale/docker-compose.json b/apps/tailscale/docker-compose.json new file mode 100644 index 0000000000..ac385cfb31 --- /dev/null +++ b/apps/tailscale/docker-compose.json @@ -0,0 +1,36 @@ +{ + "$schema": "../dynamic-compose-schema.json", + "services": [ + { + "name": "tailscale", + "image": "tailscale/tailscale:v1.78.3", + "isMain": true, + "environment": { + "TS_SERVE_CONFIG": "${TAILSCALE_SERVE_CONFIG}", + "TS_ACCEPT_DNS": "${TAILSCALE_ACCEPT_DNS-false}", + "TS_AUTH_ONCE": "${TAILSCALE_AUTH_ONCE-false}", + "TS_AUTHKEY": "${TAILSCALE_AUTHKEY}", + "TS_HOSTNAME": "${TAILSCALE_HOSTNAME-runtipi}", + "TS_ROUTES": "${TAILSCALE_ROUTES}", + "TS_EXTRA_ARGS": "${TAILSCALE_EXTRA_ARGS}", + "TS_USERSPACE": "${TAILSCALE_USERSPACE-true}", + "TS_STATE_DIR": "/var/lib/tailscale" + }, + "volumes": [ + { + "hostPath": "${APP_DATA_DIR}/data/state", + "containerPath": "/var/lib/tailscale" + }, + { + "hostPath": "${APP_DATA_DIR}/data/config", + "containerPath": "/config" + }, + { + "hostPath": "/dev/net/tun", + "containerPath": "/dev/net/tun" + } + ], + "capAdd": ["net_admin", "sys_module"] + } + ] +}