Files
coolify/templates/compose/postiz.yaml
Drdiffie a9e7eff5d0 Update postiz.yaml with Email Provider Fix
Small Bug Fix:

“EMAIL_PRROVIDER” was missing. This made the Email Invitations unusable.
2024-12-04 22:30:55 +01:00

135 lines
4.8 KiB
YAML

# documentation: https://docs.postiz.com
# slogan: Open source social media scheduling tool.
# tags: post everywhere, social media, planning
# logo: svgs/postiz.svg
# port: 5000
services:
postiz:
image: ghcr.io/gitroomhq/postiz-app:latest
environment:
- SERVICE_FQDN_POSTIZ_5000
- MAIN_URL=${SERVICE_FQDN_POSTIZ}
- FRONTEND_URL=${SERVICE_FQDN_POSTIZ}
- NEXT_PUBLIC_BACKEND_URL=${SERVICE_FQDN_POSTIZ}/api
- JWT_SECRET=${SERVICE_PASSWORD_JWTSECRET}
- DATABASE_URL=postgresql://postgres:${SERVICE_PASSWORD_POSTGRESQL}@postgres:5432/${POSTGRESQL_DATABASE:-postiz-db}
- REDIS_URL=redis://default:${SERVICE_PASSWORD_REDIS}@redis:6379
- BACKEND_INTERNAL_URL=http://localhost:3000
# Cloudflare R2 Settings
- CLOUDFLARE_ACCOUNT_ID=${CLOUDFLARE_ACCOUNT_ID}
- CLOUDFLARE_ACCESS_KEY=${CLOUDFLARE_ACCESS_KEY}
- CLOUDFLARE_SECRET_ACCESS_KEY=${CLOUDFLARE_SECRET_ACCESS_KEY}
- CLOUDFLARE_BUCKETNAME=${CLOUDFLARE_BUCKETNAME}
- CLOUDFLARE_BUCKET_URL=${CLOUDFLARE_BUCKET_URL}
- CLOUDFLARE_REGION=${CLOUDFLARE_REGION}
# Storage Settings
- STORAGE_PROVIDER=${STORAGE_PROVIDER:-local}
- UPLOAD_DIRECTORY=${UPLOAD_DIRECTORY:-/uploads}
- NEXT_PUBLIC_UPLOAD_DIRECTORY=${NEXT_PUBLIC_UPLOAD_DIRECTORY:-/uploads}
- NEXT_PUBLIC_UPLOAD_STATIC_DIRECTORY=${NEXT_PUBLIC_UPLOAD_STATIC_DIRECTORY}
# Email Settings
- RESEND_API_KEY=${RESEND_API_KEY}
- EMAIL_FROM_ADDRESS=${EMAIL_FROM_ADDRESS}
- EMAIL_FROM_NAME=${EMAIL_FROM_NAME}
- EMAIL_PROVIDER=${EMAIL_PROVIDER}
# Social Media API Settings
- X_API_KEY=${SERVICE_X_API}
- X_API_SECRET=${SERVICE_X_SECRET}
- LINKEDIN_CLIENT_ID=${SERVICE_LINKEDIN_ID}
- LINKEDIN_CLIENT_SECRET=${SERVICE_LINKEDIN_SECRET}
- REDDIT_CLIENT_ID=${SERVICE_REDDIT_API}
- REDDIT_CLIENT_SECRET=${SERVICE_REDDIT_SECRET}
- GITHUB_CLIENT_ID=${SERVICE_GITHUB_ID}
- GITHUB_CLIENT_SECRET=${SERVICE_GITHUB_SECRET}
- THREADS_APP_ID=${SERVICE_THREADS_ID}
- THREADS_APP_SECRET=${SERVICE_THREADS_SECRET}
- FACEBOOK_APP_ID=${SERVICE_FACEBOOK_ID}
- FACEBOOK_APP_SECRET=${SERVICE_FACEBOOK_SECRET}
- YOUTUBE_CLIENT_ID=${SERVICE_YOUTUBE_ID}
- YOUTUBE_CLIENT_SECRET=${SERVICE_YOUTUBE_SECRET}
- TIKTOK_CLIENT_ID=${SERVICE_TIKTOK_ID}
- TIKTOK_CLIENT_SECRET=${SERVICE_TIKTOK_SECRET}
- PINTEREST_CLIENT_ID=${SERVICE_PINTEREST_ID}
- PINTEREST_CLIENT_SECRET=${SERVICE_PINTEREST_SECRET}
- DRIBBBLE_CLIENT_ID=${SERVICE_DRIBBLE_ID}
- DRIBBBLE_CLIENT_SECRET=${SERVICE_DRIBBLE_SECRET}
- DISCORD_CLIENT_ID=${SERVICE_DISCORD_ID}
- DISCORD_CLIENT_SECRET=${SERVICE_DISCORD_SECRET}
- DISCORD_BOT_TOKEN_ID=${SERVICE_DISCORD_TOKEN}
- SLACK_ID=${SERVICE_SLACK_ID}
- SLACK_SECRET=${SERVICE_SLACK_SECRET}
- SLACK_SIGNING_SECRET=${SLACK_SIGNING_SECRET}
- MASTODON_CLIENT_ID=${SERVICE_MASTODON_ID}
- MASTODON_CLIENT_SECRET=${SERVICE_MASTODON_SECRET}
# Integration APIs
- BEEHIIVE_API_KEY=${SERVICE_BEEHIIVE_KEY}
- BEEHIIVE_PUBLICATION_ID=${SERVICE_BEEHIIVE_PUBID}
- OPENAI_API_KEY=${SERVICE_OPENAI_KEY}
# Misc Settings
- NEXT_PUBLIC_DISCORD_SUPPORT=${NEXT_PUBLIC_DISCORD_SUPPORT}
- NEXT_PUBLIC_POLOTNO=${NEXT_PUBLIC_POLOTNO}
- IS_GENERAL=true
- NX_ADD_PLUGINS=${NX_ADD_PLUGINS:-false}
# Payment Settings
- FEE_AMOUNT=${FEE_AMOUNT:-0.05}
- STRIPE_PUBLISHABLE_KEY=${STRIPE_PUBLISHABLE_KEY}
- STRIPE_SECRET_KEY=${STRIPE_SECRET_KEY}
- STRIPE_SIGNING_KEY=${STRIPE_SIGNING_KEY}
- STRIPE_SIGNING_KEY_CONNECT=${STRIPE_SIGNING_KEY_CONNECT}
volumes:
- postiz_config:/config/
- postiz_uploads:/uploads/
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
healthcheck:
test:
- CMD-SHELL
- wget -qO- http://127.0.0.1:5000/
interval: 5s
timeout: 20s
retries: 10
postgres:
image: postgres:14.5
volumes:
- postiz_postgresql_data:/var/lib/postgresql/data
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}
- POSTGRES_DB=${POSTGRESQL_DATABASE:-postiz-db}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB:-postiz-db}"]
interval: 5s
timeout: 20s
retries: 10
redis:
image: redis:7.2
environment:
- REDIS_PASSWORD=${SERVICE_PASSWORD_REDIS}
command: redis-server --requirepass ${SERVICE_PASSWORD_REDIS}
volumes:
- postiz_redis_data:/data
healthcheck:
test:
- CMD
- redis-cli
- -a
- ${SERVICE_PASSWORD_REDIS}
- ping
interval: 5s
timeout: 10s
retries: 20