Lab-Dash

Lab-Dash

Docker app from grtgbln's Repository

Overview

An open-source user interface designed to manage your server/homelab applications and services.

Lab Dash

This is an open-source user interface designed to be your internally hosted homepage for your homelab/server.

Screenshot 2025-05-08 at 8 58 34 PM

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:2022 on the device running the container
  • 192.168.x.x:2022 on local network
  • www.your-homepage.com using 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
Screenshot 2025-03-24 at 12 13 07 AM

[!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

  1. Navigate to the directory that this docker compose file is in
  2. Run: docker compose down

Local Development

npm install
npm run dev

Updating

Portainer

  • Navigate to stacks
  • Click on the lab-dash stack
  • 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_yaml
  • docker compose down
  • docker compose pull
  • docker 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.

Open the Apps tab on your Unraid server Search Community Apps for Lab-Dash Review the template variables and paths Click Install

Requirements

optional: use privileged: true and network_mode: host for monitoring network usage stats.

Related apps

Details

Repository
ghcr.io/anthonygress/lab-dash:latest
Last Updated2026-07-15
First Seen2026-01-13

Runtime arguments

Web UI
http://[IP]:[PORT:2022]/
Network
bridge
Privileged
false

Template configuration

Web UI PortPorttcp

Container Port: 2022

Target
2022
Default
2022
Value
2022
Secret KeyVariable

Generate with 'openssl rand -base64 32'

Target
SECRET
Config PathPath

Path to the config folder

Target
/config
Default
/mnt/user/appdata/lab-dash/config
Value
/mnt/user/appdata/lab-dash/config
Uploads PathPath

Path to the uploads folder

Target
/app/public/uploads
Default
/mnt/user/appdata/lab-dash/uploads
Value
/mnt/user/appdata/lab-dash/uploads
System PathPathro

Path to the system folder

Target
/sys
Default
/sys
Value
/sys
Docker SocketPathro

Path to the Docker socket

Target
/var/run/docker.sock
Default
/var/run/docker.sock
Value
/var/run/docker.sock
PUIDVariable

User ID (Unraid: 99 = nobody)

Default
99
Value
99
PGIDVariable

Group ID (Unraid: 100 = users)

Default
100
Value
100