Instantly share code, notes, and snippets.

What would you like to do?

Additional notes

Original blog post -

How do I rebuild the image from scratch?

This will take several hours on a Raspberry Pi Zero - but less time on a Pi 2 or Pi 3. You can edit the Dockerfile for a Pi 2/3 and change RUN make to RUN make -j 4 to take advantage of the quad-core processor.

$ git clone
$ cd streaming
$ docker build -t alexellis2/streaming .

How do I edit the settings?

You should edit the file and then write a new Dockerfile using my image as a base:

Place a Dockerfile in a new directory with this contents:

FROM alexellis2/streaming:17-5-2017

Then run a Docker build - this should take less than 10 seconds since we're only adding on top of the existing image.

$ cd streaming
$ docker build -t alexellis2/streaming .

How can I enter bash on the container?

You can replace the start-up command (ENTRYPOINT) like this:

$ docker run --entrypoint=/bin/bash --privileged --name cam -ti alexellis2/streaming:17-5-2017

This comment has been minimized.

quarterturn commented Jul 20, 2017

When you say "Place a Dockerfile in a new directory" where do you mean for it to go?

If I create, say "temp" directory in /streaming/, and put the Dockerfile inside that and run "docker build..." it fails:
Sending build context to Docker daemon 4.608kB
Step 1/6 : FROM ffmpeg:17-5-2017
repository ffmpeg not found: does not exist or no pull access

If I mv Dockerfile to Dockerfile.orig and create a new Dockerfile containing the "FROM..." and "COPY..." lines above,
it seems to work:
Sending build context to Docker daemon 4.096kB
Step 1/2 : FROM alexellis2/streaming:17-5-2017
---> 63e724cc90ea
Step 2/2 : COPY
---> 1bdb01e32006
Removing intermediate container c3bdad2f13c4
Successfully built 1bdb01e32006
Successfully tagged alexellis2/streaming:latest

However, running the container it is obvious it did not replace it, as (in my example of what I fixed) the video is still upside down, which means it did not actually copy my edited into the container.

I've played around a bit just trying to edit by use of "docker exec.." but it is not persistent.


This comment has been minimized.

jorenham commented May 14, 2018

I'm having the same issue as @quarterturn


This comment has been minimized.

graemecoates commented May 28, 2018

I tripped over this as well, but realised when the docker build command is completed, you have to run the docker file by using the "latest" tag. eg:

docker run --privileged --name cam -d --restart=always alexellis2/streaming:latest xxxx-xxxx-xxxx-xxxx

Also, make sure your has the right perms (chmod +x), or it fails to run....

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment