What Is CapRover?
CapRover is a free, open-source Platform-as-a-Service (PaaS) that runs on Docker. It provides a web dashboard for deploying applications with one click, automatic HTTPS via Let's Encrypt, built-in Nginx reverse proxy, and support for multiple programming languages and databases.
Prerequisites
- A Breeze with at least 2 GB RAM running Ubuntu 22.04
- Docker installed
- A wildcard DNS record pointing
*.apps.yourdomain.comto your Breeze IP - Ports 80, 443, and 3000 open in your firewall
Install CapRover
docker run -p 80:80 -p 443:443 -p 3000:3000 \
-e ACCEPTED_TERMS=true \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /captain:/captain \
caprover/caprover
Initial Setup
Install the CapRover CLI on your local machine:
npm install -g caprover
Run the setup wizard:
caprover serversetup
Enter your Breeze IP, root domain (apps.yourdomain.com), and set a new admin password. CapRover will configure Nginx and obtain SSL certificates automatically.
Deploy an Application
From your project directory:
caprover deploy
Select your app from the list and CapRover handles building the Docker image, routing, and SSL. You can also deploy from the web dashboard using one-click apps for popular software like PostgreSQL, Redis, MongoDB, and WordPress.
Scaling and Clustering
CapRover supports Docker Swarm mode. Add worker Breezes to your cluster from the dashboard under Cluster settings to distribute workloads and enable high availability.