I built this image entirely on an i.MX 8QuadMax MEK board running Linux 4.9 and docker engine CE.
basic process will be familiar to any docker-vet but in case you are new to docker...
docker pull ubuntu
docker run ubuntu
apt-get install a whole bunch of useful packages (e.g. emacs, wget, git-core, ssh-server)
commit to a new image ubuntu-imx
push to my repository
why do this at all? couple of reasons:
i got very tired of apt-get installing stuff within a Ubuntu docker image to do something
i want to use this process to quickly deploy demo images or full blown Linux distis easily and quickly
its midnight at a tradeshow and you need a demo sw update... docker pull new-thing... done
plain vanilla linux is fairly difficult to update quickly and get your applications running... so running a docker image
of Ubuntu makes that process super simple.
committed a new image vs recipe to create a volume that enables the ubuntu docker image to act like a 'real' OS
- meaning: its not straightforward to set up a ubuntu image so that it has volume storage to update the image
in real time for whatever the image user does to it (change ENV variables, apt-get something, build an app)
- so i made my edits and committed a new image (ubuntu-imx) to avoid the 'full OS' storage problem
I am experimenting with how to use docker to make it super simple to 'install' linux distis like Ubuntu onto the processor... so if you want SuSE, you should just be able to do a docker pull... done.
what's next:
- hook up X11 or Wayland/Weston to the image with a recipe so that the Ubuntu image can show its full desktop IDE (e.g. GNOME)...
- playing around with x11docker to do this, would love some help if anyone is interested.
For those that care, here are the 'additional' packages i installed into this image
package - instruction used