Public | Automated Build

Last pushed: 2 months ago
Short Description
Kurento is a WebRTC media server and client APIs for developing advanced video applications.
Full Description

Copyright © 2013-2016 Kurento. Licensed under Apache 2.0 License.



How to use this image

Start a kurento-media-server instance

Starting a Kurento media server instance is easy. Kurento media server exposes
port 8888 for client access. So, assuming you want to map port 8888 in the
instance to local port 8888, you can start kurento media server with:

# Xenial 
$ docker run -d --name kms -p 8888:8888 kurento/kurento-media-server:xenial-latest
# Trusty
$ docker run -d --name kms -p 8888:8888 kurento/kurento-media-server:trusty-latest

To check that kurento media server is ready and listening, issue the following
command (you need to have curl installed on your system):

$ curl -i -N -H "Connection: Upgrade" -H "Upgrade: websocket" -H "Host:" -H "Origin:"

You will get something like:

HTTP/1.1 500 Internal Server Error
Server: WebSocket++/0.7.0

Don't worry about the second line (500 Internal Server Error). It's ok,
because we are not talking the protocol kurento media server expects, we are
just checking that the server is up and listening for connections.

Kurento media server logs

The kurento media server log is available through the usual way Docker exposes
logs for its containers. So assuming you named your container kms (with
--name kms as we did above):

$ docker logs kms

You also may want to follow the logs in real time, you can achieve that with -f or --follow

$ docker logs -f kms

Environment variables

Kurento media server exposes an environment variable GST_DEBUG that can be
used to set the debug level of kurento media server:

$ docker run -d --name kms -e GST_DEBUG=Kurento*:5 kurento/kurento-media-server

Get help about kurento media server

$ docker run --rm kurento/kurento-media-server --help

Kurento Configuration

You can refer to our documentation to see how to fit your own needs and then use customized configuration files as volume. For example, to overwrite Kurento's default configuration you can add this to docker run... command:

-v ~/kurento-config/config.default:/etc/default/kurento


What is Kurento

Kurento is an open source software project providing a platform suitable
for creating modular applications with advanced real-time communication
capabilities. For knowing more about Kurento, please visit the Kurento
project website:

Kurento is part of FIWARE. For further information on the relationship of
FIWARE and Kurento check the Kurento FIWARE Catalog Entry

Kurento is part of the NUBOMEDIA research initiative.


The Kurento project provides detailed documentation including tutorials,
installation and development guides. A simplified version of the documentation
can be found on The Open API specification a.k.a. Kurento
Protocol is also available on


Code for other Kurento projects can be found in the GitHub Kurento Group.

News and Website

Check the Kurento blog
Follow us on Twitter @kurentoms.

Issue tracker

Issues and bug reports should be posted to the GitHub Kurento bugtracker

Licensing and distribution

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.

Contribution policy

You can contribute to the Kurento community through bug-reports, bug-fixes, new
code or new documentation. For contributing to the Kurento community, drop a
post to the Kurento Public Mailing List providing full information about your
contribution and its value. In your contributions, you must comply with the
following guidelines

  • You must specify the specific contents of your contribution either through a
    detailed bug description, through a pull-request or through a patch.
  • You must specify the licensing restrictions of the code you contribute.
  • For newly created code to be incorporated in the Kurento code-base, you must
    accept Kurento to own the code copyright, so that its open source nature is
  • You must justify appropriately the need and value of your contribution. The
    Kurento project has no obligations in relation to accepting contributions
    from third parties.
  • The Kurento project leaders have the right of asking for further
    explanations, tests or validations of any code contributed to the community
    before it being incorporated into the Kurento code-base. You must be ready to
    addressing all these kind of concerns before having your code approved.


The Kurento project provides community support through the Kurento Public
Mailing List
and through StackOverflow using the tags kurento and

Before asking for support, please read first the Kurento Netiquette Guidelines

Docker Pull Command
Source Repository