Hacker News new | ask | show | jobs
Show HN: Docker setup for Headscale (self-hosted Tailscale control server) (github.com)
1 points by hwdsl2 72 days ago
This provides a Docker-based setup for Headscale with minimal manual configuration. The Docker image is built automatically via GitHub Actions.

On first start it:

* Generates config

* Creates a pre-auth key

* Allows a client to connect within a few minutes

For non-Docker setups, there is also a simple install script: hwdsl2/headscale-install

That script is intended for a one-command VPS setup. It installs and configures Headscale with sensible defaults.

This follows the same approach as some of my earlier projects (e.g. docker-ipsec-vpn-server, setup-ipsec-vpn), focusing on making things work out of the box with minimal maintenance.

I’ve also been experimenting with related projects in the same space:

* docker-wireguard

* docker-openvpn

Feedback is welcome, especially from others running Headscale.

1 comments

Headscale already provides a docker container: https://hub.docker.com/r/headscale/headscale

Why would I use this from a total online stranger instead?

The official image requires you to write and mount a complete "config.yaml" before the container will even start. This image auto-generates the config from environment variables on first start, prints a pre-auth key to the logs so you can connect a device immediately, and includes an "hs_manage" helper for common admin tasks. It's also Alpine-based (~20–30 MB vs ~85 MB for the official Debian image).

It has the same Headscale binary underneath, just with a different out-of-the-box experience consistent with my other Docker images for WireGuard, OpenVPN, and IPsec VPN.