|
@@ -1,57 +1,79 @@
|
|
# DweebUI
|
|
# DweebUI
|
|
|
|
|
|
|
|
+[](https://github.com/lllllllillllllillll/DweebUI/blob/main/LICENSE)
|
|
|
|
+[]
|
|
|
|
|
|
DweebUI is a simple Docker web interface created with javascript and node.js
|
|
DweebUI is a simple Docker web interface created with javascript and node.js
|
|
|
|
|
|
-Pre-Pre-Pre-Pre-Pre Alpha v 0.04 ( :fire: Experimental. Don't install on any servers you care about :fire: )
|
|
|
|
|
|
+Pre-Pre-Pre-Pre-Pre Alpha v 0.05 ( :fire: Experimental. Don't install on any servers you care about :fire: )
|
|
|
|
|
|
* I haven't used Github very much and I'm still new to javascript.
|
|
* I haven't used Github very much and I'm still new to javascript.
|
|
* This is the first project I've ever released and I'm sure it's full of plenty of bugs and mistakes.
|
|
* This is the first project I've ever released and I'm sure it's full of plenty of bugs and mistakes.
|
|
* I probably should have waited a lot longer to share this :|
|
|
* I probably should have waited a lot longer to share this :|
|
|
|
|
|
|
-Requirements: Docker
|
|
|
|
-
|
|
|
|
-
|
|
|
|
|
|
+<a href="https://raw.githubusercontent.com/lllllllillllllillll/DweebUI/main/DweebUI.png"><img src="https://raw.githubusercontent.com/lllllllillllllillll/DweebUI/main/DweebUI.png" width="25%"/></a>
|
|
|
|
|
|
## Features
|
|
## Features
|
|
|
|
+* [x] Dashboard provides server metrics (cpu, ram, network, disk) and container controls on a single page.
|
|
|
|
+* [x] Light/Dark Mode.
|
|
|
|
+* [x] Easy to install app templates.
|
|
|
|
+* [x] Automatically persists data in docker volumes if bind mount isn't used.
|
|
|
|
+* [x] Proxy manager for Caddy.
|
|
|
|
+* [x] Partial Portainer Template Support (Network Mode, Ports, Volumes, Enviroment Variables, Labels, Commands, Restart Policy, Nvidia Hardware Acceleration).
|
|
|
|
+* [x] Multi-User built-in.
|
|
|
|
+* [ ] User pages: Shortcuts, Requests, Support. (planned)
|
|
|
|
+* [x] Support for Windows, Linux, and MacOS.
|
|
|
|
+* [ ] Import compose files. (planned)
|
|
|
|
+* [x] Pure javascript. No frameworks or typescript.
|
|
|
|
+* [x] Templates.json maintains compatability with Portainer, allowing you to use the template without needing to use DweebUI.
|
|
|
|
+* [ ] Manage your Docker networks, images, and volumes. (planned)
|
|
|
|
+* [ ] Preset variables. (planned)
|
|
|
|
|
|
-* Dashboard provides server metrics (cpu, ram, network, disk) and container controls on a single page.
|
|
|
|
-* Partial Portainer Template Support (Network Mode, Ports, Volumes, Enviroment Variables, Labels, Commands, Restart Policy, Nvidia Hardware Acceleration).
|
|
|
|
-* Light/Dark Mode.
|
|
|
|
-* Support for multiple users is built in (but unused).
|
|
|
|
-* Caddy Proxy Manager (very simple. proof of concept)
|
|
|
|
-* Pure javascript. No frameworks or typescript.
|
|
|
|
-* User data is stored in a sqlite database and uses browser sessions and a redis store for authentication.
|
|
|
|
-* Templates.json maintains compatability with Portainer, so you can use the template without needing to use DweebUI.
|
|
|
|
|
|
|
|
## Setup
|
|
## Setup
|
|
|
|
|
|
* Docker compose.yaml:
|
|
* Docker compose.yaml:
|
|
```
|
|
```
|
|
services:
|
|
services:
|
|
- dweebui:
|
|
|
|
- container_name: DweebUI
|
|
|
|
- image: lllllllillllllillll/dweebui:v0.04
|
|
|
|
- ports:
|
|
|
|
- - 8000:8000
|
|
|
|
- depends_on:
|
|
|
|
- - cache
|
|
|
|
- links:
|
|
|
|
- - cache
|
|
|
|
- volumes:
|
|
|
|
- - dweebui:/app
|
|
|
|
- - /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
- cache:
|
|
|
|
- container_name: DweebCache
|
|
|
|
- image: redis:6.2-alpine
|
|
|
|
- restart: always
|
|
|
|
- command: redis-server --save 20 1 --loglevel warning --requirepass eYVX7EwVmmxKPCDmwMtyKVge8oLd2t81
|
|
|
|
- volumes:
|
|
|
|
- - cache:/data
|
|
|
|
-
|
|
|
|
|
|
+ dweebui:
|
|
|
|
+ container_name: DweebUI
|
|
|
|
+ image: lllllllillllllillll/dweebui:v0.05
|
|
|
|
+ restart: unless-stopped
|
|
|
|
+ ports:
|
|
|
|
+ - 8000:8000
|
|
|
|
+ depends_on:
|
|
|
|
+ - cache
|
|
|
|
+ links:
|
|
|
|
+ - cache
|
|
|
|
+ volumes:
|
|
|
|
+ - dweebui:/app
|
|
|
|
+ - ./caddyfiles/Caddyfile:/app/caddyfiles/Caddyfile
|
|
|
|
+ - ./caddyfiles/sites:/app/caddyfiles/sites
|
|
|
|
+ - /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
+ cache:
|
|
|
|
+ container_name: DweebCache
|
|
|
|
+ image: redis:6.2-alpine
|
|
|
|
+ restart: always
|
|
|
|
+ command: redis-server --save 20 1 --loglevel warning --requirepass eYVX7EwVmmxKPCDmwMtyKVge8oLd2t81
|
|
|
|
+ volumes:
|
|
|
|
+ - cache:/data
|
|
|
|
+ proxy:
|
|
|
|
+ container_name: DweebProxy
|
|
|
|
+ image: caddy:2.4.5-alpine
|
|
|
|
+ depends_on:
|
|
|
|
+ - dweebui
|
|
|
|
+ restart: unless-stopped
|
|
|
|
+ network_mode: host
|
|
|
|
+ volumes:
|
|
|
|
+ - caddy:/data
|
|
|
|
+ - caddy:/config
|
|
|
|
+ - ./caddyfiles/Caddyfile:/etc/caddy/Caddyfile
|
|
|
|
+ - ./caddyfiles/sites:/etc/caddy/sites
|
|
|
|
+
|
|
volumes:
|
|
volumes:
|
|
- dweebui:
|
|
|
|
- cache:
|
|
|
|
|
|
+ dweebui:
|
|
|
|
+ cache:
|
|
|
|
+ caddy:
|
|
```
|
|
```
|
|
|
|
|
|
* Using setup.sh:
|
|
* Using setup.sh:
|