Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/simcu/headscale-ui
https://github.com/simcu/headscale-ui
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/simcu/headscale-ui
- Owner: simcu
- Created: 2023-03-23T20:30:34.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-02-02T04:06:27.000Z (9 months ago)
- Last Synced: 2024-06-21T13:30:24.963Z (5 months ago)
- Language: TypeScript
- Size: 160 KB
- Stars: 157
- Watchers: 5
- Forks: 17
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-starred - simcu/headscale-ui - (others)
README
# HeadscaleUi
[![main](https://github.com/simcu/headscale-ui/actions/workflows/main.yml/badge.svg)](https://github.com/simcu/headscale-ui/actions/workflows/main.yml)This is a static headscale admin ui, no backend enviroment required
## Thanks
Headscale - https://github.com/juanfont/headscale version: v0.21.0
UI - https://github.com/NG-ZORRO/ng-zorro-antd version: v15.0.3
BaseFramework - https://angular.io/ version: 15.2.4
## ScreenShots
## Pre Requirement
1. You need to generate a apikey use headscale-cli
> on your headscale server run: headscale apikeys create -e 9999d
2. You need a static web server space, or use docker
3. (optional) If you deploy it on other domain, you need set headscale api's cors.## Deploy Guide
### A: use static web space
emmm.... I don't know how to describe this action.... it is really very easy...### B: use docker (k8s also, it's a nginx static webserver, no other required)
1. run command on your docker enviroment
> docker run -d --name headscale-ui -p 8888:80 simcu/headscale-ui
2. open http://127.0.0.1:8888/manager/
3. (optional) if run it not on same domain with headscale,the system will error, don't warried, only click "Exit" on the top menu, you will redirect to login page.
4. if you deploy this standalone, on login page click "Change Server" then, input server url.
5. input apikey , click "Login"### C: use caddy
```
domain.com {
@ui {
path_regexp (/$)|(\.)
}
handle @ui {
root * /www/headscale-ui
try_files {path} /index.html
file_server
}reverse_proxy 127.0.0.1:7070
}
```## Notice
1. ServerUrl and ApiKey are saved in localstorage in plain text.
2. you will only need login once.if apikey is invalid , system will require login again.