Initial commit on Forgejo
Some checks are pending
CI and deploy / Test (push) Waiting to run
CI and deploy / Build, push, and deploy (push) Blocked by required conditions

Fresh repository history for elektrine/elektrine-haraka hosted at
https://git.elektrine.com/elektrine/elektrine-haraka.
This commit is contained in:
Maxfield Luke 2026-07-29 04:43:42 -04:00
commit 67c1d41a0c
82 changed files with 8713 additions and 0 deletions

53
deployment/.env.example Normal file
View file

@ -0,0 +1,53 @@
# Haraka environment variables
# Copy to .env and set your values
# Domain Configuration
HARAKA_DOMAIN=mail.example.com
# SSL Configuration
SSL_EMAIL=admin@example.com
STAGING=0
# Shared key (optional)
HARAKA_API_KEY=your-secure-api-key-here
# Directional keys
# Haraka -> Phoenix
PHOENIX_API_KEY=replace-with-haraka-to-phoenix-key
# Phoenix -> Haraka
HARAKA_HTTP_API_KEY=replace-with-phoenix-to-haraka-key
# Phoenix App Integration
PHOENIX_WEBHOOK_URL=https://your-phoenix-app.com/api/haraka/inbound
PHOENIX_VERIFY_URL=https://your-phoenix-app.com/api/haraka/verify-recipient
PHOENIX_DOMAINS_URL=https://your-phoenix-app.com/api/haraka/domains
# Image tag
HARAKA_IMAGE=git.elektrine.com/elektrine/elektrine-haraka
HARAKA_IMAGE_TAG=latest
# Optional service images
CADDY_IMAGE=caddy:2-alpine
REDIS_IMAGE=redis:7-alpine
CLAMAV_IMAGE=clamav/clamav:stable
SPAMASSASSIN_IMAGE=dinkel/spamassassin:latest
FAIL2BAN_IMAGE=crazymax/fail2ban:latest
CERT_COPIER_IMAGE=alpine:3.20
# Redis + async queue
REDIS_URL=redis://redis:6379
ELEKTRINE_QUEUE_NAME=elektrine:inbound
ELEKTRINE_DLQ_NAME=elektrine:inbound:dlq
# Worker retry policy
WEBHOOK_MAX_RETRIES=5
WEBHOOK_RETRY_BASE_MS=1000
# Optional ops CIDRs for keyless access to /status, /healthz, and /metrics.
# Leave blank to require X-API-Key by default.
METRICS_ALLOWED_CIDRS=
OPS_ALLOWED_CIDRS=
# Queue thresholds
QUEUE_WARN_THRESHOLD=1000
DLQ_CRIT_THRESHOLD=10