Professional PeerTube Installation
-
-
@nebulon said in Professional PeerTube Installation:
I guess it would help to have those as independent items as glancing over those, they require much different things. Some even to customize the reverse proxy configs.
Did you manage to get some of those items going in a custom peertube app build?Hi, nebulon! Thank you very much for looking at this. No, I haven't. For a fully-featured PeerTube, these are the additional components to the its standard basic installation. Cloudron has some of these applications already, though.
If you don't move the videos off of the main installation, regular backups become very large, very quickly. So, Object Storage is needed. If there is object storage, then it strongly recommends a caching server. Then they suggest an additional server to enable secure import of youtube channels. Then, if you want to enable search, Peertube has Sepia which is another application. To monitor it all, grafana and to see traffic, matomo.
It is a lot, but if Cloudron were able to do that all with a deployment or two, I think the PeerTube community would be flocking at the Cloudron door.
-
@LoudLemur
i do have 3 of these already implemented in my Cloudron based, Peertube app:-
Object storage for the videos - so that videos are stored on object storage
-
video runner - so that you can make use of a high powered gpu for e.g. transcoding
-
Matomo - Setup analytics using matomo
-
-
Sure.
- My data is stored in 3 places:
a. local storage (Only this is included in the 'App backups')
b. mounted volume (for certain options that are temporarily space-intensive, like:tmp
&streaming_playlists
)
c. object storage (primary/permanent storage for the video files)
The config in
production.yaml
:storage: tmp: '/media/my-mounted-volume/my-project/storage/tmp/' # Use to download data (imports etc), store uploaded files before processing... avatars: '/app/data/storage/avatars/' streaming_playlists: '/media/my-mounted-volume/my-project/storage/streaming-playlists/' redundancy: '/app/data/storage/redundancy/' logs: '/app/data/storage/logs/' previews: '/app/data/storage/previews/' thumbnails: '/app/data/storage/thumbnails/' torrents: '/app/data/storage/torrents/' captions: '/app/data/storage/captions/' cache: '/app/data/storage/cache/' plugins: '/app/data/storage/plugins/' client_overrides: '/app/data/storage/client-overrides/' bin: /app/data/storage/bin/ well_known: /app/data/storage/well_known/ tmp_persistent: /app/data/storage/tmp_persistent/ # Use two different buckets for Web videos and HLS videos on AWS S3 storyboards: /app/data/storage/storyboards/ web_videos: /app/data/storage/web-videos/ object_storage: enabled: true # Example AWS endpoint in the us-east-1 region endpoint: 'region.my-s3-domain' # Needs to be set to the bucket region when using AWS S3 region: 'region' web_videos: bucket_name: 'my-bucket-name' prefix: 'direct/' streaming_playlists: bucket_name: 'my-bucket-name' prefix: 'playlist/' AWS_ACCESS_KEY_ID: 'my-key-ID' AWS_SECRET_ACCESS_KEY: 'my-access-key' credentials: aws_access_key_id: 'my-key-ID' aws_secret_access_key: 'my-access-key' access_key_id: 'my-key-ID' secret_access_key: 'my-access-key' max_upload_part: '1GB'
- For Remote Runners:
a.
b.
c. Set up remote machine(s) using the Peertube CLI to connect to your app, using the
Runner registration tokens
.https://docs.joinpeertube.org/maintain/tools#peertube-runner
- For Matomo, i'm using a plugin: https://www.npmjs.com/package/peertube-plugin-matomo
- My data is stored in 3 places:
-
OIDC (Open Identification Connect) is available as an experimental option in the PeerTube chat module.
Using Cloudron, how could we offer OIDC logins for e.g. PeerTube?
OIDC on Peertube
https://johnxlivingston.github.io/peertube-plugin-livechat/documentation/admin/external_auth/ -
@LoudLemur said in Professional PeerTube Installation:
Using Cloudron, how could we offer OIDC logins for e.g. PeerTube?
We already have this:
-
Regarding the setting up of a proxy for the peertube instance in order to allow a channel to safely sync with a channel on e.g. Youtube:
https://framacolibri.org/t/proxy-environment-variables/19971/4
"If your Peertube is the only service on the server, and is not part of a local/private network, you can probably ignore this step."
So, for a remote VPS, where Cloudron has exclusive access to the server, probably no proxy would be needed. If running Cloudron on a home network though, one would be of benefit. @girish maybe a Cloudron package of Peertube with all the features supported could include a server just for this home-network use case?