Jack Moore

Email: jack(at)jmoore53.com
Project Updates

Owncast Streaming Server

28 Dec 2020 » system configuration, homelab, networking, service

The other week I found Owncast on Hackernews while browsing around and I thought it would be interesting to try out the project as an alternative to twitch, or youtube for streaming. I always enjoy trying out self hosted projects.

Installing Owncast with Docker

Straight from their documentation:

1) Download the code: git clone https://github.com/owncast/owncast 2) Copy config-default.yaml to config.yaml 3a) apt install ffmpeg 3b) Edit config.yaml with a file editor of your choice and change the path of ffmpeg by appending ffmpegPath: /usr/bin/ffmpeg at the top level of the yaml. 4) Make any configuration changes. 5) If you ever make any future config file changes you must rerun the docker build step otherwise you can just run the docker run step to run the service going forward. 6) Run docker build -t owncast . and wait. It may take a few minutes to build depending on the speed of your server. 7) Run docker run -p 8080:8080 -p 1935:1935 -it -v ./config.yaml:/app/config.yaml owncast to start the service with your custom configuration.

In the config file be sure to set the stream password.

PFSense HAProxy Configuration Because Firewalls

Ensure to have the HAProxy Package installed.

After installing the package from System > Package Manager > Available Packages > HAPROXY (Install), there should be a tab under Service called HAProxy.

I configured the backend pretty easily. The VM was configured with the IP 10.0.1.18. I had to set the server list for this IP and the port. I confirmed the server was listening on 10.0.1.18:8080 for web and on 10.0.1.18:1935. I then created two backend entires for both ports.

The frontend I set was just the Firewall CARP IP, which in my case was 192.168.200.5 and the ports to 8080 and 1935. The name and description I set were test-owncast as they were both going to be deleted. In the Frontend, there is a configuration setting to chose a back end, this is why I configured the backend before the front end. With backend configured, I set the frontend Default Backend to the two backend configurations.

Now HAProxy offers a lot more than some port forwarding. I could have used PFSense NAT & Port Forwarding for this simple configuration, but I wanted to get my feet wet with HAProxy.

… In fact now that I look at port forwarding and NAT I should have used those two builtin tools pfsense offers out of the box.

Why Not Jitsi

Jitsi is great, but really not what I was looking for or really what I needed. Setting up and configuring Jitsi is a beast. I am sure I will toy with it eventually for video conferencing and calls, but it’s really not what I need at this point in time.

© Jack Moore