1
0
Fork 0

(doc) update architecture, tools and readme

This commit is contained in:
Rigel Kent 2018-10-14 21:08:52 +02:00
parent 1e59ca3bac
commit 12b119c05a
No known key found for this signature in database
GPG key ID: EA12971B0E438F36
3 changed files with 48 additions and 15 deletions

View file

@ -2,10 +2,16 @@
## Vocabulary ## Vocabulary
- **Fediverse:** several servers following each others. - **Fediverse:** several servers following one another, several users
following each other. Designates federated communities in general.
- **Vidiverse:** same as Fediverse, but federating videos specifically.
- **Instance:** a server which runs PeerTube in the fediverse. - **Instance:** a server which runs PeerTube in the fediverse.
- **Origin instance:** the instance on which the video was uploaded and which - **Origin instance:** the instance on which the video was uploaded and which
is seeding (through the WebSeed protocol) the video. is seeding (through the WebSeed protocol) the video.
- **Cache instance:** an instance that decided to make available a WebSeed
of its own for a video originating from another instance. It sends a `ptCache`
activity to notify the origin instance, which will then update its list of
WebSeeds for the video.
- **Following:** the action of a PeerTube instance which will follow another - **Following:** the action of a PeerTube instance which will follow another
instance (subscribe to its videos). instance (subscribe to its videos).
@ -22,8 +28,8 @@
* All the requests are retried several times if they fail. * All the requests are retried several times if they fail.
### Instance ### Instance
* An instance has a websocket tracker which is responsible for all the video * An instance has a websocket tracker which is responsible for all videos
uploaded in it. uploaded by its users.
* An instance has an administrator that can follow other instances. * An instance has an administrator that can follow other instances.
* An instance can be configured to follow back automatically. * An instance can be configured to follow back automatically.
* An instance can blacklist other instances (only used in "follow back" * An instance can blacklist other instances (only used in "follow back"

File diff suppressed because one or more lines are too long

View file

@ -1,3 +1,30 @@
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*
- [CLI tools guide](#cli-tools-guide)
- [CLI wrapper](#cli-wrapper)
- [Remote Tools](#remote-tools)
- [Dependencies](#dependencies)
- [Installation](#installation)
- [peertube-import-videos.js](#peertube-import-videosjs)
- [peertube-upload.js](#peertube-uploadjs)
- [peertube-watch.js](#peertube-watchjs)
- [Server tools](#server-tools)
- [parse-log](#parse-log)
- [create-transcoding-job.js](#create-transcoding-jobjs)
- [create-import-video-file-job.js](#create-import-video-file-jobjs)
- [prune-storage.js](#prune-storagejs)
- [optimize-old-videos.js](#optimize-old-videosjs)
- [update-host.js](#update-hostjs)
- [REPL (Read Eval Print Loop)](#repl-read-eval-print-loop)
- [.help](#help)
- [Lodash example](#lodash-example)
- [YoutubeDL example](#youtubedl-example)
- [Models examples](#models-examples)
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
# CLI tools guide # CLI tools guide
- [CLI wrapper](#cli-wrapper) - [CLI wrapper](#cli-wrapper)
- [Remote tools](#remote-tools) - [Remote tools](#remote-tools)
@ -159,7 +186,7 @@ $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production
### create-transcoding-job.js ### create-transcoding-job.js
You can use this script to force transcoding of an existing video. You can use this script to force transcoding of an existing video. PeerTube needs to be running.
``` ```
$ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run create-transcoding-job -- -v [videoUUID] $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run create-transcoding-job -- -v [videoUUID]
@ -172,7 +199,7 @@ $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production
### create-import-video-file-job.js ### create-import-video-file-job.js
You can use this script to import a video file to replace an already uploaded file or to add a new resolution to a video. You can use this script to import a video file to replace an already uploaded file or to add a new resolution to a video. PeerTube needs to be running.
``` ```
$ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run create-import-video-file-job -- -v [videoUUID] -i [videoFile] $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run create-import-video-file-job -- -v [videoUUID] -i [videoFile]
@ -189,9 +216,10 @@ $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production
### optimize-old-videos.js ### optimize-old-videos.js
Before version v1.0.0-beta.16, Peertube did not specify a bitrate for the transcoding of uploaded videos. Before version v1.0.0-beta.16, Peertube did not specify a bitrate for the
This means that videos might be encoded into very large files that are too large for streaming. This script transcoding of uploaded videos. This means that videos might be encoded into
re-transcodes these videos so that they can be watched properly, even on slow connections. very large files that are too large for streaming. This script re-transcodes
these videos so that they can be watched properly, even on slow connections.
``` ```
$ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run optimize-old-videos $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run optimize-old-videos
@ -200,8 +228,9 @@ $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production
### update-host.js ### update-host.js
If you started PeerTube with a domain, and then changed it you will have invalid torrent files and invalid URLs in your database. If you started PeerTube with a domain, and then changed it you will have
To fix this, you have to run: invalid torrent files and invalid URLs in your database. To fix this, you have
to run:
``` ```
$ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run update-host $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production npm run update-host
@ -209,7 +238,7 @@ $ sudo -u peertube NODE_CONFIG_DIR=/var/www/peertube/config NODE_ENV=production
### REPL ([Read Eval Print Loop](https://nodejs.org/docs/latest-v8.x/api/repl.html)) ### REPL ([Read Eval Print Loop](https://nodejs.org/docs/latest-v8.x/api/repl.html))
If you want to interact with the application libraries and objects, there is a REPL for that. If you want to interact with the application libraries and objects even when PeerTube is not running, there is a REPL for that.
usage: `node ./dist/server/tools/repl.js` usage: `node ./dist/server/tools/repl.js`