Public | Automated Build

Last pushed: 10 months ago
Short Description
MistServer is a streaming media server...
Full Description


MistServer is a streaming media server that works well in any streaming environment even on a Raspberry Pi! It bridges the gap between dedicated media servers and web servers, performing the best of both worlds when it comes to media streaming delivery.

The opensource version works best with HLS live streaming (gaming) with programs such as Open Broadcaster Software (OBS), FFsplit or Xsplit! If you want more options such as VOD, buy a pro-license.

What makes this docker build better as the official one from DDTECH/MistServer?
It's more secure and because on docker stop it will gracefully shutdown your processes. It prevents data corruption and all config-files will be saved before shutting down.


docker create --name=mistserver \   
-v /etc/localtime:/etc/localtime:ro \   
-v <path to config>:/config \   
-v <path to video>:/media \   
-p 4242:4242 -p 1935:1935 \   
-p 554:554 -p 8080:8080 \   

-p 4242 - Web UI
-p 1935 - RTMP
-p 554 - RTSP
-p 8080 - HTTP / HLS
-v /etc/localhost:ro - for timesync (read-only) - optional
-v /config - config and log files
-v /media - video and audio files
-e PGID for for GroupID
-e PUID for for UserID

Build & run Free version

  1. Build: docker build -t mistserver .
  2. Run container:
    docker run -i -t -p 1935:1935 -p 4242:4242 -p 554:554 -p 8080:8080 -v /my-folder:/config -v /my-folder/video:/media /etc/localtime:/etc/localtime:ro --name mistserver mistserver:latest /sbin/my_init
  3. Login to http://mydomain.tld:4242 and enter a username/password.
  4. Click on "Enable protocols".
  5. Enter a "Human readable name" and set a thick to "Force JSON file save".

Build Pro version

  1. git clone mistserver-pro
  2. nano Dockerfile
  3. ENV MISTSERVER=http://url-to-pro-version.
  4. docker build -t mistserver-pro .

Setup live streaming with RTMP

  1. Go to Streams and click New stream.
  2. Stream name: obs
  3. Source: push:// or push://your-ip-address
  4. Now go to Open Broadcaster Software and enter to FMS URL: rtmp://mydomain.tld:1935/live/ and Play Path: obs.

Embed within website

<video id=autoplay width="720" height="360" class="video-js vjs-default-skin vjs-big-play-centered" controls>
  <source src="http://mydomain.tld:8080/hls/stream_name.m3u8" type="application/x-mpegURL">
<link href="//" rel="stylesheet">
<script src="//"></script>
<script src="//"></script>
var player = videojs('autoplay');;


Video.js HLS plugin:

Docker Pull Command
Source Repository

Comments (2)
10 months ago

Issue solved.

a year ago

I done:
docker pull r0gger/mistserver
docker create --name=mistserver -v /etc/localtime:/etc/localtime:ro -v /home/ran/Programing/movies:/config -v /home/ran/Programing/movies:/media -p 4242:4242 -p 1935:1935 -p 554:554 -p 8080:8080 r0gger/mistserver

and than i docker start the container
and in the log i get:

Running /etc/my_init.d/ Running /etc/my_init.d/


User uid: 911

User gid: 911

* Running /etc/my_init.d/
Usage: MistController [options]
MistController: invalid option -- 'D'

--account, -a (string) A username:password string to create a new account with.
--config, -c (string) Specify a config file other than default.
--debug, -g (integer) The debug level at which messages need to be printed.
--help, -h Display usage and version information, then exit.
--interface, -i (string) Interface address to listen on, or for all available interfaces.
--logfile, -L (string) Redirect all standard output to a log file, provided with an argument
--port, -p (integer) TCP port to listen on.
--username, -u (string) Username to transfer privileges to, default is root.
--version, -v Display library and application version, then exit.
Version: 2.6, release Free_64
Built on Jun 4 2016, 10:20:55
* /etc/my_init.d/ failed with status 1

* Killing all processes...