This repository contains configuration files for Dockerized Headscale, a self-hosted implementation of Tailscale control server.
Headscale is an open-source, self-hosted implementation of the Tailscale control server. This repository provides the necessary configuration files to set up and run Headscale in a Dockerized environment, making it easy to deploy and manage.
-
Clone the repository:
git clone https://github.com/saahirlol/hs-config.git
-
Navigate to the directory:
cd hs-config/server
-
Modify the configuration file
config.yaml
:- Update all instances of
yourdomain.here
with your actual domain. - Configure the OIDC settings with your specific OpenID Connect provider information.
- Update all instances of
-
Build and run the Docker containers:
docker-compose up --build
After installation, Headscale will be running in Docker containers. You can interact with the Headscale server using the provided configuration files.
-
To start the containers:
docker-compose up -d
-
To stop the containers:
docker-compose down
-
To view logs:
docker-compose logs -f
Configuration files are located in the config
directory. You can customize the Headscale settings by editing the following files:
config.yaml
: Main configuration file for Headscale.docker-compose.yml
: Docker Compose file to manage Docker containers.
To change the settings for your Headscale instance, open the config.yaml
file and modify the parameters as needed.
Important: Ensure you update the following sections with your specific information:
- Replace
yourdomain.here
with your actual domain. - Configure the OIDC settings with your OpenID Connect provider details.
Example modifications:
-
server_url: The URL clients will connect to.
server_url: https://hs.yourdomain.here:443
-
base_domain: Base domain for MagicDNS.
base_domain: yourdomain.here
-
OIDC Configuration:
oidc: only_start_if_oidc_is_available: true issuer: "https://logins.yourdomain.here/application/o/hs/" client_id: "id" client_secret: "secret"
To adjust Docker settings, such as container names or volumes, edit the docker-compose.yml
file.
We welcome contributions from the community! If you'd like to contribute:
- Fork the repository.
- Create a new branch for your feature or bugfix:
git checkout -b feature-name
- Make your changes and commit them with clear and concise messages.
- Push your changes to your forked repository:
git push origin feature-name
- Open a pull request with a description of your changes.
This project is licensed under the MIT License. See the LICENSE file for details.
If you encounter any issues or have suggestions for improvements, feel free to open an issue on the GitHub repository. Happy self-hosting!