emce
Posts: 2
Joined: Thu Mar 08, 2018 3:36 am

Docker in Swarm Mode

Thu Mar 08, 2018 3:42 am

Has anyone else successfully gotten Swarm mode working with Docker? I need to be able to test certain swarm compose configs, and I've been struggling with it.

I've attempted running either the version of Docker in the repos (17.11) or the latest binaries (17.12.1) without luck.

I'm currently running kernel: 4.15.7-60.current

Best I can tell, I think this may be because the kernel wasn't shipped with the vxlan module, but I don't have a lot of expertise with kernel modules.

Relevant (I believe) logs:

Code: Select all

Mar 07 19:03:49 thor dockerd[767]: time="2018-03-07T19:03:49.833768434-07:00" level=error msg="Failed to create testvxlan interface: error creating vxlan interface: operation not supported"
Mar 07 19:03:49 thor dockerd[767]: time="2018-03-07T19:03:49.917209150-07:00" level=warning msg="Error (Unable to complete atomic operation, key modified) deleting object [endpoint_count k4huhn3lo03m8s6kmwmtxwkaa], retrying...."
Mar 07 19:03:49 thor dockerd[767]: time="2018-03-07T19:03:49.919671841-07:00" level=error msg="Failed creating ingress network: subnet sandbox join failed for \"10.255.0.0/16\": error creating vxlan interface: operation not supported"
Any ideas would be helpful. Thanks!

emce
Posts: 2
Joined: Thu Mar 08, 2018 3:36 am

Re: Docker in Swarm Mode

Fri Mar 09, 2018 2:43 pm

Ok, finally got to the bottom of this.

tl;dr -
1. Clone the kernel source for your kernel (eg. git clone https://dev.solus-project.com/source/linux-current.git)
2. Drop this script in the root directory of the kernel source and run it: https://gist.github.com/mcemce/3febfa35 ... 7aae8d00a5

There were several modules missing that Docker depends on. I realized this by running the following against the kernel config: https://github.com/moby/moby/blob/maste ... -config.sh

Which produced this output: https://gist.github.com/mcemce/63cf7c03 ... 3aa2a3bbb2

So I built the two additional required modules, and loaded those along with several others Docker depends on (see script). Everything now works great!

I'm new to Solus... what's the best way to go about requesting that either a) these modules are built by default or b) a new package is created that includes the additional modules so that when people install Docker they can have a fully supported kernel?

sunnyflunk
Development Team
Posts: 3007
Joined: Sun Mar 13, 2016 11:35 pm

Re: Docker in Swarm Mode

Thu Mar 15, 2018 2:08 am

emce wrote:
Fri Mar 09, 2018 2:43 pm
Ok, finally got to the bottom of this.

tl;dr -
1. Clone the kernel source for your kernel (eg. git clone https://dev.solus-project.com/source/linux-current.git)
2. Drop this script in the root directory of the kernel source and run it: https://gist.github.com/mcemce/3febfa35 ... 7aae8d00a5

There were several modules missing that Docker depends on. I realized this by running the following against the kernel config: https://github.com/moby/moby/blob/maste ... -config.sh

Which produced this output: https://gist.github.com/mcemce/63cf7c03 ... 3aa2a3bbb2

So I built the two additional required modules, and loaded those along with several others Docker depends on (see script). Everything now works great!

I'm new to Solus... what's the best way to go about requesting that either a) these modules are built by default or b) a new package is created that includes the additional modules so that when people install Docker they can have a fully supported kernel?
The only way it will likely be looked at is via Phab task, which I see you've already done :)

Return to “Other Questions”