Skip to content

Instantly share code, notes, and snippets.

@RealIanX
Last active December 1, 2025 18:20
Show Gist options
  • Select an option

  • Save RealIanX/72e7881ba4c22735424f23c52fcf7377 to your computer and use it in GitHub Desktop.

Select an option

Save RealIanX/72e7881ba4c22735424f23c52fcf7377 to your computer and use it in GitHub Desktop.
Postiz docker-compose.yml
services:
postiz:
image: ghcr.io/gitroomhq/postiz-app:latest
container_name: postiz
restart: always
environment:
# default variables
MAIN_URL: ${MAIN_URL}
FRONTEND_URL: ${FRONTEND_URL}
NEXT_PUBLIC_BACKEND_URL: ${NEXT_PUBLIC_BACKEND_URL}
JWT_SECRET: ${JWT_SECRET}
DATABASE_URL: ${DATABASE_URL}
CLOUDFLARE_ACCOUNT_ID: ${CLOUDFLARE_ACCOUNT_ID}
CLOUDFLARE_BUCKETNAME: ${CLOUDFLARE_BUCKETNAME}
CLOUDFLARE_BUCKET_URL: ${CLOUDFLARE_BUCKET_URL}
CLOUDFLARE_REGION: ${CLOUDFLARE_REGION}
CLOUDFLARE_ACCESS_KEY: ${CLOUDFLARE_ACCESS_KEY}
CLOUDFLARE_SECRET_ACCESS_KEY: ${CLOUDFLARE_SECRET_ACCESS_KEY}
STORAGE_PROVIDER: ${STORAGE_PROVIDER}
# === Required Settings
REDIS_URL: "redis://postiz-redis:6379"
BACKEND_INTERNAL_URL: "http://localhost:3099"
IS_GENERAL: "true"
DISABLE_REGISTRATION: "false"
# === Storage Settings
# STORAGE_PROVIDER: "local"
# UPLOAD_DIRECTORY: "/uploads"
# NEXT_PUBLIC_UPLOAD_DIRECTORY: "/uploads"
# === Cloudflare (R2) Settings
# CLOUDFLARE_ACCOUNT_ID: "your-account-id"
# CLOUDFLARE_ACCESS_KEY: "your-access-key"
# CLOUDFLARE_SECRET_ACCESS_KEY: "your-secret-access-key"
# CLOUDFLARE_BUCKETNAME: "your-bucket-name"
# CLOUDFLARE_BUCKET_URL: "https://your-bucket-url.r2.cloudflarestorage.com/"
# CLOUDFLARE_REGION: "auto"
# === Social Media API Settings
X_API_KEY: ""
X_API_SECRET: ""
LINKEDIN_CLIENT_ID: ""
LINKEDIN_CLIENT_SECRET: ""
REDDIT_CLIENT_ID: ""
REDDIT_CLIENT_SECRET: ""
GITHUB_CLIENT_ID: ""
GITHUB_CLIENT_SECRET: ""
BEEHIIVE_API_KEY: ""
BEEHIIVE_PUBLICATION_ID: ""
THREADS_APP_ID: ""
THREADS_APP_SECRET: ""
FACEBOOK_APP_ID: ""
FACEBOOK_APP_SECRET: ""
YOUTUBE_CLIENT_ID: ""
YOUTUBE_CLIENT_SECRET: ""
TIKTOK_CLIENT_ID: ""
TIKTOK_CLIENT_SECRET: ""
PINTEREST_CLIENT_ID: ""
PINTEREST_CLIENT_SECRET: ""
DRIBBBLE_CLIENT_ID: ""
DRIBBBLE_CLIENT_SECRET: ""
DISCORD_CLIENT_ID: ""
DISCORD_CLIENT_SECRET: ""
DISCORD_BOT_TOKEN_ID: ""
SLACK_ID: ""
SLACK_SECRET: ""
SLACK_SIGNING_SECRET: ""
MASTODON_URL: "https://mastodon.social"
MASTODON_CLIENT_ID: ""
MASTODON_CLIENT_SECRET: ""
# === OAuth & Authentik Settings
# NEXT_PUBLIC_POSTIZ_OAUTH_DISPLAY_NAME: "Authentik"
# NEXT_PUBLIC_POSTIZ_OAUTH_LOGO_URL: "https://raw.githubusercontent.com/walkxcode/dashboard-icons/master/png/authentik.png"
# POSTIZ_GENERIC_OAUTH: "false"
# POSTIZ_OAUTH_URL: "https://auth.example.com"
# POSTIZ_OAUTH_AUTH_URL: "https://auth.example.com/application/o/authorize"
# POSTIZ_OAUTH_TOKEN_URL: "https://auth.example.com/application/o/token"
# POSTIZ_OAUTH_USERINFO_URL: "https://authentik.example.com/application/o/userinfo"
# POSTIZ_OAUTH_CLIENT_ID: ""
# POSTIZ_OAUTH_CLIENT_SECRET: ""
# POSTIZ_OAUTH_SCOPE: "openid profile email" # Optional: uncomment to override default scope
# === Misc Settings
OPENAI_API_KEY: ""
NEXT_PUBLIC_DISCORD_SUPPORT: ""
NEXT_PUBLIC_POLOTNO: ""
API_LIMIT: 30
# === Payment / Stripe Settings
FEE_AMOUNT: 0.05
STRIPE_PUBLISHABLE_KEY: ""
STRIPE_SECRET_KEY: ""
STRIPE_SIGNING_KEY: ""
STRIPE_SIGNING_KEY_CONNECT: ""
# === Developer Settings
NX_ADD_PLUGINS: false
# === Short Link Service Settings (Optional - leave blank if unused)
# DUB_TOKEN: ""
# DUB_API_ENDPOINT: "https://api.dub.co"
# DUB_SHORT_LINK_DOMAIN: "dub.sh"
# SHORT_IO_SECRET_KEY: ""
# KUTT_API_KEY: ""
# KUTT_API_ENDPOINT: "https://kutt.it/api/v2"
# KUTT_SHORT_LINK_DOMAIN: "kutt.it"
# LINK_DRIP_API_KEY: ""
# LINK_DRIP_API_ENDPOINT: "https://api.linkdrip.com/v1/"
# LINK_DRIP_SHORT_LINK_DOMAIN: "dripl.ink"
volumes:
- postiz-config:/config/
ports:
- 5000:5000
- 3099:3099
networks:
- postiz-network
depends_on:
postiz-redis:
condition: service_healthy
postiz-redis:
image: redis:7.2
container_name: postiz-redis
restart: always
healthcheck:
test: redis-cli ping
interval: 10s
timeout: 3s
retries: 3
volumes:
- postiz-redis-data:/data
networks:
- postiz-network
volumes:
postgres-volume:
external: true
postiz-redis-data:
external: false
postiz-config:
external: false
postiz-uploads:
external: true
networks:
postiz-network:
external: false
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment