DweebUI/README.md

97 lines
3.8 KiB
Markdown
Raw Normal View History

# DweebUI
DweebUI is a simple Docker web interface created with javascript and node.js
2023-12-09 05:48:46 +00:00
Pre-Pre-Pre-Pre-Pre Alpha v0.08 ( :fire: Experimental. Don't install on any servers you care about :fire: )
[![GitHub Stars](https://img.shields.io/github/stars/lllllllillllllillll/DweebUI)](https://github.com/lllllllillllllillll)
[![GitHub License](https://img.shields.io/github/license/lllllllillllllillll/DweebUI)](https://github.com/lllllllillllllillll/DweebUI/blob/main/LICENSE)
[![GitHub Activity](https://img.shields.io/github/commit-activity/y/lllllllillllllillll/DweebUI)](https://github.com/lllllllillllllillll)
* 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.
* I probably should have waited a lot longer to share this :|
<a href="https://raw.githubusercontent.com//lllllllillllllillll/DweebUI/main/screenshots/dashboard.png"><img src="https://raw.githubusercontent.com/lllllllillllllillll/DweebUI/main/screenshots/dashboard.png" width="50%"/></a>
<a href="https://raw.githubusercontent.com/lllllllillllllillll/DweebUI/main/screenshots/apps.png"><img src="https://raw.githubusercontent.com/lllllllillllllillll/DweebUI/main/screenshots/apps.png" width="50%"/></a>
## 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. (Optional)
* [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)
* [ ] VPN, VPS, and Firewall Toggles. (planned)
* [ ] Offline Mode. (planned)
## Setup
2023-12-11 00:37:01 +00:00
Docker Compose:
```
2023-12-06 20:07:37 +00:00
version: "3.9"
services:
2023-12-06 20:07:37 +00:00
dweebui:
2023-12-06 20:07:37 +00:00
container_name: dweebui
2023-12-09 05:48:46 +00:00
image: lllllllillllllillll/dweebui:v0.08-dev
2023-12-11 00:37:01 +00:00
# build:
# context: .
environment:
NODE_ENV: production
2023-12-09 05:48:46 +00:00
PORT: 8000
2023-12-11 00:37:01 +00:00
SECRET: MrWiskers
#Proxy_Manager: enabled
restart: unless-stopped
ports:
- 8000:8000
volumes:
- dweebui:/app
- caddyfiles:/app/caddyfiles
- /var/run/docker.sock:/var/run/docker.sock
2023-12-11 00:37:01 +00:00
#- ./custom-templates.json:/app/custom-templates.json
#- ./composefiles:/app/composefiles
2023-12-06 20:07:37 +00:00
networks:
- dweeb_network
volumes:
dweebui:
caddyfiles:
2023-12-06 20:07:37 +00:00
networks:
dweeb_network:
2023-12-06 20:07:37 +00:00
driver: bridge
```
2023-12-11 00:37:01 +00:00
Compose setup:
2023-12-09 20:53:52 +00:00
2023-12-11 00:37:01 +00:00
* Paste the above content into a file named ```docker-compose.yml``` then place it in a folder named ```dweebui```.
* Open a terminal in the ```dweebui``` folder, then enter ```docker compose up -d```.
* You may need to use ```docker-compose up -d``` or execute the command as root with either ```sudo docker compose up -d``` or ```sudo docker-compose up -d```.
2023-12-06 20:07:37 +00:00
2023-12-11 00:37:01 +00:00
Using setup.sh:
```
Extract DweebUI.zip and navigate to /DweebUI
cd DweebUI
chmod +x setup.sh
sudo ./setup.sh
```
## Credit
* UI was built using HTML and CSS elements from https://tabler.io/
2023-12-09 05:48:46 +00:00
* Apps template based on Portainer template provided by Lissy93: https://github.com/Lissy93/portainer-templates
* Icons from Walkxcode with some renames and additions: https://github.com/walkxcode/dashboard-icons