Owncast hosten op een Managed VPS: uw livestreams op uw eigen server

Owncast hosten op een Managed VPS betekent dat u uw live video uitzendt en de chat ervan beheert vanaf een machine die van u is, en die ons team bijwerkt en dag en nacht in de gaten houdt. Owncast is vrije software onder de MIT-licentie. Deze gids volgt de officiële documentatie: de CPU en bandbreedte waarmee u rekent, de installatie met Docker Compose, de streamsleutel, HTTPS, de videokwaliteiten, objectopslag, de chat, back-ups en updates.

Simon Vasconcelos Lee Door Gepubliceerd op 14 november 2026Leestijd: 15 minuten

Alle gidsen

In het kort

  1. Dankzij de MIT-licentie gebruikt, wijzigt en verspreidt u Owncast vrij, in een bedrijf of elders, op voorwaarde dat u de copyrightvermelding behoudt.
  2. De CPU doet de transcodering, en zijn belasting hangt niet af van het aantal kijkers; de bandbreedte groeit met elke kijker: bitrate × kijkers.
  3. Installeer het met Docker Compose: de image owncast/owncast, die ffmpeg meelevert, webpoort 8080 achter een reverse proxy met HTTPS, en RTMP-poort 1935 voor uw uitzendsoftware.
  4. Wijzig bij uw eerste aanmelding het beheerderswachtwoord en de streamsleutel: beide staan standaard op abc123.
  5. Owncast maakt elk uur een back-up van zijn database; kopieer de hele map data buiten de server voor een volledig herstel, en werk bij met docker compose pull.

Wat Owncast doet

Owncast is een opensource, zelf gehoste server voor live video en chat voor één gebruiker: één instantie draagt het kanaal van één persoon of organisatie. De README stelt het voor als een manier om uw eigen livestreams te verzorgen, in de stijl van de grote bekende platformen, terwijl u eigenaar blijft van uw inhoud, interface, moderatie en publiek.

Wat de MIT-licentie toestaat

Owncast wordt gepubliceerd onder de MIT-licentie. Die kent kosteloos het recht toe om kopieën van de software te gebruiken, te kopiëren, te wijzigen, samen te voegen, te publiceren, te verspreiden, in sublicentie te geven en te verkopen. U kunt het dus draaien voor uw bedrijf, uw community of uw klanten, zonder een licentie te kopen.

De enige voorwaarde is dat u de copyrightvermelding en de tekst van de licentie behoudt in alle kopieën of wezenlijke delen van de software. De tekst levert de software “zoals hij is”, zonder garantie.

CPU en bandbreedte: de server dimensioneren

De documentatie zegt het meteen: de behoeften hangen af van uw configuratie. Ze geeft wel een duidelijke regel om ze te schatten. De CPU transcodeert de video naar de kwaliteiten die u aanbiedt; de bandbreedte levert hem aan elke kijker.

De bandbreedte van de server

De documentatie geeft twee formules. Het volume van een stream, in gigabytes: bitrate in kbps × duur in seconden × kijkers ÷ 8.000.000. De piekdoorvoer naar buiten die u moet aanhouden, in Mbps: bitrate in kbps × kijkers ÷ 1.000. Met meerdere kwaliteiten berekent u elke kwaliteit apart en telt u ze op. Haar schattingen voor een stream van twee uur:

Bitrate van de stream10 kijkers25 kijkers50 kijkers
2.000 kbps18 GB, 20 Mbps45 GB, 50 Mbps90 GB, 100 Mbps
4.000 kbps36 GB, 40 Mbps90 GB, 100 Mbps180 GB, 200 Mbps
6.000 kbps54 GB, 60 Mbps135 GB, 150 Mbps270 GB, 300 Mbps

Op een Simafri-VPS heeft het verkeer geen maandelijkse teller: uw streams worden gedimensioneerd op hun piekbitrate. Groeit uw publiek, dan levert objectopslag, verderop behandeld, de video in plaats van de server.

De CPU

De documentatie geeft gemeten referentiepunten, en merkt op dat ze variëren met de codec, de bitrate, de resolutie en de preset van de encoder:

ConfiguratieCPU-belasting
Eén passthrough-kwaliteit, zonder hercoderingMinimaal
Eén getranscodeerde kwaliteitLicht
Twee kwaliteiten, hoog en laagGemiddeld
Drie kwaliteiten, of sterke compressieZwaar

De documentatie noemt geen cijfer voor het geheugen, en de schijf telt weinig: de videosegmenten worden geschreven en daarna verwijderd naarmate de stream vordert. Alleen de map data groeit met de tijd. Op een VPS doet de CPU de codering: elke getranscodeerde kwaliteit wordt in vCPU's gedimensioneerd. Vertel ons op een managed VPS over uw streams, hun bitrate, hun kwaliteiten en uw publiek, dan raden wij u de passende grootte aan.

Uw verbinding om uit te zenden

Voordat de stream de server bereikt, vertrekt hij vanaf uw eigen verbinding. De documentatie vraagt een uploadsnelheid van minstens 1,5 keer de bitrate van de stream: 7,5 Mbps voor een stream van 5.000 kbps. Ze raadt een bekabelde verbinding aan boven wifi.

De installatie met Docker Compose

De documentatie biedt de image owncast/owncast op Docker Hub aan, die ffmpeg bevat, het coderingsprogramma dat Owncast nodig heeft. Maak op een server waar Docker is geïnstalleerd een map aan en plaats daarin dit compose.yaml, overgenomen uit de documentatie:

compose.yaml
services:
  owncast:
    image: owncast/owncast:latest
    restart: unless-stopped
    ports:
      - "127.0.0.1:8080:8080"
      - "1935:1935"
    volumes:
      - ./data:/app/data
Terminal
docker compose up -d

Zonder Docker: het officiële installatieprogramma

De andere weg uit de documentatie is een script dat de laatste versie van Owncast voor uw platform downloadt, en ffmpeg als dat er nog niet is. Het installeert alles in een map owncast onder de huidige map. De documentatie raadt af het als root uit te voeren en beveelt aan elk script op afstand te lezen voordat u het uitvoert:

Terminal, met een eigen account
curl -s https://owncast.online/install.sh | bash

Wilt u dat Owncast met de server opstart en na een crash vanzelf herstart, dan levert de documentatie een systemd-dienst, aan te passen aan de map en het account die u koos:

/etc/systemd/system/owncast.service
[Unit]
Description=Owncast
After=network.target

[Service]
Type=simple
WorkingDirectory=/opt/owncast
ExecStart=/opt/owncast/owncast
User=owncast
Group=owncast
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
Terminal
sudo systemctl daemon-reload
sudo systemctl enable --now owncast

Beheerderswachtwoord en streamsleutel

Het beheer staat op /admin. Owncast start met toegangsgegevens die iedereen kent, en de documentatie vraagt ze bij uw eerste aanmelding te wijzigen:

InstellingStandaardwaardeWaarvoor ze dient
Gebruikersnaam van het beheeradminAanmelden op /admin
Beheerderswachtwoordabc123Aanmelden op /admin
Streamsleutelabc123De stream publiceren vanuit uw uitzendsoftware

Om deze wijziging te doen voordat de interface voor het publiek openstaat, gaat u via een SSH-tunnel: poort 8080 van de server verschijnt dan op uw computer, op http://localhost:8080/admin. Voeg -p en de SSH-poort toe die in uw klantenzone staat.

Terminal, op uw computer
ssh -L 8080:127.0.0.1:8080 user@live.example.com

Het beheerderswachtwoord en de streamsleutel starten allebei als abc123, maar het zijn twee aparte instellingen: wijzig ze allebei.

HTTPS: de reverse proxy

Owncast regelt HTTPS niet zelf. De documentatie zet er een reverse proxy voor, die op de poorten 80 en 443 luistert, het certificaat verkrijgt, het verkeer versleutelt en het onversleuteld doorgeeft aan Owncast op poort 8080. Zonder HTTPS markeren browsers de pagina als niet beveiligd, en een pagina die via HTTPS wordt aangeboden, kan uw video of uw chat niet insluiten.

Met Caddy

De documentatie stelt Caddy voor als u geen andere voorkeur hebt: het verkrijgt zelf een Let's Encrypt-certificaat en geeft WebSocket door zonder extra instelling. Hier is haar Caddyfile-voorbeeld, waarin de regel tls het e-mailadres van het Let's Encrypt-account opgeeft:

Caddyfile
live.example.com {
  encode gzip
  reverse_proxy 127.0.0.1:8080
  tls contact@example.com
}

Met Nginx

Bij Nginx legt de documentatie de nadruk op WebSocket: wie het vergeet, schakelt de chat uit. Voeg dit blok map toe aan de sectie http van /etc/nginx/nginx.conf:

nginx.conf, in http
map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

Dit siteblok volgt dat uit de documentatie, op poort 80 zodat Certbot HTTPS kan plaatsen:

Nginx-blok
server {
    listen 80;
    listen [::]:80;
    server_name live.example.com;

    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $connection_upgrade;
        proxy_set_header Authorization $http_authorization;
        proxy_pass_header Authorization;
        proxy_pass http://127.0.0.1:8080;
    }
}
Terminal
sudo nginx -t
sudo certbot --nginx

Uitzenden via RTMP vanuit OBS

Owncast aanvaardt elke software die via RTMP naar een externe server uitzendt. De sleutel wordt alleen aanvaard op het pad /live. In OBS:

  1. Open “Instellingen”, daarna “Stream”, en kies “Aangepast” als dienst.
  2. Voer het adres rtmp://live.example.com:1935/live in.
  3. Voer uw streamsleutel in, die uit het tabblad “Stream Keys” van Owncast.
  4. Start de uitzending.

Software zonder veld voor de sleutel aanvaardt het volledige adres, rtmp://live.example.com:1935/live/your-key.

Op een Simafri-VPS kan het IPv6-adres van de server elke poort openen die u kiest: uw uitzendsoftware bereikt poort 1935 via dat adres, onder een naam die het record AAAA draagt. Op een IPv4-netwerk van Docker, zoals hier, koppelt Docker de poort op het IPv6-adres van de server aan de container. Open die poort als ufw actief is, en test daarna vanaf uw computer:

Terminal
sudo ufw allow 1935/tcp
nc -6 -vz live.example.com 1935

Voor elke andere behoefte vertelt u ons wat u voor ogen hebt, en bekijken wij de adressering samen met u.

De instellingen van uw uitzendsoftware

ResolutieBeelden per secondeAanbevolen bitrate
1920 × 1080605.000 kbps
1920 × 1080304.500 kbps
1280 × 720604.000 kbps
1280 × 720303.000 kbps

Videokwaliteiten en latentie

De kwaliteiten die kijkers krijgen, stelt u in bij “Configuration”, “Video”. Met meerdere kwaliteiten kiest de speler de kwaliteit die zijn verbinding aankan: de documentatie raadt een tweede kwaliteit aan, van 1.000 tot 2.000 kbps, naast een hoge kwaliteit van 4.000 tot 6.000 kbps, zodra uw eerste configuratie getest is.

Passthrough geeft de binnenkomende video door zonder hem opnieuw te coderen: het bespaart vrijwel alle CPU van die kwaliteit, en negeert haar instellingen voor bitrate, resolutie en framerate. De documentatie behoudt het voor gevorderde gebruikers: kijkers ontvangen precies wat uw software stuurt, wat sommige spelers niet kunnen afspelen, en de latentie neemt toe. Test het afspelen op de toestellen die voor u tellen voordat u erop rekent.

De latentie stelt u in met de latentiebuffer, op dezelfde pagina. Elk niveau ruilt een beetje vertraging in voor stabiliteit, en een wijziging geldt vanaf de volgende stream:

NiveauLengte van een segmentSegmenten in de playlistGeschatte latentie
0, het laagst1 seconde25ongeveer 5 seconden
12 seconden15ongeveer 8 tot 9 seconden
2, standaard3 seconden10ongeveer 10 seconden
34 seconden8ongeveer 15 seconden
4, het hoogst5 seconden5ongeveer 18 seconden

Versie 0.3.0 voegt aan de kant van de kijker ook de optie “Minimize latency” van de speler toe, die het afspelen iets versnelt om dichter bij live te komen, en een instelling voor automatisch afspelen, standaard uitgeschakeld.

Objectopslag om meer kijkers te bedienen

Owncast kan zijn videosegmenten naar S3-compatibele opslag sturen, waar de kijkers ze downloaden. De server levert nog altijd de hoofdplaylist, de API's en de chat; de video, die vrijwel alle bandbreedte uitmaakt, komt uit de opslag. Uw server stuurt dan nog maar één kopie van elke kwaliteit: in het voorbeeld uit de documentatie 6,5 Mbps voor twee kwaliteiten van 5.000 en 1.500 kbps, of u nu nul kijkers hebt of duizend. De CPU-belasting blijft dezelfde.

  1. Maak een bucket aan bij uw aanbieder van objectopslag.
  2. Maak hem openbaar leesbaar, en stel een CORS-beleid in als de aanbieder dat vraagt: een fout CORS of Access-Control-Allow-Origin in de console van de browser komt bijna altijd daarvandaan.
  3. Schakel in “Configuration”, “Server Setup”, tabblad “S3 Object Storage”, de opslag in en voer de naam van de bucket, de toegangssleutel, de geheime sleutel, het endpoint en de regio in. Al deze velden zijn verplicht.

Deze opslag levert de livestream, geen archief: Owncast verwijdert gaandeweg de segmenten die ouder zijn dan de playlist plus een buffer van ongeveer 20 segmenten. De bucket bevat alleen de laatste minuten van de stream.

Voor kijkers verspreid over de wereld beschrijft de documentatie ook een content delivery network (CDN) dat voor Owncast wordt geplaatst, met een aparte hostnaam voor de oorsprong en de instelling “Websocket host override”, die de chat verbonden houdt met de oorspronkelijke server.

De chat en de moderatie

De chat stelt u in bij “Configuration”, “Chat”. Standaard zijn er geen moderators: de documentatie stelt voor uzelf er op zijn minst een te maken, vanaf de pagina “Users” van het beheer.

De documentatie wijst erop dat de blokkering op IP-adres te omzeilen is, met een VPN bijvoorbeeld: ze beperkt misbruik, en de moderatie blijft het eigen werk van elk kanaal. Vandaar het nut van aangewezen moderators voor uw meest bekeken streams.

De back-ups

Owncast maakt zelf elk uur een back-up van zijn database, naar data/backup/owncastdb.bak. De vlag --backupdir wijzigt die map. Dit bevat de gegevensmap:

OnderdeelWat het bewaartIn de back-up van elk uur
owncast.dbDe configuratie, de gebruikers, de chatgeschiedenis en de toegangstokensJa
backup/De back-up van de database van elk uurHet is de back-up zelf
Eigen emoji, public/De bestanden die u hebt toegevoegdNee
De plug-insDe geïnstalleerde plug-ins en hun gegevens, sinds 0.3.0Nee
De GeoIP-gegevensVanwaar de kijkers verbinding makenNee

Voor een volledig herstel, of om de instantie te verhuizen, vraagt de documentatie de hele map data te back-uppen: wie haar naar een nieuwe installatie kopieert, neemt alles mee. Met Docker, met de dienst gestopt:

Terminal, in de map van compose.yaml
docker compose down
tar -czf owncast-$(date +%F).tar.gz data
docker compose up -d

Plan deze kopie in op het ritme van uw streams, en stuur haar buiten de server. Staan deze archieven op de schijf van de server, dan vallen ze ook onder de nachtelijke back-ups.

De database terugzetten

Terugzetten brengt de database terug naar het moment van de back-up: alles wat sindsdien is gewijzigd, gaat verloren. Kopieer eerst de huidige database naar een veilige plek, en daarna:

  1. Stop Owncast.
  2. Start Owncast met --restoreDatabase en het pad van het back-upbestand: het zet de database terug en stopt daarna.
  3. Start Owncast zoals gewoonlijk, en controleer daarna uw instellingen in het beheer.
Terminal, met Docker
docker compose stop
docker compose run --rm owncast --restoreDatabase data/backup/owncastdb.bak
docker compose up -d

De updates

Met Docker geeft de documentatie twee opdrachten, uit te voeren vanuit de map van compose.yaml. De gegevensmap blijft ongemoeid:

Terminal
docker compose pull
docker compose up -d

Met het installatieprogramma beschrijven de release-opmerkingen van 0.3.0 de update: stop de dienst, zet de bestanden van de webinterface die u hebt aangepast opzij, voer het installatieprogramma opnieuw uit met het account dat Owncast draait, en start daarna opnieuw. Het script zelf bewaart een archief van de map data in owncast-install-backups voordat het de versie vervangt.

Terminal, met de systemd-dienst
sudo systemctl stop owncast
su -c "curl https://owncast.online/install.sh | bash" owncast
sudo systemctl start owncast

Versie 0.3.0, uitgebracht op 3 september 2026, brengt de plug-ins, Featured Streams, het automatisch afspelen en de keuze van de interface waarop RTMP luistert. De opmerkingen ervan vragen de wijzigingen te lezen vóór de update, omdat ze uw instantie raken: volg deze opmerkingen bij elke versie, en kopieer de map data vlak ervoor.

Wie doet wat op een managed VPS

Self-hosting vraagt dat u naast de applicatie ook de server beheert. Op een managed VPS neemt ons team de server voor zijn rekening en houdt het uw instantie proactief in de gaten; Owncast blijft uw software, met zijn instellingen en gegevens.

OnderwerpOns teamU
De serverSysteem- en beveiligingsupdates, ingrepen op de server inbegrepenHet moment dat bij uw activiteit past
De monitoringServer 24 uur per dag en 7 dagen per week bewaakt, met ingrijpen zonder op uw oproep te wachtenHet lezen van de logboeken van uw instantie
OwncastProactief toezicht: fouten, vertragingen, CPU-belasting en schijfruimte opgespoord, correctie aangeradenDe installatie, de updates en de instellingen, die u toepast, zelf of via uw AI-assistent
De streams en de chatDe server die ze draagt, bewaakt en geback-uptDe streamsleutels, de videokwaliteiten, de moderators en de regels van de chat
De back-upsElke nacht, versleuteld en buiten de machine bewaard; terugzetten inbegrepenDe eigen kopieën van Owncast, en het verzoek om terug te zetten, wanneer u dat nodig hebt
De migratieUw huidige server gemigreerd, gratisHet moment van de overschakeling

Wilt u liever dat ons team in de applicatie zelf ingrijpt, dan wordt die dienstverlening per uur of tegen een vast bedrag gefactureerd, met een offerte voordat het werk begint.

Owncast, op een server die voor u wordt beheerd

Met een Managed VPS van Simafri houdt ons team de server van uw Owncast-instantie up-to-date, bewaakt hem dag en nacht en grijpt in zonder op uw oproep te wachten; het houdt ook uw instantie proactief in de gaten en raadt u de nuttige correcties aan, die u toepast, zelf of via uw AI-assistent. De back-ups worden elke nacht versleuteld en buiten de machine bewaard, het terugzetten is inbegrepen, en de migratie van uw huidige server is gratis.

Ontdek Managed VPS

Veelgestelde vragen

Is Owncast gratis voor een bedrijf?

Ja. Owncast valt onder de MIT-licentie: u mag het in een bedrijf gebruiken, wijzigen en verspreiden zonder een licentie te kopen, op voorwaarde dat u de copyrightvermelding behoudt. Wat overblijft, zijn de kosten van de server waarop het draait.

Welke CPU heeft Owncast nodig?

Dat hangt af van de kwaliteiten die u aanbiedt. Als ruwe vuistregel rekent de documentatie één kern per getranscodeerde kwaliteit bij 30 beelden per seconde, en vrijwel niets voor een passthrough-kwaliteit. Het aantal kijkers verandert de CPU-belasting niet.

Hoeveel bandbreedte heeft Owncast nodig?

De piekdoorvoer is gelijk aan de bitrate van de stream maal het aantal kijkers: 25 kijkers op 5.000 kbps vragen 125 Mbps naar buiten. S3-compatibele objectopslag kan de video leveren in plaats van de server, die dan nog maar één kopie van elke kwaliteit stuurt.

Hoe installeer ik Owncast met Docker Compose?

Maak een compose.yaml met de image owncast/owncast, poort 8080 gepubliceerd op 127.0.0.1, poort 1935 voor RTMP en een map data gekoppeld op /app/data, en voer docker compose up -d uit. Zet daarna een reverse proxy met HTTPS voor poort 8080.

Wat zijn de standaardtoegangsgegevens van Owncast?

Het beheer, op /admin, opent met de gebruikersnaam admin en het wachtwoord abc123, en ook de streamsleutel is abc123. Het zijn twee aparte instellingen: wijzig ze allebei bij uw eerste aanmelding, in Configuration, Server Setup.

Hoe zend ik vanuit OBS uit naar Owncast?

Kies in OBS een aangepaste dienst, voer rtmp://uw-server:1935/live en uw streamsleutel in. Stuur H.264-video en AAC-audio, met een keyframe om de 2 seconden.

Hoe maak ik een back-up van Owncast?

Owncast maakt elk uur een back-up van zijn database naar data/backup/owncastdb.bak. Die back-up dekt alleen de database: kopieer voor een volledig herstel de hele map data buiten de server. Terugzetten gebeurt met de vlag --restoreDatabase.

Dekt een managed VPS ook Owncast?

Een managed VPS dekt de server: systeem, beveiliging, monitoring en back-ups. Ons team houdt ook uw instantie proactief in de gaten en raadt u de nuttige correcties aan, die u toepast. Een ingreep in de applicatie wordt per uur of tegen een vast bedrag gefactureerd.

Bronnen en officiële documentatie

Neem contact op