mirror of
				https://github.com/juanfont/headscale.git
				synced 2025-10-30 23:51:03 +01:00 
			
		
		
		
	Apply suggestions from code review
Co-authored-by: Kristoffer Dalby <kradalby@kradalby.no>
This commit is contained in:
		
							parent
							
								
									995dcfc6ae
								
							
						
					
					
						commit
						0318af5a33
					
				| @ -50,7 +50,7 @@ Suggestions/PRs welcomed! | |||||||
| 
 | 
 | ||||||
| ## Running headscale | ## Running headscale | ||||||
| 
 | 
 | ||||||
| Please have a look at the documentation under (`docs/`). | Please have a look at the documentation under [`docs/`](docs/). | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| ## Disclaimer | ## Disclaimer | ||||||
|  | |||||||
| @ -1,9 +1,13 @@ | |||||||
| # Configuration reference | # Configuration reference | ||||||
| 
 | 
 | ||||||
| Headscale's configuration file is named `config.json` or `config.yaml`. Headscale will look for it in `/etc/headscale`, `~/.headscale` and finally the directory from where the Headscale binary is executed. | Headscale will look for a configuration file named `config.yaml` (or `config.json`) in the following order: | ||||||
|  | 
 | ||||||
|  | - `/etc/headscale` | ||||||
|  | - `~/.headscale` | ||||||
|  | - current working directory | ||||||
| 
 | 
 | ||||||
| ```yaml | ```yaml | ||||||
| server_url: http://192.168.1.12:8080 | server_url: http://headscale.mydomain.net | ||||||
| listen_addr: 0.0.0.0:8080 | listen_addr: 0.0.0.0:8080 | ||||||
| ip_prefix: 100.64.0.0/10 | ip_prefix: 100.64.0.0/10 | ||||||
| ``` | ``` | ||||||
|  | |||||||
| @ -19,11 +19,10 @@ | |||||||
|      POSTGRES_USER=foo -e POSTGRES_PASSWORD=bar -p 5432:5432 -d postgres |      POSTGRES_USER=foo -e POSTGRES_PASSWORD=bar -p 5432:5432 -d postgres | ||||||
|    ``` |    ``` | ||||||
| 
 | 
 | ||||||
| 3. Set some stuff up (headscale Wireguard keys & the config.json file) | 3. Create a WireGuard Private key and headscale configuration | ||||||
| 
 | 
 | ||||||
|    ```shell |    ```shell | ||||||
|    wg genkey > private.key |    wg genkey > private.key | ||||||
|    wg pubkey < private.key > public.key  # not needed |  | ||||||
| 
 | 
 | ||||||
|    # Postgres |    # Postgres | ||||||
|    cp config.json.postgres.example config.json |    cp config.json.postgres.example config.json | ||||||
| @ -44,7 +43,14 @@ | |||||||
| 
 | 
 | ||||||
|    ```shell |    ```shell | ||||||
|    touch db.sqlite |    touch db.sqlite | ||||||
|    docker run -v $(pwd)/private.key:/private.key -v $(pwd)/config.json:/config.json -v $(pwd)/derp.yaml:/derp.yaml -v $(pwd)/db.sqlite:/db.sqlite -p 127.0.0.1:8080:8080 headscale/headscale:x.x.x headscale namespaces create myfirstnamespace |    docker run \ | ||||||
|  |      -v $(pwd)/private.key:/private.key \ | ||||||
|  |      -v $(pwd)/config.json:/config.json \ | ||||||
|  |      -v $(pwd)/derp.yaml:/derp.yaml \ | ||||||
|  |      -v $(pwd)/db.sqlite:/db.sqlite \ | ||||||
|  |      -p 127.0.0.1:8080:8080 \ | ||||||
|  |      headscale/headscale:x.x.x \ | ||||||
|  |      headscale namespaces create myfirstnamespace | ||||||
|    ``` |    ``` | ||||||
| 
 | 
 | ||||||
|    or if your server is already running in docker: |    or if your server is already running in docker: | ||||||
| @ -64,7 +70,13 @@ | |||||||
|    the db.sqlite mount is only needed if you use sqlite |    the db.sqlite mount is only needed if you use sqlite | ||||||
| 
 | 
 | ||||||
|    ```shell |    ```shell | ||||||
|    docker run -v $(pwd)/private.key:/private.key -v $(pwd)/config.json:/config.json -v $(pwd)/derp.yaml:/derp.yaml -v $(pwd)/db.sqlite:/db.sqlite -p 127.0.0.1:8080:8080 headscale/headscale:x.x.x headscale serve |    docker run \ | ||||||
|  |      -v $(pwd)/private.key:/private.key \ | ||||||
|  |      -v $(pwd)/config.json:/config.json \ | ||||||
|  |      -v $(pwd)/derp.yaml:/derp.yaml \ | ||||||
|  |      -v $(pwd)/db.sqlite:/db.sqlite \ | ||||||
|  |      -p 127.0.0.1:8080:8080 \ | ||||||
|  |      headscale/headscale:x.x.x headscale serve | ||||||
|    ``` |    ``` | ||||||
| 
 | 
 | ||||||
| 6. If you used tailscale.com before in your nodes, make sure you clear the tailscald data folder | 6. If you used tailscale.com before in your nodes, make sure you clear the tailscald data folder | ||||||
| @ -89,7 +101,12 @@ | |||||||
|    ``` |    ``` | ||||||
|    or docker: |    or docker: | ||||||
|    ```shell |    ```shell | ||||||
|    docker run -v $(pwd)/private.key:/private.key -v $(pwd)/config.json:/config.json -v $(pwd)/derp.yaml:/derp.yaml headscale/headscale:x.x.x headscale -n myfirstnamespace nodes register YOURMACHINEKEY |    docker run \ | ||||||
|  |      -v $(pwd)/private.key:/private.key \ | ||||||
|  |      -v $(pwd)/config.json:/config.json \ | ||||||
|  |      -v $(pwd)/derp.yaml:/derp.yaml \ | ||||||
|  |      headscale/headscale:x.x.x \ | ||||||
|  |      headscale -n myfirstnamespace nodes register YOURMACHINEKEY | ||||||
|    ``` |    ``` | ||||||
|    or if your server is already running in docker: |    or if your server is already running in docker: | ||||||
|    ```shell |    ```shell | ||||||
| @ -107,7 +124,13 @@ Alternatively, you can use Auth Keys to register your machines: | |||||||
|    or docker: |    or docker: | ||||||
| 
 | 
 | ||||||
|    ```shell |    ```shell | ||||||
|    docker run -v $(pwd)/private.key:/private.key -v $(pwd)/config.json:/config.json -v$(pwd)/derp.yaml:/derp.yaml -v $(pwd)/db.sqlite:/db.sqlite headscale/headscale:x.x.x headscale -n myfirstnamespace preauthkeys create --reusable --expiration 24h |    docker run \ | ||||||
|  |      -v $(pwd)/private.key:/private.key \ | ||||||
|  |      -v $(pwd)/config.json:/config.json \ | ||||||
|  |      -v$(pwd)/derp.yaml:/derp.yaml \ | ||||||
|  |      -v $(pwd)/db.sqlite:/db.sqlite \ | ||||||
|  |      headscale/headscale:x.x.x \ | ||||||
|  |      headscale -n myfirstnamespace preauthkeys create --reusable --expiration 24h | ||||||
|    ``` |    ``` | ||||||
| 
 | 
 | ||||||
|    or if your server is already running in docker: |    or if your server is already running in docker: | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user