Docker Community Forums

Share and learn in the Docker community.

Docker on embedded/micro systems


(Forrie) #1

We are considering Docker on a series of embedded/micro systems that we use, which have 8G RAM and Intel i8 processors – RH7 kernel. The systems are compiled with a custom version of the OS that is extremely stripped down (on purpose) – what I need to know is what kernel modules are necessary for the Docker binary to run properly? We might be able to get them to compile these in to the kernel for our own firmware.

The binary release of Docker runs but exits due to missing kernel modules, but I’m not entirely sure what the total minimal dependencies are for it.

Thanks in advance.


(Sam) #2

does this give u the info


(Forrie) #3

We can install the binaries with no problem, and they will run; but, the customized Kernel in this case is missing some kernel-based modules that Docker requires – that’s what I’m trying to figure out, so we can get our vendor to compile a kernel with those modules so we can test Docker on the platform.


(Sam) #4

ok, here is some docker build info, that appears to check dependencies and references the docker github repo…
https://gitweb.gentoo.org/repo/gentoo.git/diff/app-emulation/docker/docker-17.09.0.ebuild?id=af909720334cb5cf2e35a479f50827ef533d8c65


(Forrie) #5

I gather this section shows all the dependencies.

I’m not sure I can run a configure to check on the embedded OS, since it’s stripped down. However when I ran the Docker binary, it ran and complained about a missing netfilter dependency, there may be others. I want to send a list of dependencies to their development team so they know what to compile in to the Linux kernel that they create for us (that makes sense to them):

+CONFIG_CHECK="

  • ~NAMESPACES ~NET_NS ~PID_NS ~IPC_NS ~UTS_NS
  • ~CGROUPS ~CGROUP_CPUACCT ~CGROUP_DEVICE ~CGROUP_FREEZER ~CGROUP_SCHED ~CPUSETS ~MEMCG
  • ~KEYS
  • ~VETH ~BRIDGE ~BRIDGE_NETFILTER
  • ~NF_NAT_IPV4 ~IP_NF_FILTER ~IP_NF_TARGET_MASQUERADE
  • ~NETFILTER_XT_MATCH_ADDRTYPE ~NETFILTER_XT_MATCH_CONNTRACK
  • ~NF_NAT ~NF_NAT_NEEDED
  • ~POSIX_MQUEUE
  • ~USER_NS
  • ~SECCOMP
  • ~CGROUP_PIDS
  • ~MEMCG_SWAP ~MEMCG_SWAP_ENABLED
  • ~BLK_CGROUP ~BLK_DEV_THROTTLING ~IOSCHED_CFQ ~CFQ_GROUP_IOSCHED
  • ~CGROUP_PERF
  • ~CGROUP_HUGETLB
  • ~NET_CLS_CGROUP
  • ~CFS_BANDWIDTH ~FAIR_GROUP_SCHED ~RT_GROUP_SCHED
  • ~IP_VS ~IP_VS_PROTO_TCP ~IP_VS_PROTO_UDP ~IP_VS_NFCT ~IP_VS_RR
  • ~VXLAN
  • ~XFRM_ALGO ~XFRM_USER
  • ~IPVLAN
  • ~MACVLAN ~DUMMY
    +"