Refactor Postiz service configuration in docker-compose.yml

- Changed restart policy to 'always' for improved service reliability.
- Updated environment variable syntax for consistency and added new variables for self-hosting and upload directory.
- Ensured proper volume configuration for Postiz service.
- Adjusted service dependencies to reflect new naming conventions for PostgreSQL and Redis services.
This commit is contained in:
Yury Kossakovsky
2025-08-19 14:58:51 -06:00
parent b81ddff4bf
commit 50584698d2

View File

@@ -606,57 +606,59 @@ services:
postiz:
image: ghcr.io/gitroomhq/postiz-app:latest
container_name: postiz
profiles: ["postiz"]
restart: unless-stopped
volumes:
- postiz-config:/config
- postiz-uploads:/uploads
restart: always
environment:
- DATABASE_URL=postgresql://postgres:${POSTGRES_PASSWORD}@postgres:5432/postgres?schema=postiz
- REDIS_URL=redis://redis:6379
- JWT_SECRET=${JWT_SECRET}
- DISABLE_REGISTRATION=${POSTIZ_DISABLE_REGISTRATION}
- FRONTEND_URL=${POSTIZ_HOSTNAME:+https://}${POSTIZ_HOSTNAME}
- NEXT_PUBLIC_BACKEND_URL=${POSTIZ_HOSTNAME:+https://}${POSTIZ_HOSTNAME}
- BACKEND_INTERNAL_URL=http://postiz:3000
- MAIN_URL=${POSTIZ_HOSTNAME:+https://}${POSTIZ_HOSTNAME}
- STORAGE_PROVIDER=local
BACKEND_INTERNAL_URL: http://postiz:3000
DATABASE_URL: "postgresql://postgres:${POSTGRES_PASSWORD}@postgres:5432/postgres?schema=postiz"
DISABLE_REGISTRATION: ${POSTIZ_DISABLE_REGISTRATION}
FRONTEND_URL: ${POSTIZ_HOSTNAME:+https://}${POSTIZ_HOSTNAME}
IS_GENERAL: "true" # Required for self-hosting.
JWT_SECRET: ${JWT_SECRET}
MAIN_URL: ${POSTIZ_HOSTNAME:+https://}${POSTIZ_HOSTNAME}
NEXT_PUBLIC_BACKEND_URL: ${POSTIZ_HOSTNAME:+https://}${POSTIZ_HOSTNAME}/api
NEXT_PUBLIC_UPLOAD_DIRECTORY: "/uploads"
REDIS_URL: "redis://redis:6379"
STORAGE_PROVIDER: "local"
UPLOAD_DIRECTORY: "/uploads"
# Social Media API Settings
- X_API_KEY=${X_API_KEY}
- X_API_SECRET=${X_API_SECRET}
- LINKEDIN_CLIENT_ID=${LINKEDIN_CLIENT_ID}
- LINKEDIN_CLIENT_SECRET=${LINKEDIN_CLIENT_SECRET}
- REDDIT_CLIENT_ID=${REDDIT_CLIENT_ID}
- REDDIT_CLIENT_SECRET=${REDDIT_CLIENT_SECRET}
- GITHUB_CLIENT_ID=${GITHUB_CLIENT_ID}
- GITHUB_CLIENT_SECRET=${GITHUB_CLIENT_SECRET}
- BEEHIIVE_API_KEY=${BEEHIIVE_API_KEY}
- BEEHIIVE_PUBLICATION_ID=${BEEHIIVE_PUBLICATION_ID}
- THREADS_APP_ID=${THREADS_APP_ID}
- THREADS_APP_SECRET=${THREADS_APP_SECRET}
- FACEBOOK_APP_ID=${FACEBOOK_APP_ID}
- FACEBOOK_APP_SECRET=${FACEBOOK_APP_SECRET}
- YOUTUBE_CLIENT_ID=${YOUTUBE_CLIENT_ID}
- YOUTUBE_CLIENT_SECRET=${YOUTUBE_CLIENT_SECRET}
- TIKTOK_CLIENT_ID=${TIKTOK_CLIENT_ID}
- TIKTOK_CLIENT_SECRET=${TIKTOK_CLIENT_SECRET}
- PINTEREST_CLIENT_ID=${PINTEREST_CLIENT_ID}
- PINTEREST_CLIENT_SECRET=${PINTEREST_CLIENT_SECRET}
- DRIBBBLE_CLIENT_ID=${DRIBBBLE_CLIENT_ID}
- DRIBBBLE_CLIENT_SECRET=${DRIBBBLE_CLIENT_SECRET}
- DISCORD_CLIENT_ID=${DISCORD_CLIENT_ID}
- DISCORD_CLIENT_SECRET=${DISCORD_CLIENT_SECRET}
- DISCORD_BOT_TOKEN_ID=${DISCORD_BOT_TOKEN_ID}
- SLACK_ID=${SLACK_ID}
- SLACK_SECRET=${SLACK_SECRET}
- SLACK_SIGNING_SECRET=${SLACK_SIGNING_SECRET}
- MASTODON_URL=${MASTODON_URL}
- MASTODON_CLIENT_ID=${MASTODON_CLIENT_ID}
- MASTODON_CLIENT_SECRET=${MASTODON_CLIENT_SECRET}
X_API_KEY: ${X_API_KEY}
X_API_SECRET: ${X_API_SECRET}
LINKEDIN_CLIENT_ID: ${LINKEDIN_CLIENT_ID}
LINKEDIN_CLIENT_SECRET: ${LINKEDIN_CLIENT_SECRET}
REDDIT_CLIENT_ID: ${REDDIT_CLIENT_ID}
REDDIT_CLIENT_SECRET: ${REDDIT_CLIENT_SECRET}
GITHUB_CLIENT_ID: ${GITHUB_CLIENT_ID}
GITHUB_CLIENT_SECRET: ${GITHUB_CLIENT_SECRET}
BEEHIIVE_API_KEY: ${BEEHIIVE_API_KEY}
BEEHIIVE_PUBLICATION_ID: ${BEEHIIVE_PUBLICATION_ID}
THREADS_APP_ID: ${THREADS_APP_ID}
THREADS_APP_SECRET: ${THREADS_APP_SECRET}
FACEBOOK_APP_ID: ${FACEBOOK_APP_ID}
FACEBOOK_APP_SECRET: ${FACEBOOK_APP_SECRET}
YOUTUBE_CLIENT_ID: ${YOUTUBE_CLIENT_ID}
YOUTUBE_CLIENT_SECRET: ${YOUTUBE_CLIENT_SECRET}
TIKTOK_CLIENT_ID: ${TIKTOK_CLIENT_ID}
TIKTOK_CLIENT_SECRET: ${TIKTOK_CLIENT_SECRET}
PINTEREST_CLIENT_ID: ${PINTEREST_CLIENT_ID}
PINTEREST_CLIENT_SECRET: ${PINTEREST_CLIENT_SECRET}
DRIBBBLE_CLIENT_ID: ${DRIBBBLE_CLIENT_ID}
DRIBBBLE_CLIENT_SECRET: ${DRIBBBLE_CLIENT_SECRET}
DISCORD_CLIENT_ID: ${DISCORD_CLIENT_ID}
DISCORD_CLIENT_SECRET: ${DISCORD_CLIENT_SECRET}
DISCORD_BOT_TOKEN_ID: ${DISCORD_BOT_TOKEN_ID}
SLACK_ID: ${SLACK_ID}
SLACK_SECRET: ${SLACK_SECRET}
SLACK_SIGNING_SECRET: ${SLACK_SIGNING_SECRET}
MASTODON_URL: ${MASTODON_URL}
MASTODON_CLIENT_ID: ${MASTODON_CLIENT_ID}
MASTODON_CLIENT_SECRET: ${MASTODON_CLIENT_SECRET}
volumes:
- postiz-config:/config/
- postiz-uploads:/uploads/
depends_on:
postgres:
postiz-postgres:
condition: service_healthy
redis:
postiz-redis:
condition: service_healthy
comfyui: