This repository contains the Docker Compose file along with my personal configuration for my homepage dashboard.
In my home network, I use multiple devices for various experiments and tests. This dashboard provides easy access to them and displays information at a glance.
The list of devices I use:
- My ISP router that provides internet access to my internal networks.
- Two Mikrotik routers, both behind NATs, which provide different subnets for various applications.
- An Intel NUC device that runs TrueNAS and also accommodates:
- Photoprism My photos/videos server
- Jellyfin My multimedia server
- Homepage Another access point to this dashboard (for mobile devices, etc.).
- Gitea My self-hosted Git server
- Distribution My self-hosted docker registry
- Pi-hole Optional on premises DNS server
- Another x86 machine that runs Proxmox. This machine is used for running:
- Portainer My go-to container manager.
- Kimai My project time-tracking tool.
- Nginx-proxy-manager To manage my nginx proxy.
- it-tools A collection of useful IT tools deployed locally.
- My homelab VMs for testing and experimentation.
- An Ollama server for on-premises LLM inference (see my modelfiles for more).
- Portainer My go-to container manager.
- A Raspberry Pi to run ARM-based experiments.
- A Jetson Nano SBC to accelerate code on NVIDIA GPUs during experiments related to embedded Linux edge devices.
- Another NUC device to leverage SGX or for experiments that need to be done on an x86 machine and cannot be performed on a VM for some reason (e.g., creating/running VMs using Oracle VirtualBox and Vagrant).
In order to run your own homepage dashboard, make sure you have first read the official documentation. This repository should only be used as a reference implementation. You can modify, change, and use the contents of this repository as needed without any notice.
Steps:
-
Make sure that you have docker or podman installed on your system.
-
Create your
.env
file to and modify it to include your secrets.cp .env.template .env
-
Modify services-template.yaml and bookmarks.yaml based on your needs.
-
Finally, run the container.
./RUNME