DweebUI is a WebUI for managing your containers. Simple setup, a dynamically updating dashboard, and a multi-user permission system.
containerscssdashboarddockerdocker-composedockerodeejsexpresshtmlhtmxjavascriptlinuxmacnodejspodmanportainerwindows
|
||
---|---|---|
.github | ||
caddyfiles | ||
components | ||
controllers | ||
database | ||
functions | ||
public | ||
routes | ||
screenshots | ||
views | ||
app.js | ||
CHANGELOG.md | ||
compose.yaml | ||
Dockerfile | ||
DweebUI.png | ||
LICENSE | ||
package-lock.json | ||
package.json | ||
README.md | ||
setup.sh | ||
templates.json |
DweebUI
DweebUI is a simple Docker web interface created with javascript and node.js
Pre-Pre-Pre-Pre-Pre Alpha v0.06 ( 🔥 Experimental. Don't install on any servers you care about 🔥 )
- 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 :|
Features
- Dashboard provides server metrics (cpu, ram, network, disk) and container controls on a single page.
- Light/Dark Mode.
- Easy to install app templates.
- Automatically persists data in docker volumes if bind mount isn't used.
- Proxy manager for Caddy. (Optional)
- Partial Portainer Template Support (Network Mode, Ports, Volumes, Enviroment Variables, Labels, Commands, Restart Policy, Nvidia Hardware Acceleration).
- Multi-User built-in.
- User pages: Shortcuts, Requests, Support. (planned)
- Support for Windows, Linux, and MacOS.
- Import compose files. (planned)
- Pure javascript. No frameworks or typescript.
- 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
- Docker compose.yaml:
services:
dweebui:
container_name: DweebUI
image: lllllllillllllillll/dweebui:v0.06
environment:
NODE_ENV: production
REDIS_PASS: replace_with_password_for_redis
# Proxy_Manager: enabled
restart: unless-stopped
ports:
- 8000:8000
depends_on:
- cache
links:
- cache
volumes:
- dweebui:/app
- caddyfiles:/app/caddyfiles
- /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 replace_with_password_for_redis
volumes:
- cache:/data
volumes:
dweebui:
cache:
caddyfiles:
- 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/
- Apps template based on Portainer template provided by Lissy93 here: https://github.com/Lissy93/portainer-templates
- Most of the app icons were sourced from Walkxcode's dashboard icons here: https://github.com/walkxcode/dashboard-icons