Add dev/prod environments with TrueNAS Docker production deploy.

Split PostgreSQL into gallery_dev and gallery_prod, add Docker/Gitea deploy tooling,
SMB image sync, pgAdmin split script, dev:web on Keenetic :5173, and operator docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Danila Khodjaef
2026-07-04 15:15:19 +03:00
co-authored by Cursor
parent 02d238b043
commit 2edf577faf
34 changed files with 1742 additions and 80 deletions
+34
View File
@@ -0,0 +1,34 @@
# Paste into TrueNAS: Apps → Custom App → Install via Docker Compose
#
# BEFORE deploy:
# 1. npm run docker:publish on dev PC (image must exist in Gitea)
# 2. Replace YOUR_POSTGRES_PASSWORD below
# 3. Gitea pull credentials on TrueNAS (read:package token)
# 4. mkdir + chown image dir; npm run images:sync-to-prod
# 5. Keenetic: gallery.mysuperlab.netcraze.pro → 192.168.10.122:5173, protocol http
#
# See infra/docker/DEPLOY-truenas.md and Documentation/environments.md
services:
web:
image: gitea.mysuperlab.netcraze.pro/danilka/gallery-web:latest
container_name: gallery-web
restart: unless-stopped
pull_policy: always
ports:
- "5173:5173"
environment:
NODE_ENV: production
PORT: "5173"
HOST: "0.0.0.0"
DB_HOST: "192.168.10.122"
DB_PORT: "5432"
DB_USER: gallery
DB_PASSWORD: gallery
DB_NAME: gallery_prod
PUBLIC_URL: https://gallery.mysuperlab.netcraze.pro
TRUST_PROXY: "true"
IMAGE_DIR: /app/data/images
volumes:
- /mnt/BasePool/Applications/Gallery/data/images:/app/data/images
extra_hosts:
- "host.docker.internal:host-gateway"