feat: Add Nextcloud service to homelab setup

This commit is contained in:
2025-11-15 23:36:26 +02:00
parent 7ad966014e
commit 26f0d7f5f4
4 changed files with 48 additions and 6 deletions

View File

@@ -6,6 +6,7 @@ This repository contains the configuration for my personal homelab stack, includ
|---------|-------------|------------|
| **Vaultwarden** | Self-hosted password manager (Bitwarden-compatible) | `https://vault.example.com` |
| **2FAuth** | Self-hosted two-factor authentication manager | `https://auth.example.com` |
| **Nextcloud** | Self-hosted file hosting service | `https://storage.example.com` |
| **Caddy** | Reverse proxy with automatic HTTPS via DuckDNS (DNS-01) | *No direct UI* |
| **Portainer** | Makes Docker life 100x easier (visual container manager) | `https://<SERVER_IP>:9443` |
| **Uptime Kuma** | Monitors homelab/domain uptime | `http://<SERVER_IP>:3001` |
@@ -33,9 +34,11 @@ Before deploying, you **must** replace all placeholder values in the config file
- `https://vault.example.com` and `vault.example.com` → your Vaultwarden domain
- `https://auth.example.com` and `auth.example.com` → your 2FAuth domain
- `https://storage.example.com` and `storage.example.com` → your Nextcloud domain
- `admin@example.com` → your email address (used by Caddy / Lets Encrypt and 2FAuth)
- `TOKEN` → your DuckDNS token
- `SomeRandomStringOf32CharsExactly` → a **32-character** random string for `APP_KEY`
- `NEXTCLOUD_ADMIN_USER` and `NEXTCLOUD_ADMIN_PASSWORD` → your Nextcloud admin credentials
## DuckDNS Dynamic DNS Updater
@@ -68,10 +71,11 @@ This ensures your DuckDNS domains always point to your current IP.
The **homelab/** folder contains:
- `compose.yml` runs Vaultwarden, 2FAuth, and Caddy
- `compose.yml` spins up Docker containers
- `Caddyfile` defines routing for:
- `https://<vault-domain>` → Vaultwarden
- `https://<auth-domain>` → 2FAuth
- `https://<storage-domain>` → Nextcloud
### Start the stack
@@ -79,6 +83,7 @@ The **homelab/** folder contains:
cd homelab
mkdir -p services/vaultwarden \
services/2fauth \
services/nextcloud \
services/uptimekuma \
services/portainer \
services/caddy/config \
@@ -99,9 +104,7 @@ docker compose down
### View logs
```bash
docker logs caddy -f
docker logs vaultwarden -f
docker logs 2fauth -f
docker logs <container> -f
```
### Auto-start on system boot
@@ -132,7 +135,7 @@ Then restart the containers:
```bash
cd homelab
docker compose restart vaultwarden 2fauth portainer dozzle uptime-kuma netdata
docker compose restart vaultwarden 2fauth nextcloud portainer dozzle uptime-kuma netdata
```
## Updating