PeerTube

PeerTube - Decentralized video hosting network

9000
Default Port
3
Services
21.0/20
Complexity
Medium
Memory Usage
Configuration

Installation Command

blastdock init peertube

Template Overview

Everything you need to deploy Peertube with BlastDock

Quick Deploy

One command deployment

Secure

Production-ready security

Configurable

Customizable settings

Scalable

Ready to scale up

What's Included

Peertube
chocobozzz/peertube:latest
Postgres
postgres:13
Redis
redis:6
Categories
Database
Security Features
Password Protection, SSL/HTTPS Support, Admin User
Resource Requirements
CPU: Medium, Memory: Medium , Storage Required

Quick Commands

blastdock init Initialize new project
blastdock deploy Deploy the application
blastdock status Check deployment status
blastdock logs View application logs

Quick Installation

Get Peertube up and running in minutes with our one-click installation.

BlastDock Installation

First, install BlastDock using pip (recommended):

Terminal
pip install blastdock

Then deploy Peertube with:

Terminal
blastdock init peertube

Interactive mode:

Terminal
blastdock init peertube -i

What's Included

Peertube
Container service
Postgres
Container service
Redis
Container service

BlastDock Commands

blastdock templates List available templates
blastdock status project Check deployment status
blastdock logs project View application logs
blastdock stop project Stop deployment

Configuration Options

Customize your Peertube installation with these configuration options.

5
Required Fields
0
Optional Fields
1
Auto-Generated Passwords

Http Port

HTTP port

port
Default: 9000
Required: Yes

Https Port

HTTPS port

port
Default: 9443
Required: Yes

Db Password

Database password

password
Default: ••••••••••••
Required: Yes
Security: Auto-generated

Admin Email

Admin email

string
Required: Yes

Domain

Domain name

domain
Default: localhost
Required: Yes

Docker Compose

Complete Docker Compose configuration for Peertube deployment.

3
Services
3
Volumes
1
Networks
2
Exposed Ports
docker-compose.yml
version: '3.8'

services:
  postgres:
    image: postgres:13
    container_name: {{ project_name }}_postgres
    restart: unless-stopped
    environment:
      0: POSTGRES_PASSWORD={{ db_password }}
      1: POSTGRES_USER=peertube
      2: POSTGRES_DB=peertube
    volumes:
      - /var/lib/postgresql/data
    networks:
      - peertube_network

  redis:
    image: redis:6
    container_name: {{ project_name }}_redis
    restart: unless-stopped
    networks:
      - peertube_network

  peertube:
    image: chocobozzz/peertube:latest
    container_name: {{ project_name }}_peertube
    restart: unless-stopped
    depends_on:
      - postgres
      - redis
    ports:
      - "9000"
      - "9443"
    environment:
      0: PT_INITIAL_ROOT_EMAIL={{ admin_email }}
      1: PT_POSTGRES_USERNAME=peertube
      2: PT_POSTGRES_PASSWORD={{ db_password }}
      3: PT_POSTGRES_DATABASE=peertube
      4: PT_POSTGRES_HOST=postgres
      5: PT_REDIS_HOST=redis
      6: PT_TRUST_PROXY=["127.0.0.1", "loopback", "172.18.0.0/16"]
      7: PT_WEBSERVER_HOSTNAME={{ domain }}
      8: PT_WEBSERVER_PORT={{ http_port }}
    volumes:
      - /config
      - /data
    networks:
      - peertube_network

volumes:
  postgres_data:
    driver: local

  peertube_config:
    driver: local

  peertube_data:
    driver: local

networks:
  peertube_network:
    driver: bridge