Docker Community Forums

Share and learn in the Docker community.

Services created by docker stack do not have all CPU arch of my image (manifest list)


I am trying to use swarm on an heterogeneous cluster made of x86 and raspberrry (Rpi zero). I was able to create all the images needed and to create a multi-arch manifest list for the service I want to deploy on all the nodes (using the experimental docker manifest tool).

However, when using docker stack deploy, if I inspect the service being just created only a single architecture is present. docker manifest inspect do show both architectures.

(I looked/inspected at the portainer_agent service that resides on a manger node and I do see all the architectures it supports so I am certain docker service inspect should display them all).

(And I did rm the stack and recreated it after the first successful creation of the multi-arch manifest list).

Not sure where to go from here.

I did deploy a consul cluster on 2x x86_64 + 1x arm64 (PI) as Swarm deployment. Worked like a charm. Thus, I would not expect it to be a generall problem.

As I said, I did the same with portainer. The general part here is lack of a proper flow chart description on how to set this up for our own containers (and manifest list). It appears that mine are incorrect. But how?