All apps · 0 apps
Lab-Dash
Docker app from grtgbln's Repository
Overview
Readme
View on GitHubLab Dash
This is an open-source user interface designed to be your internally hosted homepage for your homelab/server.
Features
Lab Dash features a customizable grid layout where you can add various widgets:
- Shortcuts to your tools/services
- System information
- Service health checks
- Custom widgets and more
Customization
You can easily customize your dashboard by:
- Dragging and reordering
- Changing the background image
- Adding custom search providers
- Custom title and tab name
Privacy & Data Control
You have complete control over your data and dashboard configuration.
- All data is stored & used on your own device
- Sensitive data is encrypted locally using AES-256-CBC
- Only administrator accounts can make changes
- Configurations can be easily backed up and restored
Installation
This only requires docker to be installed. Install Docker. Run using docker compose
---
services:
lab-dash:
container_name: lab-dash
image: ghcr.io/anthonygress/lab-dash:latest
privileged: true
#network_mode: host # for monitoring network usage stats. run `sudo ufw allow 2022/tcp` on ubuntu to allow access through firewall
ports:
- 2022:2022
environment:
- SECRET=YOUR_SECRET_KEY # any random string for used for encryption.
# You can run `openssl rand -base64 32` to generate a key
volumes:
- /sys:/sys:ro
- /docker/lab-dash/config:/config
- /docker/lab-dash/uploads:/app/public/uploads
- /var/run/docker.sock:/var/run/docker.sock
restart: unless-stopped
Usage
Lab Dash can aslo be accessed from any web browser via
http://localhost:2022on the device running the container192.168.x.x:2022on local networkwww.your-homepage.comusing your custom domain name
Lab Dash can also be installed as an app on your computer/phone as a PWA (Progressive Web App):
- Using Google Chrome on Mac/Windows/Android/Linux
- Using Safari on iOS/iPad OS via the share menu > add to homscreen
[!IMPORTANT]
You should assign a static IP address for you server so any LAN/WAN device can access the Lab Dash instance.
Simply copy/download the docker-compose.yml or add it to an existing docker-compose file.
Running Docker compose file
docker compose up -d
This docker container will restart automatically after reboots unless it was manually stopped. This is designed to be run on your hosting server.
Stopping this docker container
- Navigate to the directory that this docker compose file is in
- Run:
docker compose down
Local Development
npm install
npm run dev
Updating
Portainer
- Navigate to stacks
- Click on the
lab-dashstack - Click Editor tab at the top
- Click Update the stack
- Enable Re-pull image and redploy toggle
- Click Update
Docker CLI:
cd /directory_of_compose_yamldocker compose downdocker compose pulldocker compose up -d
Contributing
Contributions to Lab Dash are welcome! Please follow these guidelines:
- One feature per PR - Keep pull requests focused on a single feature or fix
- Review AI-generated code - If using AI tools, all code must be thoroughly reviewed and tested before submitting
- Maintain consistency - New code must align with the app's existing style, theme, and overall user experience
Disclaimer
This code is provided for informational and educational purposes only. I am not associated with any of the services/applications mentioned in this project.
Install Lab-Dash on Unraid in a few clicks.
Find Lab-Dash in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Requirements
Categories
Related apps
Explore more like this
Explore allDetails
ghcr.io/anthonygress/lab-dash:latestRuntime arguments
- Web UI
http://[IP]:[PORT:2022]/- Network
bridge- Privileged
- false
Template configuration
Container Port: 2022
- Target
- 2022
- Default
- 2022
- Value
- 2022
Generate with 'openssl rand -base64 32'
- Target
- SECRET
Path to the config folder
- Target
- /config
- Default
- /mnt/user/appdata/lab-dash/config
- Value
- /mnt/user/appdata/lab-dash/config
Path to the uploads folder
- Target
- /app/public/uploads
- Default
- /mnt/user/appdata/lab-dash/uploads
- Value
- /mnt/user/appdata/lab-dash/uploads
Path to the system folder
- Target
- /sys
- Default
- /sys
- Value
- /sys
Path to the Docker socket
- Target
- /var/run/docker.sock
- Default
- /var/run/docker.sock
- Value
- /var/run/docker.sock
User ID (Unraid: 99 = nobody)
- Default
- 99
- Value
- 99
Group ID (Unraid: 100 = users)
- Default
- 100
- Value
- 100