Skip to content
This repository has been archived by the owner on Aug 20, 2022. It is now read-only.

A dockerized container of NGINX-RTMP and Node.js with transcoding, archiving & stream authentication.

License

Notifications You must be signed in to change notification settings

OdyseeTeam/odysee-media-server

 
 

Repository files navigation

Odysee Media Server

An RTMP ingestion server + API server packaged as docker containers for managing and controlling streams, restreams, and archives.

This is the backbone of livestreaming for [bitwave.tv]

Utilizing tech such as NGINX, ffmpeg, node.js, and docker.

Commands

Updating Server: (an easier method is available via server-scritps)

docker pull lbry/livestream-api:latest
docker pull lbry/livestream-nginx:latest
docker-compose up --build -d

Updating Dev Server:

docker pull lbry/livestream-api:dev
docker pull lbry/livestream-ngix:dev
docker-compose up --build -d

Rebuild & View logs:

docker-compose up --build -d && docker-compose logs --tail 25 -f

View Logs: (an easier method is available via server-scritps)

docker-compose logs --tail 25 -f

Build NGINX server:

cd nginx-server
docker build -t lbry/livestream-nginx:latest .
- or -
docker-compose build

Build API server:

cd api-server
docker build -t lbry/livestream-api:latest .
- or -
docker-compose build

Push updated containers to docker:

docker push lbry/livestream-nginx
docker push lbry/livestream-api

Exec bash into running container:

docker exec -it [containerId] bash

Docker-Compose start server:

docker-compose up

Docker-Compose build & run detached:

docker-compose up --build -d

Update Restart & Show Logs:

docker pull lbry/livestream-api && \
docker pull lbry/livestream-nginx && \
docker-compose up --build -d && \
docker-compose restart && \
docker-compose logs --tail 25 -f

NPM Helper Commands

These basically do what is described above, but without requiring as much typing.

To execute the follow commands, preface them with: npm run COMMAND.

docker-build:dev:api

Build API Service, tag as dev.

docker-build:dev:nginx

Build NGINX Service, tag as dev.

docker-push:dev:api

Push API Server image, tagged as dev.

docker-push:dev:nginx

Push NGINX Server image, tagged as dev.

docker-build:dev

Build ALL Services, tagged as dev.

docker-push:dev

Push ALL Services image, tagged as dev.

docker-publish:dev

(This is the most convenient command)
One shot build and push ALL services, tagged as dev.

Server Helper Scripts

see: server-scripts

Currently, the following commands are available:

Updates and restarts ingestion server.

Show docker logs for odysee-media-server


Outdated

(aka I no longer remember the context of these commands, and they are probably not needed)

Cache Builder:

docker build \
   --target builder \
   -t lbry/bitwave-media-server:builder .

Build from cache:

docker build \
    --cache-from lbry/bitwave-media-server:builder \
    --cache-from lbry/bitwave-media-server:latest \
    -t lbry/bitwave-media-server:latest .

About

A dockerized container of NGINX-RTMP and Node.js with transcoding, archiving & stream authentication.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 85.7%
  • XSLT 8.7%
  • Dockerfile 4.5%
  • Shell 1.1%