10 Replies Latest reply on May 2, 2014 3:28 PM by Niklas Molin

    LXC docker

    Niklas Molin Level 2

      Hi.

       

      I wonder if anyone has added docker (using LXC)?

       

      Thanks,

      Niklas

        • Re: LXC docker
          Niklas Molin Level 2

          Has anyone managed to install Go programming tools for Freescale?

          • Re: LXC docker
            Niklas Molin Level 2

            After I managed to include the GO application, I managed to compile the docker (getting ideas from following link: Docker on Raspberry Pi).

            Right now I'm trying to figure out how to enable the AUFS, since docker seems to be depending on this.

              • Re: LXC docker
                Thomas Manley Level 1

                Thank you for trying to get this working. I think docker on i.MX would open up some interesting possibilities for testing and deployments.

                 

                What version of docker are you trying? According to the docs AUFS isn't required as of version 0.7

                 

                http://docs.docker.io/en/latest/installation/kernel/

                  • Re: LXC docker
                    Niklas Molin Level 2

                    Hi Thomas.

                     

                    I'm trying with docker version 0.7.1., since I wanted to avoid the dependency on AUFS (which is not part of the i.mx kernel).

                    I had to do some patches in some file, for it to even be able to "compile/run" on a 32bit ARM (since it was limited to amd64).

                     

                    Now I'm just trying to fix some other problems, which has to do with the device-mapper.

                    By the way, do you know if it's possible to add the device-mapper in the image?

                    This seems to be one problem, that I don't have /dev/mapper in my build.

                     

                    For the moment I'm doing this on the side, since we don't need to have this working for some time.

                     

                    But I'll update this when I have more progress.

                     

                    /Niklas

                    • Re: LXC docker
                      Niklas Molin Level 2

                      I managed to include the device-mapper.

                      But now it complains that it can "find' mkfs.ext4.

                      I have notice before that I can't use the mkfs command. it always complains that either .ext2 or .ext3 or .ext4 is missing.

                      So now is a good time to figure this thing out.

                  • Re: LXC docker
                    Steve Scheidecker Level 1

                    Niklas,

                     

                    Have you had any success getting Docker running?  I'm interested in attempting this myself, would like to get any feedback about your efforts.  Thanks!

                    • Re: LXC docker
                      Niklas Molin Level 2

                      I managed to get docker to start up now.

                      So far I haven't had time to see if I can create a docker container yet (will try that either today or later this week).

                      But when I start docker it looks promising:

                       

                      [/var/lib/docker|1318a470] +job serveapi(unix:///var/run/docker.sock)

                      [/var/lib/docker|1318a470] +job initserver()

                      [/var/lib/docker|1318a470.initserver()] Creating server

                      2014/04/17 23:05:32 Listening for HTTP on unix (/var/run/docker.sock)

                      bio: create slab <bio-1> at 1

                      device-mapper: thin: Data device (loop0) discard unsupported: Disabling discard passdown.

                      [/var/lib/docker|1318a470] +job init_networkdriver()

                      [/var/lib/docker|1318a470.init_networkdriver()] creating new bridge for docker0

                      [/var/lib/docker|1318a470.init_networkdriver()] getting iface addr

                      [/var/lib/docker|1318a470] -job init_networkdriver() = OK (0)

                      2014/04/17 23:05:34 WARNING: cgroup mountpoint not found for memory

                      Loading containers: : done.

                      [/var/lib/docker|1318a470.initserver()] Creating pidfile

                      [/var/lib/docker|1318a470.initserver()] Setting up signal traps

                      [/var/lib/docker|1318a470] -job initserver() = OK (0)

                      [/var/lib/docker|1318a470] +job acceptconnections()

                      [/var/lib/docker|1318a470] -job acceptconnections() = OK (0)

                       

                      When i have everything up an running, I'll write down the procedure I did you make it working.

                        • Re: LXC docker
                          Niklas Molin Level 2

                          Right now I have a problem with cgroup:

                          container.go:788 Error running container: cgroup mountpoint not found for cpu

                            • Re: LXC docker
                              Niklas Molin Level 2

                              We have docker 0.10 working in our i.MX6 now.

                              Using the following link when I compile (so far it's on the target board) github.com/archlinuxarm/PKGBUILDs/tree/master/community/docker

                              Remember to include libc.a and libpthread.a in your image, since docker is statically including this libraries.

                              You also need to add a couple of things in the kernel (menuconfig), but I'll include this list later plus I also added a few things in local.conf.

                              We had more luck to use lxc instead of libcontainer (docker -d -e lxc)