I have a use case where I need to run both Windows and Linux containers on a windows 10 box and have them talk to each other.
I tried the following from a windows Bash shell without success. The first service (running a linux container) is started and the container comes up successfully. The second service (Windows container) gets stuck in starting and never comes up
What I did was:
Switch to windows containers
docker swarm init --advertise-addr=10.100.1.244 --listen-addr 10.100.1.244:237
Switch to Linux containers
docker swarm join --token SWMTKN-1-65rdxopimmk1orkssv8u0yladax3ggs6dc0ep5uurr45z0g1tk-aivhg7w3ywtrxk7zxfwdri9g2 10.100.1.244:2377
Switch to windows containers and get node names
$ docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS
k9kx8skklv3djvmax5b4x9mmw * W10-LT-TD-NEW Ready Active Leader
ab6nxsj545ikylifptnd72jke linuxkit-00155d013b12 Ready Active
Add labels to the nodes
docker node update --label-add os=windows W10-LT-TD-NEW
docker node update --label-add os=linux linuxkit-00155d013b12
Create an overlay network
docker network create --driver=overlay mylocal
Create the services
docker service create --name bamboo --endpoint-mode dnsrr --network mylocal --publish mode=host,target=8085 --publish mode=host,target=54663 --constraint 'node.labels.os==linux' nemlig/bamboo:0.0.1
docker service create --name agent --endpoint-mode dnsrr --network mylocal --constraint 'node.labels.os==windows' nemlig/base-bamboo-agent:0.0.1
I can successfully start the windows container with a docker run. Just not when running it as a service. Pretty sure this is a network issue.
Not sure if my approach was the right one or not or if it is even possible to run both types of containers on windows 10 professional and have them communicate with each other.
Anyone else try something like this?