Files
plane/deploy/cli-install/variables.env
Manish Gupta ee6e7596bb [INFRA-77] feat: add email service and SMTP configuration to docker-compose (#3098)
* feat: add email service and SMTP configuration to docker-compose

- Introduced a new email service in docker-compose with environment variables for SMTP configuration.
- Updated Caddyfile to route SMTP traffic for email service.
- Added necessary SMTP ports and health checks for the email service.
- Updated variables.env to include email-related configurations and replicas.

* refactor: clean up Caddyfile SMTP routing configuration

- Simplified the indentation and formatting of the SMTP routing sections in the Caddyfile.
- Ensured consistent structure for the proxy routes for email services on specified ports.

* fix: update SMTP domain binding in Caddyfile

- Changed the SMTP domain binding in the Caddyfile to use '0.0.0.0' for specified ports (10025, 10465, 10587) to allow connections from all network interfaces.
- This adjustment enhances the accessibility of the email service routing configuration.

* fix: update mail server testing instructions in README

- Changed placeholder from `<mail-domain>` to `<host-domain>` for clarity in SMTP connection testing instructions.
- This update improves the accuracy of the documentation for users testing their mail server setup.

* feat: enhance email service configuration in docker-compose and Caddyfile

- Added SMTP environment variables to coolify-compose.yml for better email service configuration.
- Updated docker-compose-caddy.yml to remove redundant SMTP_DOMAIN variable.
- Modified Caddyfile to simplify SMTP domain binding for email service routes.
- Ensured proper permissions for TLS directory in email Dockerfile.

* refactor: remove email service environment variables in coolify-compose.yml

---------

Co-authored-by: akshat5302 <akshatjain9782@gmail.com>
2025-05-21 13:29:28 +05:30

130 lines
3.0 KiB
Bash

INSTALL_DIR=/opt/plane
DOMAIN_NAME=localhost
APP_RELEASE_VERSION=v1.8.3
WEB_REPLICAS=1
SPACE_REPLICAS=1
ADMIN_REPLICAS=1
API_REPLICAS=1
WORKER_REPLICAS=1
BEAT_WORKER_REPLICAS=1
LIVE_REPLICAS=1
SILO_REPLICAS=1
EMAIL_REPLICAS=1
LISTEN_HTTP_PORT=80
LISTEN_HTTPS_PORT=443
APP_PROTOCOL=http
TRUSTED_PROXIES=0.0.0.0/0
# If SSL Cert to be generated, set CERT_EMAIL and APP_PROTOCOL to https
CERT_EMAIL=admin@example.com
CERT_ACME_CA=https://acme-v02.api.letsencrypt.org/directory
SITE_ADDRESS=localhost:80
# For DNS Challenge based certificate generation, set the CERT_ACME_DNS
# CERT_ACME_DNS=acme_dns CERT_DNS_PROVIDER CERT_DNS_PROVIDER_API_KEY
CERT_ACME_DNS=
# Create a new UUID and paste it as `MACHINE_SIGNATURE` value
# this can be generated in terminal using command `openssl rand -hex 16` or `uuidgen`
MACHINE_SIGNATURE=
WEB_URL=http://localhost
DEBUG=0
CORS_ALLOWED_ORIGINS=http://localhost
API_BASE_URL=http://api:8000
#DB SETTINGS
PGHOST=plane-db
PGDATABASE=plane
POSTGRES_USER=plane
POSTGRES_PASSWORD=plane
POSTGRES_DB=plane
PGDATA=/var/lib/postgresql/data
DATABASE_URL=
# REDIS SETTINGS
REDIS_HOST=plane-redis
REDIS_PORT=6379
REDIS_URL=
# RabbitMQ Settings
RABBITMQ_HOST=plane-mq
RABBITMQ_PORT=5672
RABBITMQ_DEFAULT_USER=plane
RABBITMQ_DEFAULT_PASS=plane
RABBITMQ_DEFAULT_VHOST=plane
RABBITMQ_VHOST=plane
AMQP_URL=amqp://plane:plane@plane-mq:5672/plane
# Secret Key
SECRET_KEY=60gp0byfz2dvffa45cxl20p1scy9xbpf6d8c5y0geejgkyp1b5
# DATA STORE SETTINGS
USE_MINIO=1
AWS_REGION=
AWS_ACCESS_KEY_ID=access-key
AWS_SECRET_ACCESS_KEY=secret-key
AWS_S3_ENDPOINT_URL=http://plane-minio:9000
AWS_S3_BUCKET_NAME=uploads
MINIO_ROOT_USER=access-key
MINIO_ROOT_PASSWORD=secret-key
BUCKET_NAME=uploads
FILE_SIZE_LIMIT=5242880
# Gunicorn Workers
GUNICORN_WORKERS=2
# SSL verification
SSL_VERIFY=1
# Monitor Base urls
FEATURE_FLAG_SERVER_BASE_URL=http://monitor:8080
PAYMENT_SERVER_BASE_URL=http://monitor:8080
# Silo Server Variables
SILO_HMAC_SECRET_KEY=tnbbvj6ATPvze4zaygdujxg4dpk4hqx0WDW
AES_SECRET_KEY=wvRonyo2xksk00E2h0hAbR5pFETQwbBK
# Silo integration oauth callback fqdn with protocol. Ex: https://plane.example.com
INTEGRATION_CALLBACK_BASE_URL=
# Silo Integration Variables
# Github Integration
GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
GITHUB_APP_NAME=
GITHUB_APP_ID=
GITHUB_PRIVATE_KEY=
# Slack Integration
SLACK_CLIENT_ID=
SLACK_CLIENT_SECRET=
# Gitlab Integration
GITLAB_CLIENT_ID=
GITLAB_CLIENT_SECRET=
# Force HTTPS for handling SSL Termination
MINIO_ENDPOINT_SSL=0
# API key rate limit
API_KEY_RATE_LIMIT=60/minute
# Live Server Secret Key
LIVE_SERVER_SECRET_KEY=htbqvBJAgpm9bzvf3r4urJer0ENReatceh
# Email Configuration
LISTEN_SMTP_PORT_25=25
LISTEN_SMTP_PORT_465=465
LISTEN_SMTP_PORT_587=587
# If using SMTP DOMAIN as FQDN e.g mail.example.com,
# Generate a valid SSL certificate of SMTP Domain
# Save the TLS Certificate pem files `cert.pem` and `key.pem` in `/opt/plane/data/email/tls` folder
# Set the below path to `tls/cert.pem` and `tls/key.pem`
SMTP_DOMAIN=0.0.0.0
TLS_CERT_PATH=
TLS_PRIV_KEY_PATH=