diff --git a/README.md b/README.md index 87cc9b4..9e91006 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,29 @@ # headscale-webui -* This is just a simple front-end for a Headscale server. Allows you to do the following: +This is just a simple front-end for a Headscale server. +Allows you to do the following: 1. Enable/Disable routes and exit nodes 2. Add, move, rename, and remove machines 3. Add and remove users/namespaces 4. Add and expire PreAuth keys 5. Add and remove machine tags -6. View machine details (last online, IP addresses, hsotname, PreAuth key in use, enabled/disabled routes, and tags) +6. View machine details + * Hostname + * User associated with the machine + * IP addresses in the Tailnet + * Last seen by the control server + * Last update with the control server + * Creation date + * PreAuth key associated with the machine + * Enable / disable routes and exit nodes + * Add and delete machine tags Screenshots: ![Machines](screenshots/machines.png) ![Users](screenshots/users.png) -![Add a new machine](screenshots/machine_add.png) -![Machine Details](screenshots/machines-page.JPG) -![API Key Test](screenshots/key_test.png) +![Add a new machine](screenshots/add-machine.png) +![Machine Details](screenshots/machines.png) +![API Key Test](screenshots/settings.png) ## Installation: @@ -21,14 +31,14 @@ Screenshots: 2. Change the following variables in docker-compose.yml: 1. TZ - Change to your timezone. Example: Asia/Tokyo 2. HS_SERVER - Change to your headscale's URL - 3. BASE_PATH - This will be the path your server is served on. Because the GUI expects , I usually put this as "/admin" + 3. BASE_PATH - This will be the path your server is served on. Because the Windows Tailscale GUI expects , I usually put this as "/admin" 4. KEY - Your encryption key to store your headscale API key on disk. Generate a new one with "openssl rand -base64 32". Do not forget the quotations around the key when entering. 3. You will also need to change the volumes: 1. /data - Where your encryption key will reside. Can be anywhere 2. /etc/headscale/ - This is your Headscale configuration file. 4. Update the build context location to the directory with the Dockerfile. 1. Example: If Dockerfile is in /home/username/headscale-webui, your context will be: - * `context: /home/username/headscale-webui/` + * context: /home/username/headscale-webui/ ## Traefik * This was built assuming the use of the Traefik reverse proxy. @@ -45,4 +55,4 @@ Screenshots: - "traefik.http.middlewares.headscale-webui-stripprefix.stripprefix.forceslash=true" - "traefik.http.middlewares.headscale-webui-stripprefix.stripprefix.prefixes=/admin/" ``` -* Replace $DOMAIN with your domain. \ No newline at end of file +* Replace $DOMAIN with your domain and update /admin to your BASE_PATH, if changed. \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml index 1976821..a6a1b76 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -3,6 +3,8 @@ services: headscale-webui: build: context: /path/to/git/repo/root/headscale-webui/ + # Alternatively, you can use a prebuilt image: + # image: git.sysctl.io/albert/headscale-webui:latest container_name: headscale-webui environment: - TZ=UTC # Timezone diff --git a/screenshots/add-machine.png b/screenshots/add-machine.png new file mode 100644 index 0000000..b651293 Binary files /dev/null and b/screenshots/add-machine.png differ diff --git a/screenshots/key_test.png b/screenshots/key_test.png deleted file mode 100644 index 0f02052..0000000 Binary files a/screenshots/key_test.png and /dev/null differ diff --git a/screenshots/machine_add.png b/screenshots/machine_add.png deleted file mode 100644 index 1b83d80..0000000 Binary files a/screenshots/machine_add.png and /dev/null differ diff --git a/screenshots/machines-page.JPG b/screenshots/machines-page.JPG deleted file mode 100644 index 7c80b97..0000000 Binary files a/screenshots/machines-page.JPG and /dev/null differ diff --git a/screenshots/machines.png b/screenshots/machines.png index a4b32eb..1230ca1 100644 Binary files a/screenshots/machines.png and b/screenshots/machines.png differ diff --git a/screenshots/overview.png b/screenshots/overview.png new file mode 100644 index 0000000..969f593 Binary files /dev/null and b/screenshots/overview.png differ diff --git a/screenshots/settings.png b/screenshots/settings.png new file mode 100644 index 0000000..9abbad1 Binary files /dev/null and b/screenshots/settings.png differ diff --git a/screenshots/users.png b/screenshots/users.png index 412108b..9b54515 100644 Binary files a/screenshots/users.png and b/screenshots/users.png differ