Considering PeerTube or Bunny.net Integration for Video Hosting with Discourse

Hello everyone,

I’ve recently built a Discourse forum and enabled users to upload videos.
However, I noticed that Discourse’s built-in video handling isn’t very efficient or user-friendly.

I don’t have much coding experience, but from what I’ve learned, this might be due to how Discourse handles video playback at the system level — it can put heavy load on the server, especially when users upload large video files.

Because of that, I started exploring PeerTube as an external video hosting system to support video uploads and playback for my forum.


:small_blue_diamond: Issue 1: PeerTube videos don’t embed properly in Discourse

When I paste a PeerTube video link into the Discourse composer, it only shows a thumbnail preview — not an embedded player.
Users need to click the thumbnail and get redirected to PeerTube to watch the video, just like how Google Drive video links behave.

I also tried using PeerTube’s iframe embed code, but it didn’t work either.
In fact, after posting, the reply became completely blank and no video appeared at all.


:small_blue_diamond: Issue 2: Desired integration between PeerTube and Discourse

If I can make PeerTube videos playable directly inside Discourse, my ideal setup would be to connect the membership systems of both platforms.

Here’s what I hope to achieve:

  • When a logged-in user uploads a video on Discourse,

  • The video is actually uploaded to PeerTube under the same linked account,

  • And a playback link (or embedded player) is automatically inserted into the Discourse post.

This would keep videos off the Discourse server while maintaining a seamless user experience.


:small_blue_diamond: Alternative idea: Bunny.net integration

I recently learned about https://dash.bunny.net, which seems like a promising video distribution service.

In theory, it would be perfect if:

  • The forum admin registers and pays for a Bunny.net account, and

  • All videos uploaded by users on Discourse are actually uploaded to Bunny.net under the admin’s account,

  • With playback handled through Bunny’s CDN for fast delivery.

I understand that cross-system integration like this might be difficult, but I wanted to ask whether it’s possible or if any similar projects already exist.


:speech_balloon: Closing note

I’m not a programmer, so please forgive me if some of my assumptions are technically naïve.
Still, I really want to find a sustainable way to handle video uploads and playback on Discourse.

If anyone has experience connecting Discourse with PeerTube, Bunny.net, or any other video hosting platform,
I would greatly appreciate your advice or guidance.

Thank you very much for your time and help. :folded_hands:

Did you add PeerTube to the iframe whitelist setting?

Still, it would be asking a bit much of your users to embed iframes.

There is a YouTube + Vimeo Theme component which achieved pretty much what you are seeking (at least with Vimeo), but it sadly hasn’t been maintained:

Did you ever figure this out? I am currently experimenting with peertube and would like to be able to embed videos directly in my discourse posts. These are short screencasts and my site is private and not busy, so this should be a no brainer. But I am getting the same behavior as in the OP.

+1 to both services, I self-host Peertube and have used Bunny for years.

The answer appears to be in this older topic. You have to add the URL of the peertube server you want to use to the allowed iframes admin setting. So far I am seeing the video show up in my post but when I hit play it does not play. Still fiddling..