|
1 | 1 | # Homepage
|
2 | 2 |
|
3 |
| -This repository contains the docker compose file, along with my personal configuration for my [homepage](https://gethomepage.dev/) dashboard. |
| 3 | +This repository contains the [Docker Compose](./docker-compose.yml) file along with my personal [configuration](./config/) for my [homepage](https://gethomepage.dev/) dashboard. |
4 | 4 |
|
5 | 5 | 
|
6 | 6 |
|
7 |
| -## Execution |
| 7 | +## Services |
| 8 | +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. |
8 | 9 |
|
9 |
| -In order to have access to the homepage |
| 10 | +The list of devices I use: |
| 11 | +* My ISP router that provides internet access to my internal networks. |
| 12 | +* Two [Mikrotik](https://mikrotik.com/) routers, both behind NATs, which provide different subnets for various applications. |
| 13 | +* An Intel NUC device that runs [TrueNAS](https://www.truenas.com/) and also accommodates: |
| 14 | + - [Photoprism](https://www.photoprism.app/) My photos/videos server |
| 15 | + - [Jellyfin](https://jellyfin.org/) My multimedia server |
| 16 | + - [Homepage](https://gethomepage.dev/) Another access point to this dashboard (for mobile devices, etc.). |
| 17 | + - [Gitea](https://about.gitea.com/) My self-hosted Git server |
| 18 | + - [Distribution](https://distribution.github.io/distribution/) My self-hosted docker registry |
| 19 | + - [Pi-hole](https://pi-hole.net/) Optional on premises DNS server |
| 20 | +* Another x86 machine that runs [Proxmox](https://www.proxmox.com/en/). This machine is used for running: |
| 21 | + - [Portainer](https://www.portainer.io/) My go-to container manager. |
| 22 | + - [Kimai](https://www.kimai.org/) My project time-tracking tool. |
| 23 | + - [Nginx-proxy-manager](https://nginxproxymanager.com/) To manage my nginx proxy. |
| 24 | + - [it-tools](https://it-tools.tech/) A collection of useful IT tools deployed locally. |
| 25 | + - My homelab VMs for testing and experimentation. |
| 26 | + - An [Ollama](https://ollama.com/) server for on-premises LLM inference (see [my modelfiles for more](https://github.com/CSpyridakis/modelfiles)). |
| 27 | +* A Raspberry Pi to run ARM-based experiments. |
| 28 | +* A Jetson Nano SBC to accelerate code on NVIDIA GPUs during experiments related to embedded Linux edge devices. |
| 29 | +* 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](https://www.virtualbox.org/) and [Vagrant](https://www.vagrantup.com/)). |
10 | 30 |
|
11 |
| -## Services |
12 |
| -* An Intel NUC device that runs [TrueNAS]() and accomodates also: |
13 |
| - - [Photoprism]() |
14 |
| - - [Jellyfin]() |
15 |
| - - [Homepage]() |
16 |
| - - [Gitea]() |
17 |
| - - [Distribution]() |
18 |
| - - [Pi-hole]() |
19 |
| -* Another x86 Machine that runs [Proxmox](), this machine is used for |
20 |
| - - [Portainer]() For my |
21 |
| - - My homelab VMs for testing and experimentation. |
| 31 | +## Usage |
| 32 | +In order to run your own homepage dashboard, make sure you have first read the official [documentation](https://gethomepage.dev/). 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. |
| 33 | + |
| 34 | +Steps: |
| 35 | + |
| 36 | +1. Make sure that you have [docker](https://www.docker.com/) or [podman](https://podman.io/) installed on your system. |
| 37 | + |
| 38 | +2. Create your `.env` file to and modify it to include your secrets. |
| 39 | + ``` |
| 40 | + cp .env.template .env |
| 41 | + ``` |
| 42 | +
|
| 43 | +3. Modify [services-template.yaml](./config/services-template.yaml) and [bookmarks.yaml](./config/bookmarks.yaml) based on your needs. |
| 44 | +
|
| 45 | +4. Finally, run the container. |
| 46 | + ``` |
| 47 | + ./RUNME |
| 48 | + ``` |
0 commit comments