Plane can be self-hosted on your own infrastructure, giving you complete control over your data, security, and customization. This guide covers the available deployment options and requirements.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/makeplane/plane/llms.txt
Use this file to discover all available pages before exploring further.
Deployment Options
Plane offers multiple deployment methods to suit different infrastructure needs:Docker Compose
Quick setup for single-server deployments. Best for small to medium teams.
Kubernetes
Production-grade orchestration for scalable, high-availability deployments.
Comparison
| Feature | Docker Compose | Kubernetes |
|---|---|---|
| Setup Complexity | Simple | Advanced |
| Scalability | Vertical | Horizontal + Vertical |
| High Availability | Limited | Built-in |
| Resource Requirements | 2 vCPU, 4GB RAM minimum | Cluster recommended |
| Best For | Small-medium teams | Enterprise deployments |
| Maintenance | Easy | Requires K8s expertise |
System Requirements
Minimum Requirements
- CPU: 2 vCPU cores
- RAM: 4GB minimum (8GB recommended)
- Storage: 20GB minimum (depends on usage)
- OS: Ubuntu 20.04+, Amazon Linux 2, macOS, or Windows with WSL2
- Docker: 20.10+ and Docker Compose v2+
For Production
- CPU: 4+ vCPU cores
- RAM: 8GB+ (16GB recommended)
- Storage: 50GB+ SSD
- Network: Static IP or domain name
- SSL: Certificate for HTTPS (Let’s Encrypt supported)
Architecture Components
Plane consists of multiple services that work together:Core Services
Frontend Services
Frontend Services
- Web: Main application interface (React)
- Space: Public project space interface
- Admin: Instance administration panel
- Proxy: NGINX reverse proxy with SSL termination
Backend Services
Backend Services
- API: Django REST API server (port 8000)
- Worker: Celery background job processor
- Beat Worker: Celery periodic task scheduler
- Live: Real-time collaboration server (Node.js)
Infrastructure Services
Infrastructure Services
- PostgreSQL 15.7: Primary database
- Valkey 7.2: Redis-compatible cache and message broker
- RabbitMQ 3.13: Message queue for async tasks
- MinIO: S3-compatible object storage
- Migrator: Database migration runner (one-time)
Port Configuration
Default ports used by Plane services:| Service | Internal Port | Configurable External Port |
|---|---|---|
| Proxy (HTTP) | 80 | LISTEN_HTTP_PORT (default: 80) |
| Proxy (HTTPS) | 443 | LISTEN_HTTPS_PORT (default: 443) |
| API | 8000 | Internal only |
| PostgreSQL | 5432 | Can be exposed |
| Redis | 6379 | Can be exposed |
| MinIO | 9000 | Can be exposed |
| MinIO Console | 9090 | Can be exposed |
| RabbitMQ | 5672 | Can be exposed |
Data Persistence
Plane uses Docker volumes to persist data:- pgdata: PostgreSQL database files
- redisdata: Redis cache and session data
- uploads: User-uploaded files and attachments
- rabbitmq_data: RabbitMQ message queue data
License & Edition
Plane Community Edition is licensed under AGPL-3.0 and is free to use. The self-hosted version includes:- Full project management features
- Unlimited users and projects
- Complete data ownership
- Community support via GitHub and Forum
Next Steps
Choose Your Deployment Method
Select either Docker Compose for quick setup or Kubernetes for production-grade deployment.
Configure Environment
Review the configuration guide to customize your instance.
Set Up Instance Admin
Learn about instance administration to manage your deployment.
Support
- Documentation: docs.plane.so
- Developer Docs: developers.plane.so
- Community Forum: forum.plane.so
- GitHub Issues: github.com/makeplane/plane
