{"id":2387,"date":"2021-09-06T22:57:25","date_gmt":"2021-09-06T22:57:25","guid":{"rendered":"https:\/\/dft.wiki\/?p=2387"},"modified":"2026-06-08T22:28:56","modified_gmt":"2026-06-09T02:28:56","slug":"building-a-stream-server-with-owncast","status":"publish","type":"post","link":"https:\/\/dft.wiki\/?p=2387","title":{"rendered":"Building a Stream Server with Owncast on Ubuntu"},"content":{"rendered":"<p>Owncast is an open-source, self-hosted live streaming solution for broadcasting videos, classes, presentations, games, talks, and more, completely independent of any vendor or service provider. It is highly customizable, flexible, and can be deployed in minutes either on-premises or in the cloud.<\/p>\n<hr \/>\n<p>DEPLOY OWNCAST AS A DOCKER CONTAINER<\/p>\n<pre>sudo apt install docker.io -y\r\nsudo docker run -p 8080:8080 -p 1935:1935 -it gabekangas\/owncast:latest<\/pre>\n<p>It is also recommended to map a local directory to the container for easy configuration backups.<\/p>\n<pre>sudo docker run <strong>-v \/owncast-config:\/app\/data<\/strong> -p 8080:8080 -p 1935:1935 -it gabekangas\/owncast:latest<\/pre>\n<hr \/>\n<p>INSTALL OWNCAST DIRECTLY ON THE SERVER<\/p>\n<pre>sudo apt install unzip -y\r\nsudo curl -s https:\/\/owncast.online\/install.sh | sudo bash\r\ncd owncast &amp;&amp; sudo .\/owncast<\/pre>\n<p>With either deployment method, the default page will be available at <strong>http:\/\/<span style=\"color: #ff0000;\">192.168.1.144<\/span>:8080\/<\/strong> (replace the <span style=\"color: #ff0000;\"><strong>IP<\/strong><\/span> as needed).<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2392\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_18-42-38.png\" alt=\"\" width=\"1299\" height=\"1041\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_18-42-38.png 1299w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_18-42-38-300x240.png 300w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_18-42-38-1024x821.png 1024w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_18-42-38-768x615.png 768w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/p>\n<p>The administration dashboard is at <strong>http:\/\/192.168.1.144:8080\/<span style=\"color: #ff0000;\">admin\/<\/span><\/strong>. The default username is <strong>admin<\/strong> and the default password is <strong>abc123<\/strong> (which is also the default stream key).<\/p>\n<p><strong>CHANGE THE PASSWORD IMMEDIATELY!<\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2391\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_18-43-55.png\" alt=\"\" width=\"1299\" height=\"1041\" \/><\/p>\n<p>By default, anyone with access to the web interface can watch the stream and send messages in the chat.<\/p>\n<hr \/>\n<p>HOW TO STREAM<\/p>\n<p>You can stream from any application that supports RTMP output with a stream key, such as VLC, OBS, and many others.<\/p>\n<p>Install OBS Studio on your workstation (Linux, Windows, or Mac). On Debian-based distros, run:<\/p>\n<pre>sudo apt install ffmpeg obs-studio -y<\/pre>\n<p>The application will appear in your main menu:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2395\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19_29_08.png\" alt=\"\" width=\"380\" height=\"374\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19_29_08.png 380w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19_29_08-300x295.png 300w\" sizes=\"auto, (max-width: 380px) 100vw, 380px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2406\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19-34-17.png\" alt=\"\" width=\"1088\" height=\"759\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19-34-17.png 1088w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19-34-17-300x209.png 300w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19-34-17-1024x714.png 1024w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_19-34-17-768x536.png 768w\" sizes=\"auto, (max-width: 1088px) 100vw, 1088px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2407\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-57-16.png\" alt=\"\" width=\"584\" height=\"439\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-57-16.png 584w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-57-16-300x226.png 300w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2408\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-57-59.png\" alt=\"\" width=\"594\" height=\"439\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-57-59.png 594w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-57-59-300x222.png 300w\" sizes=\"auto, (max-width: 594px) 100vw, 594px\" \/><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2409\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-58-31.png\" alt=\"\" width=\"594\" height=\"439\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-58-31.png 594w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_21-58-31-300x222.png 300w\" sizes=\"auto, (max-width: 594px) 100vw, 594px\" \/><\/p>\n<p>Click START STREAM and your broadcast will be live to all connected clients.<\/p>\n<p>Monitor resource usage and the number of connected clients to ensure your server hardware can handle the load.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2410\" src=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_22-04-31.png\" alt=\"\" width=\"1498\" height=\"951\" srcset=\"https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_22-04-31.png 1498w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_22-04-31-300x190.png 300w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_22-04-31-1024x650.png 1024w, https:\/\/dft.wiki\/wp-content\/uploads\/sites\/15\/2021\/09\/Screenshot_2021-09-06_22-04-31-768x488.png 768w\" sizes=\"auto, (max-width: 1498px) 100vw, 1498px\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Owncast is an open-source, self-hosted live streaming solution for broadcasting videos, classes, presentations, games, talks, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-2387","post","type-post","status-publish","format-standard","hentry","category-linux"],"_links":{"self":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts\/2387","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2387"}],"version-history":[{"count":9,"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts\/2387\/revisions"}],"predecessor-version":[{"id":5713,"href":"https:\/\/dft.wiki\/index.php?rest_route=\/wp\/v2\/posts\/2387\/revisions\/5713"}],"wp:attachment":[{"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2387"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2387"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dft.wiki\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2387"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}