tailscale-deploy

Deploy an F# application with a Tailscale sidecar using Docker Compose.

1|Updated Nov 26, 2025
One-click install
npx skills add https://github.com/heimeshoff/Cinemarco --skill tailscale-deploy
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tailscale-deploy
Source: https://github.com/heimeshoff/Cinemarco/tree/main/.claude/skills/tailscale-deploy
Command: npx skills add https://github.com/heimeshoff/Cinemarco --skill tailscale-deploy

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill guides you to deploy F# apps securely using Tailscale as a private network, avoiding public exposure.

Core Features & Use Cases

  • Docker Compose: Orchestrate app + Tailscale sidecar.
  • Private Access: Access via Tailnet hostname, no public ports.
  • Deployment Steps: Local testing, production deployment workflows, and Portainer support.

Quick Start

Create docker-compose.yml and .env with TS_AUTHKEY, then deploy stack.

Frequently Asked Questions about tailscale-deploy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy a Docker application with private network access using Tailscale?

Deploy a Docker application privately with Tailscale by configuring a docker-compose.yml that runs your app alongside a Tailscale sidecar container. The sidecar connects to your Tailnet, making the app accessible via Tailnet hostname without exposing public ports. You'll need a Tailscale account, a reusable auth key in your .env file, and Docker Compose installed.

Can I use Docker Compose with Tailscale to avoid public port exposure?

Yes. Docker Compose orchestrates your application container and Tailscale sidecar together, binding them to a private network. The Tailscale sidecar handles all network connectivity to your Tailnet, eliminating the need for public ports while maintaining accessibility from any device on the Tailnet.

What do I need to set up a Tailscale sidecar deployment with Docker?

You need Docker and Docker Compose installed, a multi-stage Dockerfile for your F# or containerized application, a docker-compose.yml defining both your app and Tailscale sidecar services, and a .env file containing your Tailscale reusable auth key. The setup works for local testing, production, Portainer stacks, and home servers.

How do I access my privately deployed application from different devices?

Once deployed with Tailscale, access your application by its Tailnet hostname from any device connected to the same Tailnet. No VPN configuration or public IP needed—Tailscale handles secure routing automatically across all connected devices.

Does Tailscale sidecar deployment work with Portainer?

Yes. Tailscale sidecar deployments are compatible with Portainer stacks. You deploy the docker-compose.yml as a stack in Portainer, and the Tailscale sidecar establishes private network connectivity the same way it would in a standalone Docker Compose environment.

What are the limitations of using Tailscale for private deployments?

Tailscale requires a valid account and reusable auth key; if the key expires or is revoked, the sidecar loses network connectivity. Additionally, all devices accessing the application must be on the same Tailnet, and network throughput depends on Tailscale's infrastructure and your internet connection.