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.
23 lines
No EOL
762 B
YAML
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: |