manual init

This commit is contained in:
2025-12-08 12:38:06 -05:00
parent 3aad69264a
commit ab9ce9aff6

View File

@@ -1,8 +1,8 @@
services: services:
{{service}}-ts: postiz-ts:
image: tailscale/tailscale:latest image: tailscale/tailscale:latest
hostname: {{service}} hostname: postiz
container_name: {{service}}-ts container_name: postiz-ts
environment: environment:
- TS_AUTHKEY={{YOUR_TAILSCALE_AUTHKEY}} - TS_AUTHKEY={{YOUR_TAILSCALE_AUTHKEY}}
- TS_STATE_DIR=/var/lib/tailscale - TS_STATE_DIR=/var/lib/tailscale
@@ -15,7 +15,176 @@ services:
- net_admin - net_admin
- sys_module - sys_module
restart: unless-stopped restart: unless-stopped
{{service-compose}} postiz:
network_mode: service:{{service}}-ts image: ghcr.io/gitroomhq/postiz-app:latest
container_name: postiz
restart: always
environment:
# === Required Settings
MAIN_URL: "https://postiz.your-server.com"
FRONTEND_URL: "https://postiz.your-server.com"
NEXT_PUBLIC_BACKEND_URL: "https://postiz.your-server.com/api"
JWT_SECRET: "random string that is unique to every install - just type random characters here!"
DATABASE_URL: "postgresql://postiz-user:postiz-password@localhost:5432/postiz-db-local"
REDIS_URL: "redis://localhost:6379"
BACKEND_INTERNAL_URL: "http://localhost:3000"
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
NEXT_PUBLIC_SENTRY_DSN: "http://spotlight:8969/stream"
SENTRY_SPOTLIGHT: "1"
# === 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/
- postiz-uploads:/uploads/
# ports:
# - 5000:5000
network_mode: service:postiz-ts
depends_on:
postiz-postgres:
condition: service_healthy
postiz-redis:
condition: service_healthy
postiz-postgres:
image: postgres:17-alpine
container_name: postiz-postgres
restart: always
environment:
POSTGRES_PASSWORD: postiz-password
POSTGRES_USER: postiz-user
POSTGRES_DB: postiz-db-local
volumes:
- postgres-volume:/var/lib/postgresql/data
networks:
- postiz-network
healthcheck:
test: pg_isready -U postiz-user -d postiz-db-local
interval: 10s
timeout: 3s
retries: 3
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
network_mode: service:postiz-ts
depends_on: depends_on:
- {{service}}-ts - postiz-ts
# For Application Monitoring / Debugging
spotlight:
pull_policy: always
container_name: spotlight
# ports:
# - 8969:8969/tcp
image: ghcr.io/getsentry/spotlight:latest
network_mode: service:postiz-ts
depends_on:
- postiz-ts
volumes:
postgres-volume:
external: false
postiz-redis-data:
external: false
postiz-config:
external: false
postiz-uploads:
external: false