name: usesend networks: nginx-bridge: external: true services: redis: image: redis:7 container_name: usesend-redis hostname: usesend-redis networks: - nginx-bridge env_file: .env labels: com.centurylinklabs.watchtower.enable: 'true' volumes: - ./volumes/redis:/data:Z command: - redis-server - --maxmemory-policy - noeviction tty: true stdin_open: true restart: unless-stopped minio: image: minio/minio container_name: usesend-storage hostname: usesend-storage networks: - nginx-bridge env_file: .env environment: MINIO_ROOT_USER: ${MINIO_ROOT_USER} MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD} labels: com.centurylinklabs.watchtower.enable: 'true' volumes: - ./volumes/minio:/data:Z entrypoint: sh command: -c 'mkdir -p /data/unsend && minio server /data --console-address ':9001' --address ':9002'' tty: true stdin_open: true restart: unless-stopped smtp-server: image: usesend/smtp-proxy:v1.6.6 container_name: usesend-smtp-server hostname: usesend-smtp networks: - nginx-bridge env_file: .env environment: - SMTP_AUTH_USERNAME=${SMTP_USER:?err} - USESEND_BASE_URL=${USESEND_URL:?err} labels: com.centurylinklabs.watchtower.enable: 'true' tty: true stdin_open: true restart: unless-stopped usesend: image: usesend/usesend:v1.6.6 container_name: usesend hostname: usesend domainname: ${USESEND_URL:?err} networks: - nginx-bridge env_file: .env environment: - PORT=${USESEND_PORT:-3000} - DATABASE_URL=${DATABASE_URL:?err} - NEXTAUTH_URL=${USESEND_URL:?err} - NEXTAUTH_SECRET=${NEXTAUTH_SECRET:?err} - AWS_ACCESS_KEY=${AWS_ACCESS_KEY:?err} - AWS_SECRET_KEY=${AWS_SECRET_KEY:?err} - AWS_DEFAULT_REGION=${AWS_DEFAULT_REGION:?err} - GITHUB_ID=${GITHUB_ID:?err} - GITHUB_SECRET=${GITHUB_SECRET:?err} - REDIS_URL=${REDIS_URL:?err} - NEXT_PUBLIC_IS_CLOUD=${NEXT_PUBLIC_IS_CLOUD:-false} - API_RATE_LIMIT=${API_RATE_LIMIT:-1} - SMTP_HOST=${SMTP_HOST:-smtp.usesend.gbrown.org} - SMTP_USER=${SMTP_USER:-usesend} labels: com.centurylinklabs.watchtower.enable: 'true' depends_on: redis: condition: service_started tty: true stdin_open: true restart: unless-stopped