Installing PeerTube using Docker on Reclaim Cloud

What is PeerTube?

PeerTube, developed by Framasoft, is an open source, decentralized alternative to video platforms like YouTube and Vimeo. According to their website:

Our aim is not to replace them, but rather to simultaneously offer something else, with different values.

 

 

Currently PeerTube is available to install from the Marketplace, that would be the recommended approach. The following guide will cover how to install this software manually using Docker Engine. But as a reminder, installing it from the Marketplace will be quicker and easier.

Creating the Environment

The first thing we need to do is create an environment. Click New Environment in the upper left of your Reclaim Cloud Dashboard.
New Environment

To install PeerTube using Docker you will need to setup a Docker Engine on Reclaim Cloud by clicking on the downward-facing arrow next to the Docker tab:

 

After that select Docker Engine:

 

At the next prompt create the domain (mypeertube.us.reclaim.cloud), name the server (My Peertube), and decide in what region you want the app to live (USA).

 

After the Docker Engine is created you can login to the web SSH tool and create the peertube directory within the home directory (keep in mind you can also find these instructions in the PeerTube docs here ):

mkdir -p /home/peertube

Now move into that directory:

cd /home/peertube

Get the latest Compose file:

curl https://raw.githubusercontent.com/chocobozzz/PeerTube/master/support/docker/production/docker-compose.yml > docker-compose.yml

Get the latest .env file:

curl https://raw.githubusercontent.com/Chocobozzz/PeerTube/master/support/docker/production/.env > .env

Now you will need to edit the .env file with your PeerTube instance URL, email, and database settings:

nano ./.env

In the .env file you must replace the following:

  • <MY POSTGRES USERNAME>
  • <MY POSTGRES PASSWORD>
  • <MY DOMAIN> without ‘https://’
  • <MY EMAIL ADDRESS>

Here is an example of what the first part of an .env file looks like:

 

Be sure to replace all instances of <MY DOMAIN> (without 'https://) and <MY EMAIL ADDRESS> in all areas they are required.

 

Install the template that the nginx container will use. The container will generate the configuration by replacing ${WEBSERVER_HOST} and ${PEERTUBE_HOST} using your docker compose env file.

mkdir -p docker-volume/nginx 
curl https://raw.githubusercontent.com/Chocobozzz/PeerTube/master/support/nginx/peertube > docker-volume/nginx/peertube

You need to manually generate the first SSL/TLS certificate using Let's Encrypt:

mkdir -p docker-volume/certbot

docker run -it --rm --name certbot -p 80:80 -v "$(pwd)/docker-volume/certbot/conf:/etc/letsencrypt" certbot/certbot certonly --standalone

A dedicated container in the docker-compose will automatically renew this certificate and reload nginx.

After that, you should be ready to spin up the environment using the following command:

docker-compose up

Finally, you can use the following commands to get your login and password for the PeerTube instance you have just installed:

docker-compose logs peertube | grep -A1 root

After that go to your domain and login by appending /admin or /login, for this example it would be http://mypeertube.us.reclaim.cloud/login .

 

 

For more information on administering PeerTube there is more extensive documentation. Also, the command line interface (CLI) tool is extremely useful for copying over videos from existing Vimeo or YouTube channels.

Was this article helpful?
0 out of 0 found this helpful

Articles in this section

See more
Reclaim Hosting Support Hours
8:00 am - 5:00 pm ET, Monday through Friday
Submit a Ticket
Get a quick and helpful response from the pros.
Need Extra Support?
No problem, we're here to help! Talk to us about Professional Services.