Skip to main content

Manual Setup

Use this path to install Docker and bootstrap CapRover yourself on a fresh Ubuntu 24.04 server.

1. Ports and firewall​

Allow the following ports in your hosting provider's firewall and, if you use UFW, on the server:

sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 3000/tcp # Dashboard setup
sudo ufw status

If UFW is inactive, enable it with sudo ufw enable after allowing SSH. You can restrict port 3000 once the dashboard works over HTTPS. See Firewall for multi-node ports.

2. Install Docker​

Run on the server:

sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker version
sudo docker run --rm hello-world

If installation fails because of existing packages, follow Docker's Ubuntu guide. Use Docker Engine rather than the snap package.

3. Install CapRover​

sudo 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

When setup finishes, open http://YOUR_SERVER_IP:3000.

Initial password: captain42

If the dashboard is unreachable, check sudo docker service ls and the firewall rules from step 1.

Continue with DNS and dashboard setup.