stdiscosrv syncthing docker problem,can't find remote device.

I use a server run docker server in enterprise network, can’t use internet,so i use discosrv for syncthing.

two docker container on the docker server.

one docker container is syncthing use : docker pull syncthing/syncthing docker run -d -t --restart=always --privileged --name Syncthing -p 8384:8384 -p 22000:22000 -p 21027:21027 syncthing

one docker container is stdiscosrv use my dockerfile:

from alpine:3.7 MAINTAINER jackadamjackadam@sina.com EXPOSE 8443 COPY /stdiscosrv /usr/bin RUN chmod +x /usr/bin/stdiscosrv CMD /usr/bin/stdiscosrv -debug

docker build -t stdiscosrv .

docker run -d -t --restart=always --privileged --name Stdiscosrv -p 8443:8443 stdiscosrv

some syncthing in windows linux docker_container. every syncthing work great except docker_container on docker server. can’t find other syncthing. other syncthing can’t find the docker_container syncthing.

see discosrv logs: some GET the docker_container ID.

somebody help.

Discovery won’t work if its running on the same machine.

Also Docker networking is Special™. You might need to do linking and whatever. Probably read Docker documentation.

yes on the same machine.

server01(linux):

containe01 syncthing01

containe02 stdiscosrv

work01(windows):

exe syncting02

work02(linux):

containe03 syncthing03

work03():

exe syncting04

every syncthing work great except containe01 syncthing01.

now i run syncthing01 on server01(linux) system ,with out docker .all work great.

some port need mapping?? i can’t find some explain or parameter in Syncthing’s documentation!

–link? it not work.

–link use docker Internal address .

As explained, running a syncthing node on the same machine as the discovery will cause discovery to record a nonsense (local) ip address which has no meaning to other computers, hence it will not work, and there is no way to fix it.

I try run discosrv in server ,out docker container. all work great.and the ip is same ip address.