mirror of
https://github.com/YunoHost-Apps/peertube_ynh.git
synced 2024-09-03 19:56:29 +02:00
parent
16bc11e945
commit
2032d0f83a
5 changed files with 70 additions and 38 deletions
|
@ -12,19 +12,22 @@ Servers are run independently by different people and organizations. They can ap
|
|||
|
||||
By watching a video, you help the hosting provider to broadcast it by becoming a broadcaster of the video yourself. Each instance doesn't need much money to broadcast the videos of its users.
|
||||
|
||||
* Any known limitations, constrains or stuff not working, such as (but not limited to):
|
||||
* Require **dedicated domain** like **peertube.domain.tld**.
|
||||
* Admin username is: **root**.
|
||||
* **Admin password and LDAP configuration** will be sent to the email address given at the time of the installation.
|
||||
* URL can not be changed once selected. Choose the domain wisely.
|
||||
* You need more then **1 GB** of RAM. If you don't have it, please create a **swap memory**.
|
||||
### IMPORTANT POINT TO READ BEFORE INSTALLING
|
||||
* Require **dedicated domain** like **peertube.domain.tld**.
|
||||
* Admin username is: **root**.
|
||||
* **Admin password and LDAP configuration** will be sent to the email address given at the time of the installation.
|
||||
* URL can not be changed once selected. Choose the domain wisely.
|
||||
* You need more then **1 GB** of RAM. If you don't have it, please create a **swap memory**.
|
||||
|
||||
$ dd if=/dev/zero of=/swapfile bs=1024 count=1048576
|
||||
$ mkswap /swapfile
|
||||
$ swapon /swapfile
|
||||
$ echo "/swapfile swap swap defaults 0 0" >> /etc/fstab
|
||||
|
||||
* This app is **multi-instance** (you can have more then one PeerTube instance running on a YunoHost server)
|
||||
* **If you are hosted on OVH virtual machine or experiencing `gyp ERR! configure error`, please switch to [ovh_fix](https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix)**
|
||||
* LDAP auth is supported, LDAP configuration will be sent to the email address given at the time of the installation.
|
||||
* HTTP auth is not supported
|
||||
* This app is **multi-instance** (you can have more then one PeerTube instance running on a YunoHost server)
|
||||
* **If you are hosted on OVH virtual machine or experiencing `gyp ERR! configure error`, please switch to [ovh_fix](https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix)**
|
||||
* HTTP auth is not supported
|
||||
|
||||
### PLUGINS
|
||||
* LDAP auth is supported, LDAP configuration will be sent to the email address given at the time of the installation.
|
||||
* PeerTube plugin livechat is installed with Prosody. To enable, just select «Prosody server controlled by Peertube» as chat mode in the plugin configutation of the PeerTube admin page
|
||||
|
|
|
@ -1,8 +1,3 @@
|
|||
## Vue d'ensemble
|
||||
|
||||
### Qu'est-ce que PeerTube ?
|
||||
PeerTube est une plateforme de streaming vidéo fédérée (ActivityPub) utilisant P2P (BitTorrent) directement dans le navigateur Web, en utilisant <a href="https://github.com/feross/webtorrent"> WebTorrent </a>.
|
||||
|
||||
### Pourquoi PeerTube?
|
||||
|
||||
Nous ne pouvons pas créer d'alternatives de streaming vidéo FOSS à YouTube, Dailymotion, Vimeo... avec un logiciel centralisé. Une organisation seule ne peut pas avoir assez d'argent pour payer la bande passante et le stockage vidéo de son serveur.
|
||||
|
@ -15,26 +10,22 @@ Les serveurs sont gérés indépendamment par différentes personnes et organisa
|
|||
|
||||
En regardant une vidéo, vous aidez l'hébergeur à la diffuser en devenant vous-même un diffuseur de la vidéo. Chaque instance n'a pas besoin de beaucoup d'argent pour diffuser les vidéos de ses utilisateurs.
|
||||
|
||||
## Points importants à lire avant l'installation
|
||||
|
||||
1. Nécessite un **domaine dédié** comme **peertube.domain.tld**.
|
||||
1. Le nom d'utilisateur de l'administrateur est: **root**.
|
||||
1. **Le mot de passe administrateur et la configuration LDAP** seront envoyés à l'adresse email indiquée au moment de l'installation.
|
||||
1. L'URL ne peut pas être modifiée une fois sélectionnée. Choisissez judicieusement le domaine.
|
||||
1. Vous avez besoin de plus de **1 Go** de RAM. Si vous ne l'avez pas, veuillez créer une **mémoire swap**.
|
||||
|
||||
### Points importants à lire avant l'installation
|
||||
* Nécessite un **domaine dédié** comme **peertube.domain.tld**.
|
||||
* Le nom d'utilisateur de l'administrateur est: **root**.
|
||||
* **Le mot de passe administrateur et la configuration LDAP** seront envoyés à l'adresse email indiquée au moment de l'installation.
|
||||
* L'URL ne peut pas être modifiée une fois sélectionnée. Choisissez judicieusement le domaine.
|
||||
* Vous avez besoin de plus de **1 Go** de RAM. Si vous ne l'avez pas, veuillez créer une **mémoire swap**.
|
||||
|
||||
$ dd if=/dev/zero of=/swapfile bs=1024 count=1048576
|
||||
$ mkswap /swapfile
|
||||
$ swapon /swapfile
|
||||
$ echo "/swapfile swap swap defaults 0 0" >> /etc/fstab
|
||||
|
||||
1. Cette application est **multi-instance** (vous pouvez avoir plus d'une instance PeerTube en cours d'exécution sur un serveur YunoHost)
|
||||
1. **Si vous êtes hébergé sur une machine virtuelle OVH ou rencontrez `gyp ERR! configure error`, veuillez passer à [ovh_fix](https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix)**
|
||||
* Cette application est **multi-instance** (vous pouvez avoir plus d'une instance PeerTube en cours d'exécution sur un serveur YunoHost)
|
||||
* **Si vous êtes hébergé sur une machine virtuelle OVH ou rencontrez `gyp ERR! configure error`, veuillez passer à [ovh_fix](https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix)**
|
||||
|
||||
## Caractéristiques spécifiques YunoHost
|
||||
|
||||
#### Support multi-utilisateur
|
||||
#### PLUGINS
|
||||
|
||||
* L'authentification LDAP est prise en charge, les instructions de configuration sont envoyées à l'adresse email indiquée au moment de l'installation
|
||||
* L'authentification HTTP n'est pas prise en charge
|
||||
* le plugin PeerTube livechat est installé ainsi que Prosody. pour l'activer, sélectionner «Prosody server controlled by Peertube» dans le paramétre chat mode du plugin dans la page d'administration de PeerTube.
|
||||
|
|
|
@ -91,6 +91,11 @@ ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies
|
|||
# Install Yarn
|
||||
ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
||||
|
||||
if ! yunohost app list | grep -q "prosody"
|
||||
then
|
||||
yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password"
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# CREATE DEDICATED USER
|
||||
#=================================================
|
||||
|
@ -165,7 +170,7 @@ ynh_script_progression --message="Building Yarn dependencies..."
|
|||
|
||||
pushd "$final_path"
|
||||
ynh_use_nodejs
|
||||
ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH yarn install --production --pure-lockfile
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH yarn install --production --pure-lockfile
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
@ -205,7 +210,21 @@ ynh_systemd_action --service_name=$app --action="start" --log_path="systemd" --l
|
|||
ynh_script_progression --message="Installing LDAP plugin..."
|
||||
|
||||
pushd "$final_path"
|
||||
ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run plugin:install -- --npm-name peertube-plugin-auth-ldap
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run plugin:install -- --npm-name peertube-plugin-auth-ldap
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
# INSTALL PEERTUBE LIVECHAT PLUGIN
|
||||
#=================================================
|
||||
ynh_script_progression --message="Installing PeerTube livechat plugin..."
|
||||
|
||||
if ! yunohost app list | grep -q "prosody"
|
||||
then
|
||||
yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password"
|
||||
fi
|
||||
|
||||
pushd "$final_path"
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run plugin:install -- --npm-name peertube-plugin-livechat
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
@ -214,7 +233,7 @@ popd
|
|||
ynh_script_progression --message="Changing PeerTube admin password..."
|
||||
|
||||
pushd "$final_path"
|
||||
echo $admin_pass | ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run reset-password -- -u root
|
||||
echo $admin_pass | ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run reset-password -- -u root
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
|
|
@ -102,6 +102,11 @@ ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies
|
|||
# Install Yarn
|
||||
ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
||||
|
||||
if ! yunohost app list | grep -q "prosody"
|
||||
then
|
||||
yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password"
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# RESTORE THE POSTGRESQL DATABASE
|
||||
#=================================================
|
||||
|
|
|
@ -139,6 +139,10 @@ if ! ynh_permission_exists --permission="api"; then
|
|||
ynh_permission_create --permission="api" --url="/api" --allowed="visitors" --auth_header="false" --show_tile="false" --protected="true"
|
||||
fi
|
||||
|
||||
# Remove hook
|
||||
ynh_secure_remove --file="/usr/share/yunohost/hooks/conf_regen/15-nginx_$app"
|
||||
yunohost tools regen-conf nginx
|
||||
|
||||
#=================================================
|
||||
# CREATE DEDICATED USER
|
||||
#=================================================
|
||||
|
@ -212,9 +216,10 @@ ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies
|
|||
# Install Yarn
|
||||
ynh_install_extra_app_dependencies --repo="deb https://dl.yarnpkg.com/debian/ stable main" --package="yarn" --key="https://dl.yarnpkg.com/debian/pubkey.gpg"
|
||||
|
||||
# Remove hook
|
||||
ynh_secure_remove --file="/usr/share/yunohost/hooks/conf_regen/15-nginx_$app"
|
||||
yunohost tools regen-conf nginx
|
||||
if ! yunohost app list | grep -q "prosody"
|
||||
then
|
||||
yunohost app install prosody --args "domain=$domain&admin=$admin&language=$language&password=$password"
|
||||
fi
|
||||
|
||||
#=================================================
|
||||
# SPECIFIC UPGRADE
|
||||
|
@ -249,7 +254,7 @@ ynh_script_progression --message="Building Yarn dependencies..."
|
|||
|
||||
pushd "$final_path"
|
||||
ynh_use_nodejs
|
||||
ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH yarn install --production --pure-lockfile
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH yarn install --production --pure-lockfile
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
@ -274,7 +279,16 @@ ynh_systemd_action --service_name=$app --action="start" --log_path="systemd" --l
|
|||
ynh_script_progression --message="Installing LDAP plugin..."
|
||||
|
||||
pushd "$final_path"
|
||||
ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run plugin:install -- --npm-name peertube-plugin-auth-ldap
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run plugin:install -- --npm-name peertube-plugin-auth-ldap
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
# INSTALL PEERTUBE LIVECHAT PLUGIN
|
||||
#=================================================
|
||||
ynh_script_progression --message="Installing PeerTube livechat plugin..."
|
||||
|
||||
pushd "$final_path"
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_npm run plugin:install -- --npm-name peertube-plugin-livechat
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
@ -284,7 +298,7 @@ popd
|
|||
if ynh_compare_current_package_version --comparison lt --version 4.0.0~ynh1; then
|
||||
ynh_script_progression --message="Running Peertube 4.0.0 migration script..."
|
||||
pushd "$final_path"
|
||||
ynh_exec_warn_less sudo -u $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_node dist/scripts/migrations/peertube-4.0.js
|
||||
ynh_exec_warn_less ynh_exec_as $app env $ynh_node_load_PATH NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production $ynh_node dist/scripts/migrations/peertube-4.0.js
|
||||
popd
|
||||
fi
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue