From aa2e170160b0dc73ec4647fb70910fa008735488 Mon Sep 17 00:00:00 2001 From: peaklabs-dev <122374094+peaklabs-dev@users.noreply.github.com> Date: Wed, 9 Oct 2024 17:38:27 +0200 Subject: [PATCH] fix unsend service --- templates/compose/resend.yaml | 59 ---------------------------------- templates/compose/unsend.yaml | 60 +++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 59 deletions(-) delete mode 100644 templates/compose/resend.yaml create mode 100644 templates/compose/unsend.yaml diff --git a/templates/compose/resend.yaml b/templates/compose/resend.yaml deleted file mode 100644 index b8b528a75..000000000 --- a/templates/compose/resend.yaml +++ /dev/null @@ -1,59 +0,0 @@ -# documentation: https://docs.unsend.dev/get-started/self-hosting -# slogan: Unsend is an open-source alternative to Resend, Sendgrid, Mailgun and Postmark etc. -# tags: resend, mailer, marketing emails, transaction emails, self-hosting, postmark -# logo: svgs/unsend.svg -# port: 3000 - -services: - postgres: - image: postgres:16 - container_name: unsend-db-prod - restart: always - environment: - - POSTGRES_USER=${SERVICE_POSTGRES_USER:?err} - - POSTGRES_PASSWORD=${SERVICE_POSTGRES_PASSWORD:?err} - - POSTGRES_DB=${SERVICE_POSTGRES_DB:?err} - healthcheck: - test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER}"] - interval: 10s - timeout: 5s - retries: 5 - volumes: - - unsend-db:/var/lib/postgresql/data - - redis: - image: redis:7 - container_name: unsend-redis-prod - restart: always - volumes: - - unsend-cache:/data - command: ["redis-server", "--maxmemory-policy", "noeviction"] - - unsend: - image: unsend/unsend:latest - container_name: unsend - restart: always - ports: - - ${PORT:-3000}:${PORT:-3000} - environment: - - PORT=${PORT:-3000} - - DATABASE_URL=postgresql://postgres:${SERVICE_POSTGRES_PASSWORD}@postgres:5432/resend - - NEXTAUTH_URL=${SERVICE_NEXTAUTH_URL:?err} - - NEXTAUTH_SECRET=${SERVICE_NEXTAUTH_SECRET:?err} - - AWS_ACCESS_KEY=${SERVICE_AWS_ACCESS_KEY:?err} - - AWS_SECRET_KEY=${SERVICE_AWS_SECRET_KEY:?err} - - AWS_DEFAULT_REGION=${SERVICE_AWS_DEFAULT_REGION:?err} - - GITHUB_ID=${SERVICE_GITHUB_ID:?err} - - GITHUB_SECRET=${SERVICE_GITHUB_SECRET:?err} - - REDIS_URL=redis://redis:6379 - - NEXT_PUBLIC_IS_CLOUD=${NEXT_PUBLIC_IS_CLOUD:-false} - - API_RATE_LIMIT=${SERVICE_API_RATE_LIMIT:-1} - depends_on: - postgres: - condition: service_healthy - redis: - condition: service_started - -volumes: - unsend-db: - unsend-cache: diff --git a/templates/compose/unsend.yaml b/templates/compose/unsend.yaml new file mode 100644 index 000000000..6929e5dc1 --- /dev/null +++ b/templates/compose/unsend.yaml @@ -0,0 +1,60 @@ +# documentation: https://docs.unsend.dev/get-started/self-hosting +# slogan: Unsend is an open-source alternative to Resend, Sendgrid, Mailgun and Postmark etc. +# tags: resend, mailer, marketing emails, transaction emails, self-hosting, postmark +# logo: svgs/unsend.svg +# port: 3000 + +services: + postgres: + image: postgres:16 + environment: + - POSTGRES_USER=${SERVICE_USER_POSTGRES} + - POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRES} + - POSTGRES_DB=${SERVICE_DB_POSTGRES:-unsend} + healthcheck: + test: ["CMD", "pg_isready", "-U", "${SERVICE_USER_POSTGRES}"] + interval: 10s + timeout: 5s + retries: 5 + volumes: + - unsend-postgres-data:/var/lib/postgresql/data + + redis: + image: redis:7 + volumes: + - unsend-redis-data:/data + command: ["redis-server", "--maxmemory-policy", "noeviction"] + healthcheck: + test: + - CMD + - redis-cli + - PING + interval: 5s + timeout: 10s + retries: 20 + + unsend: + image: unsend/unsend:latest + environment: + - SERVICE_FQDN_UNSEND_3000 + - DATABASE_URL=postgresql://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${SERVICE_DB_POSTGRES:-unsend} + - NEXTAUTH_URL=${SERVICE_FQDN_UNSEND} + - NEXTAUTH_SECRET=${SERVICE_BASE64_64_NEXTAUTHSECRET} + - AWS_ACCESS_KEY=${SERVICE_AWS_ACCESS_KEY} + - AWS_SECRET_KEY=${SERVICE_AWS_SECRET_KEY} + - AWS_DEFAULT_REGION=${SERVICE_AWS_DEFAULT_REGION} + - GITHUB_ID=${SERVICE_GITHUB_ID:-1234567890} + - GITHUB_SECRET=${SERVICE_GITHUB_SECRET:-abcde1234567890} + - REDIS_URL=redis://redis:6379 + - NEXT_PUBLIC_IS_CLOUD=${NEXT_PUBLIC_IS_CLOUD:-false} + - API_RATE_LIMIT=${SERVICE_API_RATE_LIMIT:-1} + depends_on: + postgres: + condition: service_healthy + redis: + condition: service_healthy + healthcheck: + test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"] + interval: 2s + timeout: 10s + retries: 15