mirror of
https://github.com/YunoHost-Apps/peertube_ynh.git
synced 2024-09-03 19:56:29 +02:00
Merge branch 'ovh_fix_testing' into example_ynh
This commit is contained in:
commit
e500d43bda
3 changed files with 83 additions and 83 deletions
146
README.md
146
README.md
|
@ -1,83 +1,77 @@
|
|||
# PeerTube app for YunoHost
|
||||
# ovh_fix branch for peertube_ynh
|
||||
|
||||
[![Integration level](https://dash.yunohost.org/integration/peertube.svg)](https://dash.yunohost.org/appci/app/peertube)
|
||||
[![Install PeerTube with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=peertube)
|
||||
If installing on an ovh virtual machine or having `gyp ERR! configure error` please follow the steps below
|
||||
|
||||
## Overview
|
||||
## Steps for installing
|
||||
|
||||
### What is PeerTube ?
|
||||
PeerTube is a federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser, using <a href="https://github.com/feross/webtorrent">WebTorrent</a>.
|
||||
|
||||
### Why PeerTube ?
|
||||
1. Install nodejs
|
||||
|
||||
We can't build a FOSS video streaming alternatives to YouTube, Dailymotion, Vimeo... with a centralized software. One organization alone cannot have enough money to pay bandwidth and video storage of its server.
|
||||
|
||||
So we need to have a decentralized network of servers seeding videos (as [Hubzilla YunoHost](https://github.com/YunoHost-Apps/hubzilla_ynh), [Friendica YunoHost](https://github.com/YunoHost-Apps/friendica_ynh),[Mastodon YunoHost](https://github.com/YunoHost-Apps/mastodon_ynh)), [Diaspora](https://github.com/diaspora/diaspora) ([Diaspora YunoHost](https://github.com/YunoHost-Apps/diaspora_ynh)),[Funkwhale](https://funkwhale.audio) ([Funkwhale YunoHost](https://github.com/YunoHost-Apps/funkwhale_ynh))).
|
||||
But it's not enough because one video could become famous and overload the server.
|
||||
It's the reason why we need to use a P2P protocol to limit the server load.
|
||||
Thanks to [WebTorrent](https://github.com/feross/webtorrent), we can make P2P (thus BitTorrent) inside the web browser, as of today.
|
||||
|
||||
### Why is that cool ?
|
||||
Servers are run independently by different people and organizations. They can apply wildly different moderation policies, so you can find or make one that fits your taste perfectly.
|
||||
|
||||
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.
|
||||
|
||||
**Shipped version:** 2.1.0
|
||||
|
||||
## Important points to read before installing
|
||||
|
||||
1. Require **dedicated domain** like **peertube.domain.tld**.
|
||||
1. **No LDAP** support (blocked until PeerTube core upstream implements it)
|
||||
1. Admin username is : **root**.
|
||||
1. **Admin password** will be sent to the email address given at the time of the installation.
|
||||
1. URL can not be changed once selected. Choose the domain wisely.
|
||||
1. You need more then **1GB** 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
|
||||
1. This app is **multi-instance** (you can have more then one PeerTube instance running on a YunoHost server)
|
||||
1. **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)**
|
||||
|
||||
## Screenshots
|
||||
|
||||
![](https://framablog.org/wp-content/uploads/2018/03/Framatube-au-lancement.png)
|
||||
|
||||
## Demo
|
||||
|
||||
Want to see in action?
|
||||
|
||||
* [Here](http://peertube.cpy.re) are the list of instances ran by people around the world. Be a part of it.
|
||||
|
||||
## Documentation
|
||||
|
||||
* Official documentation: https://docs.joinpeertube.org/
|
||||
|
||||
## YunoHost specific features
|
||||
|
||||
#### Supported architectures
|
||||
|
||||
* x86-64b - [![Build Status](https://ci-apps.yunohost.org/ci/logs/peertube%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/peertube/)
|
||||
* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/peertube%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/peertube/)
|
||||
|
||||
## Links
|
||||
|
||||
* Report a bug: https://github.com/YunoHost-Apps/peertube_ynh/issues
|
||||
* App website: https://joinpeertube.org/fr/
|
||||
* GitHub App website: https://github.com/Chocobozzz/PeerTube/
|
||||
* YunoHost website: https://yunohost.org/
|
||||
|
||||
---
|
||||
|
||||
Developers info
|
||||
----------------
|
||||
|
||||
Please do your pull request to the [testing branch](https://github.com/YunoHost-Apps/peertube_ynh/tree/testing).
|
||||
|
||||
To try the testing branch, please proceed like that.
|
||||
```
|
||||
sudo yunohost app install https://github.com/YunoHost-Apps/peertube_ynh/tree/testing --debug
|
||||
or
|
||||
sudo yunohost app upgrade peertube -u https://github.com/YunoHost-Apps/peertube_ynh/tree/testing --debug
|
||||
$ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
|
||||
$ sudo apt-get install -y nodejs
|
||||
```
|
||||
|
||||
2. Install the peertube with **OVH fix** branch.
|
||||
|
||||
```
|
||||
$ yunohost app install https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix --debug
|
||||
```
|
||||
|
||||
3. After installation is complete run **yarn install**.
|
||||
|
||||
```
|
||||
$ cd /var/www/peertube && yarn install --production --pure-lockfile
|
||||
```
|
||||
|
||||
4. Give proper **permissions** to peertube
|
||||
|
||||
```
|
||||
$ chown -R peertube:peertube /var/www/peertube
|
||||
```
|
||||
|
||||
5. **Restart peertube** and check if there is any error message.
|
||||
|
||||
```
|
||||
$ service peertube restart
|
||||
$ journalctl -feu peertube
|
||||
```
|
||||
|
||||
6. If there is no **error in red** in the last lines of log. Press **ctrl+c** to stop the logs.
|
||||
|
||||
7. Go to your **domain** to check if peertube is running and everthing is ok.
|
||||
|
||||
8. Change your **root password** by this command:
|
||||
|
||||
```
|
||||
$ cd /var/www/peertube && NODE_CONFIG_DIR="/var/www/peertube/config/" NODE_ENV=production npm run reset-password -- -u root
|
||||
```
|
||||
|
||||
Username: **root**
|
||||
password: **created in above step**
|
||||
|
||||
## Steps for upgrading
|
||||
|
||||
1. Upgrade peertube with **OVH fix** branch.
|
||||
|
||||
```
|
||||
$ yunohost app upgrade peertube -u https://github.com/YunoHost-Apps/peertube_ynh/tree/ovh_fix --debug
|
||||
```
|
||||
|
||||
2. After upgrade is complete run **yarn install**.
|
||||
|
||||
```
|
||||
$ cd /var/www/peertube && yarn install --production --pure-lockfile
|
||||
```
|
||||
|
||||
3. Give proper **permissions** to peertube
|
||||
|
||||
```
|
||||
$ chown -R peertube:peertube /var/www/peertube
|
||||
```
|
||||
|
||||
4. **Restart peertube** and check if there is any error message.
|
||||
|
||||
```
|
||||
$ service peertube restart
|
||||
```
|
||||
|
|
|
@ -73,7 +73,7 @@ ynh_app_setting_set --app=$app --key=port --value=$port
|
|||
ynh_print_info --message="Installing dependencies..."
|
||||
|
||||
# Install nodejs
|
||||
ynh_install_nodejs --nodejs_version=10
|
||||
#ynh_install_nodejs --nodejs_version=10
|
||||
|
||||
# Install dependencies
|
||||
ynh_install_app_dependencies $pkg_dependencies
|
||||
|
@ -188,7 +188,7 @@ chown -R "$app":"$app" $final_path
|
|||
|
||||
pushd "$final_path"
|
||||
ynh_use_nodejs
|
||||
sudo -u $app env PATH=$PATH yarn install --production --pure-lockfile
|
||||
#sudo -u $app env PATH=$PATH yarn install --production --pure-lockfile
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
@ -231,7 +231,7 @@ yunohost service add $app --description "$app daemon for Peertube" --log "/home/
|
|||
ynh_print_info --message="Starting a systemd service..."
|
||||
|
||||
# Start a systemd service
|
||||
ynh_systemd_action --service_name=$app --action="start" --log_path="systemd" --line_match="Server listening on localhost"
|
||||
#ynh_systemd_action --service_name=$app --action="start" --log_path="systemd" --line_match="Server listening on localhost"
|
||||
|
||||
#=================================================
|
||||
# SETUP SSOWAT
|
||||
|
@ -258,7 +258,7 @@ ynh_systemd_action --service_name=nginx --action=reload
|
|||
|
||||
# we need to wait for the service to init peertube's database
|
||||
pushd "$final_path"
|
||||
echo $admin_pass | NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production npm run reset-password -- -u root
|
||||
#echo $admin_pass | NODE_CONFIG_DIR="$final_path/config" NODE_ENV=production npm run reset-password -- -u root
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
|
|
@ -125,6 +125,13 @@ then
|
|||
cp ../conf/local-production.json "$final_path/config/local-production.json"
|
||||
fi
|
||||
|
||||
if [ -s "$tmpdir/local-production.json" ]
|
||||
then
|
||||
cp -a "$tmpdir/local-production.json" "$final_path/config/local-production.json"
|
||||
else
|
||||
cp ../conf/local-production.json "$final_path/config/local-production.json"
|
||||
fi
|
||||
|
||||
# Remove the tmp directory securely
|
||||
ynh_secure_remove --file="$tmpdir"
|
||||
fi
|
||||
|
@ -143,8 +150,7 @@ ynh_add_nginx_config
|
|||
ynh_print_info --message="Upgrading dependencies..."
|
||||
|
||||
# Install nodejs
|
||||
ynh_remove_nodejs --nodejs_version=8
|
||||
ynh_install_nodejs --nodejs_version=10
|
||||
#ynh_install_nodejs --nodejs_version=10
|
||||
|
||||
# Install dependencies
|
||||
ynh_install_app_dependencies $pkg_dependencies
|
||||
|
@ -207,7 +213,7 @@ chown -R "$app":"$app" $final_path
|
|||
|
||||
pushd "$final_path"
|
||||
ynh_use_nodejs
|
||||
sudo -u $app env PATH=$PATH yarn install --production --pure-lockfile
|
||||
#sudo -u $app env PATH=$PATH yarn install --production --pure-lockfile
|
||||
popd
|
||||
|
||||
#=================================================
|
||||
|
|
Loading…
Reference in a new issue