Self-hosted homelab documentation, topology platform with encrypted configuration backups.
3.2K
Labby is a self-hosted homelab mapping and documentation platform for servers, virtual machines, LXC containers, networks, racks, applications, links, credentials and other infrastructure resources.
It includes topology and IP views, browser-based SSH console access, persistent Docker storage and encrypted configuration backups to local or directly configured SMB storage.
docker run -d \
--name labby \
-p 8080:80 \
-v labby-data:/data \
--restart unless-stopped \
techbygiusi/labby:latest
Open Labby in your browser:
http://localhost:8080
services:
labby:
image: techbygiusi/labby:latest
container_name: labby
ports:
- "8080:80"
volumes:
- labby-data:/data
restart: unless-stopped
volumes:
labby-data:
Start Labby:
docker compose up -d
Labby stores its application data, configuration, encrypted SMB credentials and backup encryption key inside:
/data
The persistent Docker volume must remain attached when the container is updated or recreated:
volumes:
- labby-data:/data
Do not remove the volume unless you intentionally want to delete all Labby data.
Avoid using:
docker compose down -v
The -v option removes the persistent volume and may permanently delete the Labby configuration, resources, credentials and backup encryption key.
Backup settings are available in Labby under:
Config → Backup Config
Labby supports the following backup destinations:
SMB destinations are configured directly through the Labby interface.
The following SMB settings can be configured in Labby:
Use the built-in connection test before enabling scheduled backups. The test verifies authentication and write access to the selected SMB destination.
The SMB user should have permission to:
The SMB password is stored encrypted inside the persistent /data volume.
The password is not:
Backups can be configured to run:
A retention limit can be configured to automatically remove older backups.
Labby also supports:
The backup encryption key is stored inside the persistent data volume at:
/data/backup.key
This key is required to restore encrypted backups.
When migrating Labby to another system, preserve the complete /data volume or securely copy the backup encryption key together with the backup files.
Losing both the Labby data volume and the encryption key may make encrypted backups impossible to restore.
Pull the newest image and recreate the container:
docker compose pull
docker compose up -d --force-recreate
Optionally remove unused Docker images:
docker image prune -f
Complete update command:
docker compose pull && docker compose up -d --force-recreate && docker image prune -f
The persistent labby-data volume remains unchanged during the update.
Use latest to automatically follow the newest stable release:
image: techbygiusi/labby:latest
For controlled production deployments, use an exact version:
image: techbygiusi/labby:1.0.0
Update the version number manually when you are ready to deploy a newer release.
The following example publishes version 1.0.0 for AMD64 and ARM64:
docker buildx build \
--pull \
--platform linux/amd64,linux/arm64 \
-t techbygiusi/labby:1.0.0 \
-t techbygiusi/labby:1.0 \
-t techbygiusi/labby:1 \
-t techbygiusi/labby:latest \
--push .
For the next patch release, update the exact version while keeping the rolling tags:
docker buildx build \
--pull \
--platform linux/amd64,linux/arm64 \
-t techbygiusi/labby:1.0.1 \
-t techbygiusi/labby:1.0 \
-t techbygiusi/labby:1 \
-t techbygiusi/labby:latest \
--push .
Verify the published image:
docker buildx imagetools inspect techbygiusi/labby:latest
Demo website:
https://my-labby.com
GitHub:
https://github.com/techbygiusi/Labby
Docker image:
techbygiusi/labby:latest
Labby is licensed under the GNU Affero General Public License v3.0.
Update Docker Hub documentation for direct SMB backups and versioned image releases
Content type
Image
Digest
sha256:635a1a78c…
Size
78.1 MB
Last updated
about 1 month ago
docker pull techbygiusi/labby