Peertube
Le tuto est testé et optimisé pour Debian buster x64.
La documentation officielle, elle est généralisée pour toutes les configurations.
Dépendance
apt remove apache2* apt install curl sudo unzip apt-transport-https vim apt install nginx ffmpeg postgresql postgresql-contrib openssl g++ make redis-server git python-dev
NB: ffmpeg > 3
nodeJS 10.x
Installation de la version 10:
curl -sL https://deb.nodesource.com/setup_10.x | bash - apt-get install -y nodejs
Yarn > 1.5
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list apt update && apt install yarn
je ne sais pas
systemctl start redis postgresql
PeerTube user
Créer un user peertube avec /var/www/peertube home:
adduser user sudo
Quitter et revenir pour que le changement soit pris en compte !
sudo useradd -m -d /var/www/peertube -s /bin/bash -p peertube peertube
Le mot de passe:
sudo passwd peertube
Database
sudo -u postgres createuser -P peertube sudo -u postgres createdb -O peertube peertube_prod
sudo -u postgres psql -c "CREATE EXTENSION pg_trgm;" peertube_prod sudo -u postgres psql -c "CREATE EXTENSION unaccent;" peertube_prod
Mise en place de Peertube
Préparer le répertoire PeerTube
Vérification de la dernière version:
VERSION=$(curl -s https://api.github.com/repos/chocobozzz/peertube/releases/latest | grep tag_name | cut -d '"' -f 4) && echo "Latest Peertube version is $VERSION"
Ouvrir le répertoire Peertube et mettre des droits
cd /var/www/peertube && sudo -u peertube mkdir config storage versions && cd versions
Télécharger la dernière version du client Peertube, décompresser et enlever le zip :
sudo -u peertube wget -q "https://github.com/Chocobozzz/PeerTube/releases/download/${VERSION}/peertube-${VERSION}.zip" sudo -u peertube unzip peertube-${VERSION}.zip && sudo -u peertube rm peertube-${VERSION}.zip
Installation de Peertube
cd ../ && sudo -u peertube ln -s versions/peertube-${VERSION} ./peertube-latest cd ./peertube-latest && sudo -H -u peertube yarn install --production --pure-lockfile
PeerTube configuration
Copier l’exemple de configuration:
cd /var/www/peertube && sudo -u peertube cp peertube-latest/config/production.yaml.example config/production.yaml
Éditer le fichier
sudo nano config/production.yaml
PeerTube ne supporte pas le changement d'host , il est définitif
Webserver
Copier la configuration nginx:
sudo cp /var/www/peertube/peertube-latest/support/nginx/peertube /etc/nginx/sites-available/peertube
Then modify the webserver configuration file. Please pay attention to the alias keys of the static locations. It should correspond to the paths of your storage directories (set in the configuration file inside the storage key).
sudo vim /etc/nginx/sites-available/peertube
Activer le fichier de configuration :
sudo ln -s /etc/nginx/sites-available/peertube /etc/nginx/sites-enabled/peertube
To generate the certificate for your domain as required to make https work you can use Let's Encrypt:
sudo systemctl stop nginx sudo vim /etc/nginx/sites-available/peertube # Comment ssl_certificate and ssl_certificate_key lines sudo certbot --authenticator standalone --installer nginx --post-hook "systemctl start nginx" sudo vim /etc/nginx/sites-available/peertube # Uncomment ssl_certificate and ssl_certificate_key lines sudo systemctl reload nginx
Ce rappeler qu'il faut le renouveler tous les 90 jours !
Recharger nginx:
sudo systemctl reload nginx
TCP/IP Tuning
sudo cp /var/www/peertube/peertube-latest/support/sysctl.d/30-peertube-tcp.conf /etc/sysctl.d/ sudo sysctl -p /etc/sysctl.d/30-peertube-tcp.conf
Your distro may enable this by default, but at least Debian 9 does not, and the default FIFO scheduler is quite prone to “Buffer Bloat” and extreme latency when dealing with slower client links as we often encounter in a video server.
systemd
Si votre OS utilise systemd, copier la configuration suivante:
sudo cp /var/www/peertube/peertube-latest/support/systemd/peertube.service /etc/systemd/system/
mettre à jour le fichier service :
sudo vim /etc/systemd/system/peertube.service
Dire au systemd de relire la config:
sudo systemctl daemon-reload
Si vous voulez que Peerture redémarre au boot:
sudo systemctl enable peertube
Démarrer:
sudo systemctl start peertube sudo journalctl -feu peertube
Configuration css
Dans administration, configuration, configuration avancé et personnalisation.
#custom-css .header { color: white; background-color: #8530bfff; } #custom-css .main-col { background-color: white; } #custom-css { --mainColor: #9073ffff; --mainHoverColor: #6639afff; --mainForegroundColor: black; --menuBackgroundColor: #2d1040ff; --menuForegroundColor: white; --submenuColor: #AFAED6; --inputColor: white; --inputPlaceholderColor: black; }
source : https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/production.md