hackstrix/Portainer-Tailscale Deploy

Deploy Docker Compose stacks to a private Portainer instance via a secure Tailscale tunnel

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
ts_oauth_client_idTailscale OAuth Client ID (recommended over ts_authkey)no
ts_oauth_secretTailscale OAuth Client Secretno
ts_authkeyPre-generated Tailscale auth key (fallback if OAuth is not configured)no
ts_tagsComma-separated ACL tags for the ephemeral node (required for OAuth, e.g. tag:ci)notag:ci
ts_hostnameHostname for the ephemeral Tailscale nodeno""
ts_connect_timeoutSeconds to wait for the Tailscale route to become availableno60
portainer_urlFull Portainer URL including port (e.g. https://my-nas.tailnet.ts.net:9443)yes
portainer_api_keyPortainer API key for authenticationyes
stack_nameName of the Portainer stack to deployyes
compose_filePath to the Docker Compose fileno./docker-compose.yml
endpoint_idPortainer endpoint/environment ID (0 = auto-detect)no0
env_varsMultiline KEY=VALUE environment variables (replaces all stack env vars)no""
config_filesMultiline list of local_path:remote_path config files to upload alongside the compose file (applied on stack creation only)no""
tls_skip_verifySkip TLS certificate verification (for self-signed certs)nofalse
registry_urlContainer registry URL (e.g. ghcr.io) — if set, configures credentials in Portainerno""
registry_usernameRegistry username (e.g. your GitHub username for GHCR)no""
registry_tokenRegistry password or access tokenno""
actionAction to perform: deploy (create-or-update) or deletenodeploy
namedescription
stack_idThe Portainer stack ID after deployment
stack_statusThe final status of the stack (created, updated, deleted)