From 8b07360873f18c684ac7f7bbdef30a91c9eb112a Mon Sep 17 00:00:00 2001 From: traveler Date: Mon, 6 Apr 2026 20:24:52 -0500 Subject: [PATCH] docs(gremlin): update homepage --- Netgrimoire/Services/homepage/homepage.md | 95 ++++++++++++++--------- 1 file changed, 59 insertions(+), 36 deletions(-) diff --git a/Netgrimoire/Services/homepage/homepage.md b/Netgrimoire/Services/homepage/homepage.md index 18ec8b7..afca5f6 100644 --- a/Netgrimoire/Services/homepage/homepage.md +++ b/Netgrimoire/Services/homepage/homepage.md @@ -1,50 +1,63 @@ # homepage Stack -description: NetGrimoire Homepage Service +description: NetGrimoire homepage stack with Docker Swarm configuration. -published: true -date: 2026-04-07T00:49:28.119Z -tags: docker,swarm,homepage,netgrimoire -editor: markdown -dateCreated: 2026-04-07T00:49:28.119Z --- ## Overview +The `homepage` stack is responsible for hosting the NetGrimoire homepage, which provides a user-friendly interface for accessing various services. The primary services included in this stack are: -The homepage stack in NetGrimoire provides a central point for accessing the application's homepage, featuring the Caddy reverse proxy and Uptime Kuma monitoring. This service is responsible for hosting the website at `http://homepage:3000` and serves as an entry point to the application. +* Dockerized `gethomepage/homepage`:latest image providing the web application. +* Reverse proxy and authentication setup using Caddy and Authentik. +* Monitoring and logging integration with Uptime Kuma. --- ## Architecture -| Service | Image | Port | Role | -|---------|-------|------|-----| -- **Host:** docker4 -- **Network:** netgrimoire -- **Exposed via:** homepage.netgrimoire.com, glancenetgrimoire.com (via Caddy) -- **Homepage group:** homepage +| Service | Image | Port | Role | +|---------|-------|------|--------------------------| +| docker4 | | | Host | +| netgrimoire| | | Network | +| Caddy | | | Exposed via: | +| | ghcr.io/gethomepage/homepage:latest | 3000 | Homepage group: homepage.group | --- ## Build & Configuration ### Prerequisites -No specific prerequisites are required for this stack. +You need to ensure that the following Docker volumes are created and accessible: + +```bash +mkdir -p /DockerVol/homepage/config +mkdir -p /DockerVol/homepage/images +``` + +Additionally, you should set up your environment variables using secrets. This can be done by running the following command: + +```bash +generate: openssl rand -hex 32 +``` ### Volume Setup ```bash -mkdir -p /DockerVol/homepage/config -chown -R docker:docker /DockerVol/homepage/config +chown -R 1001:1001 /DockerVol/homepage/config +chown -R 1001:1001 /DockerVol/homepage/images ``` ### Environment Variables ```bash # generate: openssl rand -hex 32 HOMEPAGE_ALLOWED_HOSTS=homepage.netgrimoire.com,glance.netgrimoire.com +HOMEPAGE_VAR_MAILCOW_KEY=A63910-D8FDE0-881C97-E5EE2B-232847 +HOMEPAGE_VAR_DNS_TOKEN=2f6c5b9b331c2b84 +HOMEPAGE_VAR_OPNSENSE_USER=xSt1B1fndmzFQ3x823cKO2/H8/oZOC2BcA0wgtetIwR1CbtRAuHUQoWkiwjskqNkFFJwSaBPi46Vvz6z +HOMEPAGE_VAR_OPNSENSE_PASS=8OBBLQWxz6Wdz/NOFkhmg/0kzAIf2gXCFpFOLbcLmZ83lRyBhk4Ev593omDLYm/Av+AC+mDPlA8Wzkfz +HOMEPAGE_VAR_IMMICH_KEY=yawqFGqMOQnGIXLmYr2daygAFFIHMaTnqOWNwZhm8SU ``` ### Deploy ```bash -cd services/swarm/stack/homepage set -a && source .env && set +a docker stack config --compose-file homepage-stack.yml > resolved.yml docker stack deploy --compose-file resolved.yml homepage @@ -53,50 +66,60 @@ docker stack services homepage ``` ### First Run +After the initial deployment, you need to update the `resolved.yml` file with any necessary configurations. This can be done by running the following command: -After the initial deployment, ensure that all volumes are properly mounted and configured. +```bash +./deploy.sh +``` --- ## User Guide -### Accessing homepage +### Accessing Homepage | Service | URL | Purpose | |---------|-----|---------| -- **Caddy Reverse Proxy**: http://homepage:3056 +Caddy | http://homepage:3000 | Reverse proxy and authentication | ### Primary Use Cases -To access the application's homepage, navigate to `http://homepage:3056` or `https://homepage.netgrimoire.com`. +This stack is used to host the NetGrimoire homepage, providing a user-friendly interface for accessing various services. ### NetGrimoire Integrations -This service connects to other services via environment variables and labels. Specifically, it integrates with Caddy for reverse proxying and Uptime Kuma for monitoring. +This stack connects to other services such as Authentik and Uptime Kuma. --- ## Operations ### Monitoring +Monitoring is performed using Uptime Kuma. You can view the monitoring status by running: + ```bash docker stack services homepage -docker-compose -f /etc/kubernetes/adminstack/up kuma.yml logs -f +``` + +And logs for individual services with: + +```bash +docker service logs ``` ### Backups -Critical: `/DockerVol/homepage/config/secrets.env` contains sensitive data. Reconstructable volumes are mounted on Docker Vol. +Critical backup paths are located at `/DockerVol/homepage/config` and `/var/lib/docker/volumes/homepage.config`. ### Restore +To restore this stack, you can run the following command: + ```bash -cd services/swarm/stack/homepage ./deploy.sh ``` --- ## Common Failures -| Symptom | Cause | Fix | -|---------|-------|-----| -- Caddy Reverse Proxy not working | Insufficient configuration or missing environment variables. | Review and update Caddy configuration and environment variables. -- Uptime Kuma monitoring issues | Inconsistent Docker Swarm stack deployment or misconfigured labels. | Verify that the `kuma.*` labels are correctly applied to the service. +| Failure Mode | Symptoms | Cause | Fix | +|-------------|----------|------|-----| +| 1 | | | | --- @@ -104,17 +127,17 @@ cd services/swarm/stack/homepage | Date | Commit | Summary | |------|--------|---------| -- 2026-04-06 | e6f86e24 | Initial documentation and migration to swarm configuration. | -- 2026-04-06 | 5db4fdd9 | Updated Caddy reverse proxy configuration and environment variables. | -- 2026-03-22 | c4ac5abf | Added Uptime Kuma monitoring integration. | -- 2026-01-20 | 061ab0c2 | Improved volume setup and mount permissions. | -- 2026-01-10 | 1a374911 | Initial commit with swarm configuration for the homepage stack. | +| 2026-04-06 | fb7d3f0d | | +| 2026-04-06 | e6f86e24 | | +| 2026-04-06 | 5db4fdd9 | | +| 2026-03-22 | c4ac5abf | | +| 2026-01-20 | 061ab0c2 | | - + --- ## Notes -- Generated by Gremlin on 2026-04-07T00:49:28.119Z +- Generated by Gremlin on 2026-04-07T01:23:19.980Z - Source: swarm/homepage.yaml - Review User Guide and Changelog sections \ No newline at end of file