feat(documentation): Added readme content and adjusted config
This commit is contained in:
parent
15ce4b1e30
commit
934a68303a
4 changed files with 25 additions and 15 deletions
|
|
@ -0,0 +1,5 @@
|
||||||
|
# Headscale
|
||||||
|
Headscale is a self-hosted TailScale server. As far as I can tell, there isn't really a web frontend provided with the container image and all management actions are done on the command line
|
||||||
|
|
||||||
|
## Using this kubernetes config
|
||||||
|
Set the headscale domain name in `ingress.yml`. This config assumes you have cert-manager installed on your cluster, so if you want to provide HTTPS another way, feel free to comment out the `spec.tls` section (the annotation shouldn't affect anything, but you can comment it out as well if you want). Then look through the `config.yml` file and configure Headscale to fit your needs.
|
||||||
|
|
@ -15,14 +15,13 @@ data:
|
||||||
#
|
#
|
||||||
# https://myheadscale.example.com:443
|
# https://myheadscale.example.com:443
|
||||||
#
|
#
|
||||||
# server_url: http://127.0.0.1:8080
|
server_url: http://127.0.0.1:8080
|
||||||
server_url: https://headscale.foxhawk.co.uk
|
|
||||||
|
|
||||||
# Address to listen to / bind to on the server
|
# Address to listen to / bind to on the server
|
||||||
#
|
#
|
||||||
# For production:
|
# For production:
|
||||||
listen_addr: 0.0.0.0:8080
|
# listen_addr: 0.0.0.0:8080
|
||||||
# listen_addr: 127.0.0.1:8080
|
listen_addr: 127.0.0.1:8080
|
||||||
|
|
||||||
# Address to listen to /metrics and /debug, you may want
|
# Address to listen to /metrics and /debug, you may want
|
||||||
# to keep this endpoint private to your internal network
|
# to keep this endpoint private to your internal network
|
||||||
|
|
@ -207,31 +206,31 @@ data:
|
||||||
# TLS for a domain with Let's Encrypt.
|
# TLS for a domain with Let's Encrypt.
|
||||||
#
|
#
|
||||||
# URL to ACME directory
|
# URL to ACME directory
|
||||||
#acme_url: https://acme-v02.api.letsencrypt.org/directory
|
acme_url: https://acme-v02.api.letsencrypt.org/directory
|
||||||
|
|
||||||
# Email to register with ACME provider
|
# Email to register with ACME provider
|
||||||
#acme_email: ""
|
acme_email: ""
|
||||||
|
|
||||||
# Domain name to request a TLS certificate for:
|
# Domain name to request a TLS certificate for:
|
||||||
#tls_letsencrypt_hostname: ""
|
tls_letsencrypt_hostname: ""
|
||||||
|
|
||||||
# Path to store certificates and metadata needed by
|
# Path to store certificates and metadata needed by
|
||||||
# letsencrypt
|
# letsencrypt
|
||||||
# For production:
|
# For production:
|
||||||
#tls_letsencrypt_cache_dir: /var/lib/headscale/cache
|
tls_letsencrypt_cache_dir: /var/lib/headscale/cache
|
||||||
|
|
||||||
# Type of ACME challenge to use, currently supported types:
|
# Type of ACME challenge to use, currently supported types:
|
||||||
# HTTP-01 or TLS-ALPN-01
|
# HTTP-01 or TLS-ALPN-01
|
||||||
# See: docs/ref/tls.md for more information
|
# See: docs/ref/tls.md for more information
|
||||||
#tls_letsencrypt_challenge_type: HTTP-01
|
tls_letsencrypt_challenge_type: HTTP-01
|
||||||
# When HTTP-01 challenge is chosen, letsencrypt must set up a
|
# When HTTP-01 challenge is chosen, letsencrypt must set up a
|
||||||
# verification endpoint, and it will be listening on:
|
# verification endpoint, and it will be listening on:
|
||||||
# :http = port 80
|
# :http = port 80
|
||||||
#tls_letsencrypt_listen: ":http"
|
tls_letsencrypt_listen: ":http"
|
||||||
|
|
||||||
## Use already defined certificates:
|
## Use already defined certificates:
|
||||||
#tls_cert_path: ""
|
tls_cert_path: ""
|
||||||
#tls_key_path: ""
|
tls_key_path: ""
|
||||||
|
|
||||||
log:
|
log:
|
||||||
# Valid log levels: panic, fatal, error, warn, info, debug, trace
|
# Valid log levels: panic, fatal, error, warn, info, debug, trace
|
||||||
|
|
@ -282,7 +281,7 @@ data:
|
||||||
# `base_domain` must be a FQDN, without the trailing dot.
|
# `base_domain` must be a FQDN, without the trailing dot.
|
||||||
# The FQDN of the hosts will be
|
# The FQDN of the hosts will be
|
||||||
# `hostname.base_domain` (e.g., _myhost.example.com_).
|
# `hostname.base_domain` (e.g., _myhost.example.com_).
|
||||||
base_domain: foxhawk.vpn
|
base_domain: example.com
|
||||||
|
|
||||||
# Whether to use the local DNS settings of a node or override the local DNS
|
# Whether to use the local DNS settings of a node or override the local DNS
|
||||||
# settings (default) and force the use of Headscale's DNS configuration.
|
# settings (default) and force the use of Headscale's DNS configuration.
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ spec:
|
||||||
- serve
|
- serve
|
||||||
resources:
|
resources:
|
||||||
limits:
|
limits:
|
||||||
memory: "128Mi"
|
memory: "512Mi"
|
||||||
cpu: "500m"
|
cpu: "500m"
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 8080
|
- containerPort: 8080
|
||||||
|
|
|
||||||
|
|
@ -2,9 +2,15 @@ apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: headscale
|
name: headscale
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: "letsencrypt-production"
|
||||||
spec:
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- <headscale url>
|
||||||
|
secret-name: headscale-tls
|
||||||
rules:
|
rules:
|
||||||
- host: headscale.foxhawk.co.uk
|
- host: <headscale url>
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
- pathType: Prefix
|
- pathType: Prefix
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue