Files
mortgagefi-helper/docker-compose.yml

76 lines
2.1 KiB
YAML

services:
ntfy:
image: binwiederhier/ntfy
container_name: ntfy
platform: linux/amd64
command: ["serve"]
env_file: .env.local
environment:
- TZ=Europe/Zurich
# ntfy email via SMTP (Gmail App Password or your SMTP)
- NTFY_BASE_URL=${NTFY_BASE_URL:-https://web.windsurf-project.orb.local}
- NTFY_SMTP_SENDER_ADDR=${NTFY_SMTP_SENDER_ADDR:-smtp.gmail.com:587}
- NTFY_SMTP_SENDER_USER=${NTFY_SMTP_SENDER_USER:-your.name@gmail.com}
- NTFY_SMTP_SENDER_PASS=${NTFY_SMTP_SENDER_PASS:-app-password-xxxx}
- NTFY_SMTP_SENDER_FROM=${NTFY_SMTP_SENDER_FROM:-your.name@gmail.com}
- NTFY_LOG_LEVEL=${NTFY_LOG_LEVEL:-info}
user: "4242:4242"
volumes:
- ../data/ntfy/cache:/var/cache/ntfy
- ../data/ntfy/etc/ntfy:/etc/ntfy
ports:
- "8081:80"
restart: unless-stopped
schedy:
build: ./submodules/schedy
container_name: schedy
environment:
- SCHEDY_API_KEY=${SCHEDY_API_KEY}
- TZ=UTC
ports:
- "8080:8080"
volumes:
# Persist BadgerDB data so schedules survive restarts
- ../data/schedy:/data
restart: unless-stopped
frontend:
# image: node:20-alpine
image: git.manko.yoga/manawenuz/mortgagefi-frontend:alert
platform: linux/amd64
# container_name: mortgagefi-frontend
env_file: .env.local
environment:
- HOST=0.0.0.0
- PORT=3000
- NEXT_PUBLIC_NTFY_URL=${NEXT_PUBLIC_NTFY_URL:-/ntfy}
- NEXT_PUBLIC_SCHEDY_URL=${NEXT_PUBLIC_SCHEDY_URL:-/schedy}
# ports:
- "3000:3000"
restart: unless-stopped
depends_on:
- ntfy
- schedy
web:
image: nginx:alpine
platform: linux/amd64
container_name: mortgagefi-proxy
ports:
- "80:80"
volumes:
- ../nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
depends_on:
- frontend
- ntfy
- schedy
# Usage:
# 1) Optionally, set in .env.local:
# NEXT_PUBLIC_NTFY_URL=/ntfy
# NEXT_PUBLIC_SCHEDY_URL=/schedy
# NEXT_PUBLIC_SCHEDY_API_KEY=your-schedy-secret
# 2) docker compose up -d
# 3) App: http://localhost ; ntfy (proxied): http://localhost/ntfy ; schedy (proxied): http://localhost/schedy