Files
vh 60367b307f servers: add new host dirs, refresh fleet snapshots, orientation doc
Bundles the inventory expansion since 2026-04-22:

- New host dirs (READMEs + ssh-target where dir name doesn't resolve):
    ana-nas, ana-wg, esh-vm-db, nh3-nas, pbs-ana, pbs-nh3.
- New PFI VM snapshots (registered + key-installed 2026-04-23):
    ana-filebot, pfi-ana-webhost, pfi-postgres, pfi-pteradactyl,
    pfi-tacticalrmm, sf-ana-container, sfsrv-ana (system + proxmox).
- servers/irv-ml1: ONBOARDING.md (the first-time setup notes from when
  the host was brought into the fleet) + ssh-target (10.100.79.3 over
  the WG tunnel — name doesn't DNS-resolve from this workstation).
- servers/{ana-ml2,pfi-pve,sf-r630}/README.md: updates to capture BMC
  IPs, the iDRAC vs OS hostname distinction (sf-r630 hardware =
  sfsrv-ana OS), and the ana-ml2 Supermicro BMC (10.250.250.50,
  distinct from the Dell R750xs iDRAC).
- configs/homepage/docker.yaml: irv-ml1-docker provider added so
  homepage auto-discovers irv-ml1's stacks over the WG tunnel.
- docs/orientation.md: narrative fleet overview written for fresh
  Claude sessions — sites, backup architecture, governing principles,
  gotchas, where-to-look guide. Pointed at from CLAUDE.md.
2026-04-24 21:56:46 -07:00

250 lines
6.0 KiB
Plaintext

===== HOST =====
Hostname: sf-ana-container.surefire.com
Date: 2026-04-21T16:57:55-07:00
Uptime: up 3 weeks, 6 days, 1 hour, 17 minutes
OS: Debian GNU/Linux 12 (bookworm)
Kernel: 6.1.0-21-amd64
Arch: x86_64
===== HARDWARE =====
CPU cores: 16
CPU model: QEMU Virtual CPU version 2.5+
MemTotal: 15.6 GB
MemAvailable: 14.4 GB
===== GPUS =====
nvidia-smi not present (no NVIDIA GPUs or driver not installed)
===== FILESYSTEMS (df) =====
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 250G 7.1G 231G 3% /
===== PERSISTENT MOUNTS (/etc/fstab, non-comment) =====
UUID=fcc00570-1585-41d4-8c64-8e5d59af40e0 / ext4 errors=remount-ro 0 1
UUID=35ad80f9-5952-489a-9178-575be588420c none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
===== TARGETED DATA PATHS =====
/opt (total: 8.3M)
total 12
drwxr-xr-x 3 root root 4096 2024-06-07 10:42 .
drwxr-xr-x 18 root root 4096 2024-06-07 10:35 ..
drwxrwxrwx 5 root root 4096 2024-06-07 10:46 docker
/opt/docker (total: 8.3M)
total 20
drwxrwxrwx 5 root root 4096 2024-06-07 10:46 .
drwxr-xr-x 3 root root 4096 2024-06-07 10:42 ..
drwxr-xr-x 6 vhoang vhoang 4096 2024-06-07 11:09 compose
drwxr-xr-x 3 vhoang vhoang 4096 2024-06-07 10:46 conf
drwxr-xr-x 2 vhoang vhoang 4096 2024-06-07 10:42 data
/opt/docker/compose (total: 8.3M)
total 24
drwxr-xr-x 6 vhoang vhoang 4096 2024-06-07 11:09 .
drwxrwxrwx 5 root root 4096 2024-06-07 10:46 ..
drwxr-xr-x 2 vhoang vhoang 4096 2024-06-07 10:43 dockge
drwxr-xr-x 4 root root 4096 2024-06-07 10:58 nginx-proxy
drwxr-xr-x 2 root root 4096 2024-06-07 10:46 traefik
drwxr-xr-x 3 root root 4096 2024-06-07 11:09 vaultwarden
/opt/docker/conf (total: 8.0K)
total 12
drwxr-xr-x 3 vhoang vhoang 4096 2024-06-07 10:46 .
drwxrwxrwx 5 root root 4096 2024-06-07 10:46 ..
drwxr-xr-x 2 root root 4096 2024-06-07 10:46 traefik-esh
/var/lib/docker (total: 4.0K)
/srv (total: 4.0K)
total 8
drwxr-xr-x 2 root root 4096 2023-11-09 17:45 .
drwxr-xr-x 18 root root 4096 2024-06-07 10:35 ..
===== DOCKER =====
Server:
docker daemon not reachable by current user
----- docker info -----
Containers:
----- running containers -----
----- all containers -----
----- networks -----
----- networks (external, non-default — worth knowing for compose external: true) -----
----- named volumes -----
----- compose projects currently running -----
(none)
===== COMPOSE FILES (/opt/docker/compose/) =====
>>> /opt/docker/compose/dockge/compose.yaml
services:
dockge:
image: louislam/dockge:latest
restart: unless-stopped
ports:
# Host Port : Container Port
- 5001:5001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- dockge_data:/app/data
- /opt/docker/compose:/opt/docker/compose
environment:
# Tell Dockge where is your stacks directory
- DOCKGE_STACKS_DIR=/opt/docker/compose
networks:
- tnet
volumes:
dockge_data: null
networks:
tnet:
name: traefik-net
external: true
>>> /opt/docker/compose/nginx-proxy/compose.yaml
version: "3.8"
services:
app:
image: jc21/nginx-proxy-manager:latest
restart: unless-stopped
ports:
# These ports are in format <host-port>:<container-port>
- 80:80 # Public HTTP Port
- 443:443 # Public HTTPS Port
- 81:81 # Admin Web Port
# Add any other Stream port you want to expose
# - '21:21' # FTP
# Uncomment the next line if you uncomment anything in the section
# environment:
# Uncomment this if you want to change the location of
# the SQLite DB file within the container
# DB_SQLITE_FILE: "/data/database.sqlite"
# Uncomment this if IPv6 is not enabled on your host
# DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
networks:
default:
external: true
name: nginx-proxy_default
>>> /opt/docker/compose/traefik/compose.yaml
#version: "3.3"
services:
traefik:
image: traefik:latest
container_name: traefik
command:
- --log.level=DEBUG
- --configFile=/etc/traefik/traefik.yml
- --api.insecure=true
- --providers.docker=true
- --providers.docker.exposedbydefault=false
- --entrypoints.web.address=:80
environment:
- AWS_ACCESS_KEY_ID=${AWS_KEY}
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET}
- AWS_REGION=${AWS_REGION}
- AWS_HOSTED_ZONE_ID=${AWS_ZONEID}
ports:
- 80:80
- 8380:8080
- 443:443
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /opt/docker/conf/traefik-esh:/etc/traefik
networks:
- tnet
env_file:
- .env
networks:
tnet:
name: traefik-net
external: true
>>> /opt/docker/compose/vaultwarden/compose.yaml
version: "3"
services:
vaultwarden:
image: vaultwarden/server:latest
container_name: vaultwarden
restart: unless-stopped
ports:
- 9445:80 #map any custom port to use (replace 8445 not 80)
volumes:
- ./bitwarden:/data:rw
environment:
- ADMIN_TOKEN=${ADMIN_TOKEN}
- WEBSOCKET_ENABLED=true
- SIGNUPS_ALLOWED=true
- DOMAIN=${DOMAIN}
- SMTP_HOST=surefire-com.mail.protection.outlook.com
- SMTP_FROM=vaultwarden@surefire.com
- SMTP_PORT=25
# - SMTP_USERNAME=relay@surefire.com
# - SMTP_PASSWORD=5Gb&237N@p%6
networks:
default:
external: true
name: nginx-proxy_default
===== CONFIG LAYOUT (/opt/docker/conf/ — top 200 entries) =====
/opt/docker/conf
/opt/docker/conf/traefik-esh
===== LISTENING PORTS =====
0.0.0.0:22
0.0.0.0:443
0.0.0.0:5001
0.0.0.0:80
0.0.0.0:8000
0.0.0.0:81
0.0.0.0:9443
0.0.0.0:9445
127.0.0.1:46567
[::]:22
[::]:443
[::]:5001
[::]:80
[::]:8000
[::]:81
[::]:9443
[::]:9445
===== MODEL / HUGGINGFACE CACHES =====
===== DOCKER-ADJACENT SYSTEMD SERVICES =====
containerd.service running
docker.service running
===== DONE =====
Paste the above back into the chat, or pass a path as argv[1] to save.