Back to all templates
PeerTube logo

PeerTube

Application1024MB+ RAM

Decentralized video hosting platform

videostreamingdecentralizedyoutube-alternative

Deploy PeerTube in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select PeerTube

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy PeerTube on a VPS with Server Compass

Use the PeerTube template in Server Compass to deploy a self-hosted decentralized video hosting platform with PostgreSQL, Redis, and persistent video/config storage, then verify the homepage in a browser.

About 8 minutesBrowser verified
1
Step 1

Open the server Apps tab

Select your VPS, open the Apps tab, and start a new app deployment.

Server Compass Apps tab before creating a PeerTube app
2
Step 2

Choose an app template

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Choosing to deploy an app from a Server Compass template
3
Step 3

Search for PeerTube

Use the template picker search to find PeerTube.

Searching for PeerTube in the Server Compass template picker
4
Step 4

Select the PeerTube template

Choose the PeerTube template. Server Compass fills the app image, public hostname, host port, PostgreSQL, Redis, and persistent video/config storage.

PeerTube template selected in Server Compass
5
Step 5

Review the PeerTube settings

Confirm the app name, compose services, and generated configuration.

Reviewing PeerTube project settings and compose services
6
Step 6

Deploy PeerTube

Review the generated environment values, confirm the port is available, and click Deploy Now.

Reviewing PeerTube server URL and port before deployment
7
Step 7

Watch the deployment progress

Keep the deployment modal open while Server Compass pulls images, starts services, and verifies the stack.

Server Compass deploying the PeerTube template on the VPS
8
Step 8

Confirm PeerTube is running

After deployment finishes, confirm the PeerTube app is marked Running.

PeerTube template running in the Server Compass Apps tab
9
Step 9

Open PeerTube in the browser

Open the application URL in a browser. The PeerTube homepage confirms the app is reachable.

The deployed PeerTube homepage loaded in a browser

After PeerTube Opens

  • Sign in with the generated PeerTube admin user before publishing production videos.
  • Confirm data and config volume locations before accepting video uploads.
  • Add a domain and HTTPS before federation or public video hosting.
  • Back up the PeerTube data, config, and PostgreSQL volumes before relying on the server for production video channels.

Verified Result

PeerTube loaded successfully and displayed the homepage.

PeerTube deployment questions

What does the PeerTube template deploy?

It deploys PeerTube with PostgreSQL, Redis, and persistent data, config, and database volumes.

Which port did the tutorial use?

The tutorial used host port 9000, which maps to the PeerTube web server on container port 9000.

Do It Yourself

Deploy PeerTube via Command Line

Prefer the command line? Follow this step-by-step guide to deploy PeerTube manually on your VPS.

1

Start a Secure Shell Session

Open your terminal and connect to your server. Replace the IP address with your VPS IP.

terminal
# SSH into your server
ssh root@your-server-ip

# Using a custom SSH key
ssh -i ~/.ssh/id_rsa root@your-server-ip

First time? Need Docker? Install it: curl -fsSL https://get.docker.com | sh

2

Prepare Your Workspace

Set up a clean directory for your application.

terminal
# Create and navigate to project directory
mkdir -p ~/apps/peertube
cd ~/apps/peertube
3

Set Up Container Configuration

Set up the container stack using this Docker Compose configuration:

docker-compose.yml
services:
  peertube:
    image: chocobozzz/peertube:production-bookworm
    ports:
      - "9000:9000"
    environment:
      - PEERTUBE_WEBSERVER_HOSTNAME=<your-hostname>
      - PEERTUBE_WEBSERVER_PORT=9000
      - PEERTUBE_WEBSERVER_HTTPS=false
      - PEERTUBE_DB_USERNAME=peertube
      - PEERTUBE_DB_PASSWORD=<your-db-password>
      - PEERTUBE_DB_HOSTNAME=db
      - PEERTUBE_REDIS_HOSTNAME=redis
      - PEERTUBE_SECRET=<your-secret>
      - [email protected]
    volumes:
      - peertube_data:/data
      - peertube_config:/config
    restart: unless-stopped
    depends_on:
      db:
        condition: service_healthy
      redis:
        condition: service_healthy

  db:
    image: postgres:16-alpine
    environment:
      - POSTGRES_USER=peertube
      - POSTGRES_PASSWORD=<your-db-password>
      - POSTGRES_DB=peertube
    volumes:
      - postgres_data:/var/lib/postgresql/data
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U peertube"]
      interval: 10s
      timeout: 5s
      retries: 5

  redis:
    image: redis:7-alpine
    restart: unless-stopped
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 5s
      retries: 5

volumes:
  peertube_data:
  peertube_config:
  postgres_data:
Configuration Variables
PORTHost port(default: 9000)
HOSTNAMEHostname
SECRETSecret
DB_PASSWORDDB password
4

Bring Up the Application

Launch your application stack in the background.

terminal
# Start the containers in detached mode
docker compose up -d

# Check if containers are running
docker compose ps

# View logs
docker compose logs -f
5

Configure Firewall

Configure your firewall to permit external connections.

terminal
# Allow the application port through firewall
sudo ufw allow 9000/tcp
sudo ufw reload

# Access your app at:
# http://your-server-ip:9000
Skip the Terminal

Prefer a visual interface? Use Server Compass.

Deploy PeerTube with a beautiful UI instead. No SSH, no YAML editing, no terminal commands. Just click, configure, and deploy in under 3 minutes.

  • Visual configuration UI
  • One-click deployment
  • Automatic SSL setup
  • Zero-downtime updates
  • Built-in monitoring
  • One-click rollbacks
Download Server Compass$29 one-time • Lifetime license

After Deployment

After deploying PeerTube with Server Compass, complete these steps to finish setup

1

Create admin account

2

Configure instance settings

Need help? Check out our documentation for detailed guides.

PeerTube FAQ

Common questions about self-hosting PeerTube

How do I deploy PeerTube with Server Compass?

Simply download Server Compass, connect to your VPS, and select PeerTube from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.

What are the system requirements for PeerTube?

PeerTube requires a minimum of 1024MB RAM. We recommend a VPS with at least 2048MB RAM for optimal performance. Any modern Linux server with Docker support will work.

Can I migrate my existing PeerTube data?

Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard PeerTube backup and restore procedures.

How do I update PeerTube to the latest version?

Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest PeerTube image will be pulled and deployed with zero downtime.

Is PeerTube free to self-host?

PeerTube is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.

Ready to Self-Host PeerTube?

Download Server Compass and deploy PeerTube to your VPS in under 3 minutes. No Docker expertise required.

Download Server Compass