Document VM 102 security stack and update IPs to 192.168.1.105.
Add ARCHITECTURE.md and HOMELAB_IPS.md, refresh inventory and app configs for Postgres, Neo4j, Homelab Command, pgAdmin, Homarr, and Homepage links. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -4007,7 +4007,7 @@
|
||||
{
|
||||
"id": "1446d0cd-5449-4e41-b68b-15b4052f6325",
|
||||
"name": "Neo4j Browser",
|
||||
"url": "http://192.168.1.211:49154",
|
||||
"url": "http://192.168.1.105:49154",
|
||||
"appearance": {
|
||||
"iconUrl": "https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/png/neo4j.png",
|
||||
"appNameStatus": "normal",
|
||||
@@ -4028,7 +4028,7 @@
|
||||
},
|
||||
"behaviour": {
|
||||
"isOpeningNewTab": true,
|
||||
"externalUrl": "http://192.168.1.211:49154"
|
||||
"externalUrl": "http://192.168.1.105:49154"
|
||||
},
|
||||
"area": {
|
||||
"type": "category",
|
||||
@@ -4066,7 +4066,7 @@
|
||||
{
|
||||
"id": "039d3bf6-bf8a-4944-a8b1-7cc886daebe7",
|
||||
"name": "HA Voice Ctrl",
|
||||
"url": "http://192.168.1.211:8765",
|
||||
"url": "http://192.168.1.105:8765",
|
||||
"appearance": {
|
||||
"iconUrl": "https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/png/home-assistant.png",
|
||||
"appNameStatus": "normal",
|
||||
@@ -4087,7 +4087,7 @@
|
||||
},
|
||||
"behaviour": {
|
||||
"isOpeningNewTab": true,
|
||||
"externalUrl": "http://192.168.1.211:8765"
|
||||
"externalUrl": "http://192.168.1.105:8765"
|
||||
},
|
||||
"area": {
|
||||
"type": "category",
|
||||
@@ -5426,7 +5426,7 @@
|
||||
{
|
||||
"id": "9be593d8-a4b4-460a-8998-6cafefb4271e",
|
||||
"name": "Home Control",
|
||||
"url": "http://192.168.1.211:8765/dashboard#live",
|
||||
"url": "http://192.168.1.105:8765/dashboard#live",
|
||||
"appearance": {
|
||||
"iconUrl": "https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/svg/crafty-controller.svg",
|
||||
"appNameStatus": "normal",
|
||||
@@ -5447,7 +5447,7 @@
|
||||
},
|
||||
"behaviour": {
|
||||
"isOpeningNewTab": true,
|
||||
"externalUrl": "http://192.168.1.211:8765/dashboard#live"
|
||||
"externalUrl": "http://192.168.1.105:8765/dashboard#live"
|
||||
},
|
||||
"area": {
|
||||
"type": "category",
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
TELEGRAM_BOT_TOKEN=
|
||||
TELEGRAM_CHAT_ID=
|
||||
|
||||
# PostgreSQL — observaties voor dashboard http://192.168.1.211:8765
|
||||
PG_HOST=192.168.1.211
|
||||
# PostgreSQL — observaties voor dashboard http://192.168.1.105:8765
|
||||
PG_HOST=192.168.1.105
|
||||
PG_PORT=5433
|
||||
PG_USER=mo
|
||||
PG_PASSWORD=
|
||||
|
||||
@@ -52,12 +52,13 @@ Voeg in `targets.yaml` services toe. Voor diepere agent-gedrag later:
|
||||
|
||||
Alle observaties gaan naar **PostgreSQL** (`agent.observation_runs`, `agent.findings`, `agent.incidents`).
|
||||
|
||||
Bekijk ze in **Homelab Command**: http://192.168.1.211:8765/dashboard#security (tab Security → Home Security Agent).
|
||||
Bekijk ze in **Homelab Command**: http://192.168.1.105:8765/dashboard#security (tab Security → Home Security Agent).
|
||||
|
||||
Eénmalig schema:
|
||||
|
||||
```bash
|
||||
docker exec -i postgres-homelab psql -U mo -d homelab < migrations/004_home_agent_observations.sql
|
||||
# Postgres draait op VM 102: ssh mo@192.168.1.105 → docker exec postgres-homelab psql ...
|
||||
```
|
||||
|
||||
Of vanuit homelab-command: `scripts/apply_mesh_migrations.sh` (past alle `migrations/*.sql` toe).
|
||||
|
||||
@@ -25,7 +25,7 @@ def _connect():
|
||||
if url:
|
||||
return psycopg2.connect(url)
|
||||
return psycopg2.connect(
|
||||
host=os.getenv("PG_HOST", "192.168.1.211"),
|
||||
host=os.getenv("PG_HOST", "192.168.1.105"),
|
||||
port=int(os.getenv("PG_PORT", "5433")),
|
||||
user=os.getenv("PG_USER", "mo"),
|
||||
password=os.getenv("PG_PASSWORD", ""),
|
||||
|
||||
@@ -34,7 +34,7 @@ services:
|
||||
url: https://192.168.1.185:30058
|
||||
insecure_tls: true
|
||||
- name: Homelab Command
|
||||
url: http://192.168.1.211:8765
|
||||
url: http://192.168.1.105:8765
|
||||
|
||||
# Optioneel: bekende apparaten op LAN (ARP/ping — geen externe SIEM)
|
||||
lan_watch:
|
||||
|
||||
@@ -8,7 +8,7 @@ services:
|
||||
env_file:
|
||||
- .env
|
||||
environment:
|
||||
PG_HOST: ${PG_HOST:-192.168.1.211}
|
||||
PG_HOST: ${PG_HOST:-192.168.1.105}
|
||||
PG_PORT: ${PG_PORT:-5433}
|
||||
PG_USER: ${PG_USER:-mo}
|
||||
PG_PASSWORD: ${PG_PASSWORD:-}
|
||||
|
||||
@@ -207,9 +207,9 @@
|
||||
|
||||
- HA Voice Ctrl:
|
||||
icon: home-assistant.png
|
||||
href: http://192.168.1.211:8765
|
||||
href: http://192.168.1.105:8765
|
||||
description: HA Voice Ctrl
|
||||
siteMonitor: http://192.168.1.211:8765
|
||||
siteMonitor: http://192.168.1.105:8765
|
||||
statusStyle: dot
|
||||
|
||||
- Productivity:
|
||||
@@ -302,9 +302,9 @@
|
||||
|
||||
- Neo4j Browser:
|
||||
icon: neo4j.png
|
||||
href: http://192.168.1.211:49154
|
||||
href: http://192.168.1.105:49154
|
||||
description: Neo4j Browser
|
||||
siteMonitor: http://192.168.1.211:49154
|
||||
siteMonitor: http://192.168.1.105:49154
|
||||
statusStyle: dot
|
||||
|
||||
- OnlyOffice:
|
||||
@@ -478,9 +478,9 @@
|
||||
|
||||
- Home Control:
|
||||
icon: mdi-server-network-#14b8a6
|
||||
href: http://192.168.1.211:8765/dashboard#live
|
||||
href: http://192.168.1.105:8765/dashboard#live
|
||||
description: Home Control
|
||||
siteMonitor: http://192.168.1.211:8765
|
||||
siteMonitor: http://192.168.1.105:8765
|
||||
statusStyle: dot
|
||||
|
||||
- Web Design:
|
||||
|
||||
@@ -14,7 +14,7 @@ services:
|
||||
POSTGRES_DATABASE: ${JOPLIN_DB:-joplin}
|
||||
POSTGRES_USER: ${POSTGRES_USER:-mo}
|
||||
POSTGRES_PORT: 5432
|
||||
POSTGRES_HOST: postgres-homelab
|
||||
POSTGRES_HOST: ${POSTGRES_HOST:-192.168.1.105}
|
||||
depends_on:
|
||||
- joplin-db
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ services:
|
||||
ports:
|
||||
- "${POSTGRES_EXPORTER_PORT:-9187}:9187"
|
||||
environment:
|
||||
DATA_SOURCE_NAME: "postgresql://${PG_USER:-mo}:${PG_PASSWORD}@postgres-homelab:5432/${PG_DATABASE:-homelab}?sslmode=disable"
|
||||
DATA_SOURCE_NAME: "postgresql://${PG_USER:-mo}:${PG_PASSWORD}@${PG_HOST:-192.168.1.105}:${PG_PORT:-5433}/${PG_DATABASE:-homelab}?sslmode=disable"
|
||||
networks:
|
||||
- homelab-monitor
|
||||
|
||||
|
||||
@@ -12,14 +12,14 @@ scrape_configs:
|
||||
static_configs:
|
||||
- targets: ["postgres-exporter-homelab:9187"]
|
||||
labels:
|
||||
instance: postgres-homelab
|
||||
instance: postgres-vm102
|
||||
|
||||
# Neo4j 4.4+ enterprise metrics.prometheus.enabled → endpoint op poort 2004
|
||||
- job_name: neo4j
|
||||
scrape_interval: 30s
|
||||
metrics_path: /metrics
|
||||
static_configs:
|
||||
- targets: ["neo4j:2004"]
|
||||
- targets: ["192.168.1.105:2004"]
|
||||
labels:
|
||||
instance: neo4j
|
||||
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| **Productie** | **192.168.1.105** — Bolt :49153, Browser :49154 (`~/neo4j/` op VM 102) |
|
||||
| **NAS compose** | Oude map; stack verplaatst naar VM 102 |
|
||||
| **Poort** | 49153 |
|
||||
| **Start** | `docker compose up -d` |
|
||||
|
||||
Zie [apps/README.md](../README.md) en [RESTORE.md](../../RESTORE.md).
|
||||
|
||||
@@ -22,6 +22,7 @@ services:
|
||||
# Masquerade root URL voor nginx reverse proxy
|
||||
- PGADMIN_CONFIG_SERVER_MODE=True
|
||||
- PGADMIN_CONFIG_MASTER_PASSWORD_REQUIRED=False
|
||||
- PGADMIN_SERVER_JSON_FILE=/pgadmin4/servers.json
|
||||
|
||||
volumes:
|
||||
- pgadmin-data:/var/lib/pgadmin # persistentie: server lijst, instellingen
|
||||
|
||||
@@ -1,8 +1,23 @@
|
||||
{
|
||||
"Servers": {
|
||||
"1": {
|
||||
"Name": "Homelab PostgreSQL",
|
||||
"Group": "Servers",
|
||||
"Name": "Homelab PostgreSQL (VM102)",
|
||||
"Group": "Homelab",
|
||||
"Host": "192.168.1.105",
|
||||
"Port": 5433,
|
||||
"MaintenanceDB": "homelab",
|
||||
"Username": "mo",
|
||||
"Password": "WaQTUw2t",
|
||||
"SSLMode": "prefer",
|
||||
"PassFile": "",
|
||||
"SSLCert": "",
|
||||
"SSLKey": "",
|
||||
"SSLRootCert": "",
|
||||
"Comment": "Proxmox VM 102 Postgress — productie homelab DB"
|
||||
},
|
||||
"2": {
|
||||
"Name": "Homelab PostgreSQL NAS backup",
|
||||
"Group": "Homelab",
|
||||
"Host": "192.168.1.211",
|
||||
"Port": 5433,
|
||||
"MaintenanceDB": "homelab",
|
||||
@@ -13,7 +28,7 @@
|
||||
"SSLCert": "",
|
||||
"SSLKey": "",
|
||||
"SSLRootCert": "",
|
||||
"Comment": "Synology NAS — Homelab dashboard database"
|
||||
"Comment": "Oude NAS-kopie — rollback / vergelijken"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| **Productie** | **192.168.1.105:5433** (VM 102, `~/homelab-postgres/`) |
|
||||
| **NAS backup** | 192.168.1.211:5433 (`docker compose up -d` in deze map) |
|
||||
| **Poort** | 5433 |
|
||||
| **Start** | `docker compose up -d` |
|
||||
|
||||
Zie [apps/README.md](../README.md) en [RESTORE.md](../../RESTORE.md).
|
||||
|
||||
Reference in New Issue
Block a user