Skip to main content

Self-Hosting Overview

Postiz is a powerful open-source social media scheduling platform that you can self-host on your own infrastructure. This guide will help you get started with deploying Postiz using Docker Compose.

What is Postiz?

Postiz is your ultimate AI social media scheduling tool that allows you to:
  • Schedule posts across 28+ social media platforms and channels
  • Measure your performance with analytics
  • Collaborate with team members
  • Automate workflows with API integrations (N8N, Make.com, Zapier)
  • Manage media libraries and content calendars

System Requirements

At the moment, there is no difference between the hosted version and the self-hosted version. You get the full power of Postiz!

Minimum Requirements

  • Docker: Version 20.10 or higher
  • Docker Compose: Version 2.0 or higher
  • RAM: 4GB minimum (8GB recommended for production)
  • Storage: 20GB minimum for application and databases
  • CPU: 2 cores minimum (4 cores recommended)

Supported Platforms

Postiz can be deployed on:
  • Linux (Ubuntu 20.04+, Debian 11+, CentOS 8+)
  • macOS (with Docker Desktop)
  • Windows (with Docker Desktop or WSL2)
  • Cloud platforms (AWS, GCP, Azure, DigitalOcean, etc.)

Architecture Overview

Postiz uses a modern microservices architecture:
1

Frontend (Next.js)

React-based user interface built with Next.js and Vite
2

Backend API (NestJS)

RESTful API server handling all business logic
3

Orchestrator (Temporal)

Background job processing and workflow management
4

Database (PostgreSQL)

Primary data storage for posts, users, and analytics
5

Cache (Redis)

Session management and caching layer

Tech Stack

Postiz is built with modern, production-ready technologies:
  • Monorepo: Pnpm workspaces
  • Frontend: Next.js (React) with Vite
  • Backend: NestJS (Node.js)
  • Database: PostgreSQL with Prisma ORM
  • Job Queue: Temporal for workflow orchestration
  • Cache: Redis 7.2
  • Notifications: Resend (optional)

What You’ll Need

Before starting your self-hosted deployment, gather the following:

Required

  • Server or VM with Docker installed
  • Domain name (for production deployments)
  • PostgreSQL database credentials
  • Redis instance

Optional (for full functionality)

  • Storage: Cloudflare R2 account (for media uploads)
  • Email: Resend API key (for user activation emails)
  • Social Media OAuth Apps: API credentials for platforms you want to support
    • X (Twitter), LinkedIn, Reddit, GitHub
    • Facebook, Instagram, Threads
    • YouTube, TikTok, Pinterest
    • Discord, Slack, Mastodon
    • And more!
  • AI Features: OpenAI API key
  • Payments: Stripe keys (if offering paid features)

Deployment Options

Docker Compose

Quick setup with pre-configured services (recommended for most users)

Environment Variables

Complete reference for all configuration options

Database Setup

PostgreSQL and Redis configuration guide

Authentication

OAuth setup and user authentication

Key Features

Security

  • JWT-based authentication
  • OAuth 2.0 support for generic providers (Authentik, Keycloak, etc.)
  • Environment-based secrets management
  • Optional user registration disable

Scalability

  • Horizontal scaling with multiple container instances
  • Redis caching for improved performance
  • Temporal for distributed workflow execution
  • PostgreSQL with connection pooling

Flexibility

  • Local or cloud storage (Cloudflare R2)
  • Multiple short link service integrations (Dub, Short.io, Kutt, LinkDrip)
  • Extensible via REST API
  • Custom OAuth provider support

License

Postiz is licensed under AGPL-3.0. This means if you modify the source code and run it as a service, you must make your modifications available under the same license.
The repository’s source code is available under the AGPL-3.0 license.

Support and Community

Get help and connect with other Postiz users:

Next Steps

1

Install Docker

Ensure Docker and Docker Compose are installed on your system
2

Follow the Docker Compose Guide

Set up Postiz using our Docker Compose setup guide
3

Configure Environment Variables

4

Set Up OAuth

Configure social media integrations in the authentication guide

Build docs developers (and LLMs) love