Go to file
2023-12-04 02:18:48 +01:00
ministream-frontend@d1f389afde Update frontend 2023-12-04 02:18:48 +01:00
server Collect stats and send NACKs 2023-12-04 02:07:18 +01:00
.dockerignore Update frontend 2023-12-02 13:58:02 +01:00
.gitignore Initial commit 2023-11-30 19:32:38 +01:00
.gitmodules Update frontend 2023-12-02 13:58:02 +01:00
Dockerfile Fix Dockerfile 2023-12-02 14:06:00 +01:00
go.mod Initial commit 2023-11-30 19:32:38 +01:00
go.sum Initial commit 2023-11-30 19:32:38 +01:00
main.go Create working prototype 2023-11-30 23:56:33 +01:00
README.md Update README 2023-12-02 14:27:43 +01:00
Taskfile.yaml Create working prototype 2023-11-30 23:56:33 +01:00

ministream

Small streaming service utilizing WebRTC and WHIP, written in go.

Deployment

Create a ministream.service like this:

# /etc/systemd/system/ministream.service
[Unit]
Description=Ministream Container
After=docker.service
Requires=docker.service

[Service]
TimeoutStartSec=0
Restart=always
ExecStartPre=-/usr/bin/docker pull git.t-juice.club/torjus/ministream:latest
ExecStartPre=-/usr/bin/docker stop ministream
ExecStartPre=-/usr/bin/docker rm ministream
ExecStart=/usr/bin/docker run -p 50000-50050:50000-50050/udp \
  -p 8080:8080 \
  --name ministream git.t-juice.club/torjus/ministream:latest

[Install]
WantedBy=multi-user.target

After running the service, it should be accessible on http://HOSTNAME:8080

Build and run using Docker

$ docker build -t ministream:latest .
...
$ docker run -p 50000-50050:50000-50050/udp -p 8080:8080 ministream:latest