mailship/docker-compose.yml
Agent 31deaf3aa5 Add Dockerfile, docker-compose.yml, .dockerignore
Multi-stage Dockerfile:
- Stage 1: install deps, build TS, build web UI
- Stage 2: minimal production image with sqlite, only prod deps
- Exposes port 4738, uses /data volume for SQLite

docker-compose.yml for easy local deployment with .env support.
.dockerignore to keep the build context lean.
README updated with Docker usage.
.env.template adds DATA_DIR.
2026-08-18 12:40:42 -04:00

23 lines
No EOL
762 B
YAML

services:
mailship:
build: .
ports:
- "4738:4738"
volumes:
- mailship-data:/data
environment:
- MAILSHIP_SECRET=${MAILSHIP_SECRET:?required}
- MAILSHIP_NAME=${MAILSHIP_NAME:-Mailship}
- MAILSHIP_URL=${MAILSHIP_URL:?required}
- BASE_URL=${BASE_URL:?required}
- POSTMARK_API_KEY=${POSTMARK_API_KEY:?required}
- POSTMARK_SENDER_ADDRESS=${POSTMARK_SENDER_ADDRESS:?required}
- DEFAULT_RELAYS=${DEFAULT_RELAYS:-wss://relay.damus.io,wss://relay.primal.net}
- INDEXER_RELAYS=${INDEXER_RELAYS:-wss://purplepag.es,wss://relay.damus.io}
- SEARCH_RELAYS=${SEARCH_RELAYS:-wss://relay.nostr.band}
- PORT=4738
- DATA_DIR=/data
restart: unless-stopped
volumes:
mailship-data: