Add DECK server Docker Compose configurations
- tzzr-stack: PostgreSQL, PostgREST, Directus (unified DB stack) - services: Shlink, Filebrowser, Redis, Vaultwarden, ntfy PostgreSQL migrated from host to Docker with all services connected via tzzr-net network. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
75
infra/deck/services.docker-compose.yml
Normal file
75
infra/deck/services.docker-compose.yml
Normal file
@@ -0,0 +1,75 @@
|
|||||||
|
# Servicios TZZR - conectan a tzzr-postgres via tzzr-net
|
||||||
|
services:
|
||||||
|
filebrowser:
|
||||||
|
image: filebrowser/filebrowser:latest
|
||||||
|
container_name: filebrowser
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
- /home/user-data/mail/mailboxes:/srv/mailboxes:ro
|
||||||
|
- filebrowser_data:/database
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:8082:80"
|
||||||
|
environment:
|
||||||
|
FB_DATABASE: /database/filebrowser.db
|
||||||
|
FB_ROOT: /srv
|
||||||
|
FB_NOAUTH: "false"
|
||||||
|
|
||||||
|
shlink:
|
||||||
|
image: shlinkio/shlink:stable
|
||||||
|
container_name: shlink
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
DEFAULT_DOMAIN: shlink.tzzrdeck.me
|
||||||
|
IS_HTTPS_ENABLED: "true"
|
||||||
|
DB_DRIVER: postgres
|
||||||
|
DB_HOST: tzzr-postgres
|
||||||
|
DB_NAME: shlink
|
||||||
|
DB_USER: tzzr
|
||||||
|
DB_PASSWORD: TzzrDB-2024-Secure
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:8083:8080"
|
||||||
|
networks:
|
||||||
|
- tzzr-net
|
||||||
|
|
||||||
|
redis:
|
||||||
|
image: redis:alpine
|
||||||
|
container_name: redis
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:6379:6379"
|
||||||
|
volumes:
|
||||||
|
- redis_data:/data
|
||||||
|
|
||||||
|
vaultwarden:
|
||||||
|
image: vaultwarden/server:latest
|
||||||
|
container_name: vaultwarden
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
DOMAIN: "https://pass.tzzrdeck.me"
|
||||||
|
ADMIN_TOKEN: "TzzrVault-Admin-2024-SuperSecureToken"
|
||||||
|
SIGNUPS_ALLOWED: "false"
|
||||||
|
INVITATIONS_ALLOWED: "true"
|
||||||
|
volumes:
|
||||||
|
- vaultwarden_data:/data
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:8085:80"
|
||||||
|
|
||||||
|
ntfy:
|
||||||
|
image: binwiederhier/ntfy
|
||||||
|
container_name: ntfy
|
||||||
|
restart: unless-stopped
|
||||||
|
command: serve
|
||||||
|
ports:
|
||||||
|
- "0.0.0.0:8080:80"
|
||||||
|
volumes:
|
||||||
|
- ntfy_data:/var/lib/ntfy
|
||||||
|
|
||||||
|
networks:
|
||||||
|
tzzr-net:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
filebrowser_data:
|
||||||
|
redis_data:
|
||||||
|
vaultwarden_data:
|
||||||
|
ntfy_data:
|
||||||
78
infra/deck/tzzr-stack.docker-compose.yml
Normal file
78
infra/deck/tzzr-stack.docker-compose.yml
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
services:
|
||||||
|
postgres:
|
||||||
|
image: postgres:15-alpine
|
||||||
|
container_name: tzzr-postgres
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
POSTGRES_USER: postgres
|
||||||
|
POSTGRES_PASSWORD: TzzrPostgres-2024
|
||||||
|
POSTGRES_DB: postgres
|
||||||
|
volumes:
|
||||||
|
- postgres_data:/var/lib/postgresql/data
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:5432:5432"
|
||||||
|
networks:
|
||||||
|
- tzzr-net
|
||||||
|
healthcheck:
|
||||||
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
||||||
|
interval: 10s
|
||||||
|
timeout: 5s
|
||||||
|
retries: 5
|
||||||
|
|
||||||
|
postgrest:
|
||||||
|
image: postgrest/postgrest:latest
|
||||||
|
container_name: tzzr-postgrest
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
PGRST_DB_URI: postgres://authenticator:postgrest_deck_2024@postgres:5432/tzzr
|
||||||
|
PGRST_DB_SCHEMAS: public,tzzr_core_hst,tzzr_core_itm_base,tzzr_core_secretaria,tzzr_core_produccion,mail_manager,context_manager
|
||||||
|
PGRST_DB_ANON_ROLE: web_anon
|
||||||
|
PGRST_SERVER_PORT: 3000
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:3000:3000"
|
||||||
|
networks:
|
||||||
|
- tzzr-net
|
||||||
|
|
||||||
|
directus:
|
||||||
|
image: directus/directus:11
|
||||||
|
container_name: tzzr-directus
|
||||||
|
restart: unless-stopped
|
||||||
|
depends_on:
|
||||||
|
postgres:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
DB_CLIENT: pg
|
||||||
|
DB_HOST: postgres
|
||||||
|
DB_PORT: 5432
|
||||||
|
DB_DATABASE: tzzr
|
||||||
|
DB_USER: tzzr
|
||||||
|
DB_PASSWORD: TzzrDB-2024-Secure
|
||||||
|
DB_SEARCH_PATH: tzzr_core_hst,tzzr_core_itm_base,tzzr_core_secretaria,tzzr_core_oracle,tzzr_core_contabilidad,tzzr_core_administracion,tzzr_core_produccion,public
|
||||||
|
KEY: d8f4a2e1b5c9f0a3e6d7c8b9a0e1f2d3
|
||||||
|
SECRET: a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8
|
||||||
|
ADMIN_EMAIL: admin@tzzrdeck.me
|
||||||
|
ADMIN_PASSWORD: TzzrAdmin-2024
|
||||||
|
PUBLIC_URL: https://directus.tzzrdeck.me
|
||||||
|
CORS_ENABLED: "true"
|
||||||
|
CORS_ORIGIN: "true"
|
||||||
|
CONTENT_SECURITY_POLICY_DIRECTIVES__IMG_SRC: "'self' data: blob: https://tzrtech.org https://atc.tzzrdeck.me https://tzzrdeck.me"
|
||||||
|
ports:
|
||||||
|
- "127.0.0.1:8055:8055"
|
||||||
|
volumes:
|
||||||
|
- directus_uploads:/directus/uploads
|
||||||
|
- directus_extensions:/directus/extensions
|
||||||
|
networks:
|
||||||
|
- tzzr-net
|
||||||
|
|
||||||
|
networks:
|
||||||
|
tzzr-net:
|
||||||
|
name: tzzr-net
|
||||||
|
driver: bridge
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
postgres_data:
|
||||||
|
directus_uploads:
|
||||||
|
directus_extensions:
|
||||||
Reference in New Issue
Block a user