Skip to content

A docker image based on Ubuntu, with Erlang, Elixir and libraries necessary to test and run the Membrane Framework.

License

Notifications You must be signed in to change notification settings

membraneframework-labs/docker_membrane

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

68 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ubuntu based Membrane Docker image

Docker Pulls GitHub forks

A Docker image based on Ubuntu, with Erlang, Elixir, Node.js and libraries necessary to test and run the Membrane Framework.

Image has been moved to membraneframeworklabs

Image variants

This image comes in many flavours, based on different Ubuntu releases and package versions:

  • latest, focal - based on Ubuntu 20.04
  • bionic - based on Ubuntu 18.04, deprecated

Package versions

Package bionic focal jammy
Erlang 21.3 and 22.2 25.2.3 26.0.2
Elixir 1.9.4 1.14.3 1.15.5
Node.js - 14.16.1 16.17.0
Rust - 1.65.0 1.70.0
FFmpeg 4.2.2 4.2.2 4.4.2
SDL2 ? ? 2.0.20
FDK AAC 2.0 2.0 2.0.0
Portaudio 19.6.0 19.6.0 19.6.0
MAD 0.15.1 0.15.1 0.15.1
FLAC 1.3.2 1.3.2 1.3.3
Opus 1.1.2 1.1.2 1.3.1
libsrtp2 - 2.3.0 2.4.2
libnice - master (833c1aa) -
libmp3lame - 3.100 3.100

Version selection

These images contain multiple (Erlang, Elixir, Node.js) versions, managed with asdf. You can specify which one should be selected by running: asdf global erlang <version> or asdf global elixir <version> in your script.

Default versions:

Image Erlang Elixir Node.js Rust
jammy 26.0.2 1.15.5 16.17.0 1.63.0
focal 25.2.3 1.14.3 16.17.0 1.63.0
bionic 22.2 1.9.4 - -

Building the image

To rebuild the image, run the following command:

make build

Optionally, one can add the following variables:

  • VERSION=string, which adds the variant tag. Set to latest by default.
  • FLAVOR=string, which selects the flavor (subdirectory of this repository) to build. Set to focal by default.
  • IMAGE=name, which will override the default image name. If not specified, this is set to membrane/membrane

Sample usage

Execute the following command while being in your application directory:

make run

or from anywhere:

DIR=/my/app/directory make run

This will start the container with the application directory mapped to /app. Inside the container, go to that directory:

cd /app

and execute your app's code (for example tests)

mix test

Copyright and License

Copyright 2019, Software Mansion

Software Mansion

Licensed under the Apache License, Version 2.0