Я пытался ответить на этот вопрос: Как подключиться к netcat, работающему в docker контейнере?
У меня есть
C:\Users\Chloe\workspace\spinsci>docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
0df9daa8d8cc b7bd807e363a "/bin/sh -c /bin/ash" 9 seconds ago Up 6 seconds 0.0.0.0:1300->1300/tcp optimistic_newton
C:\Users\Chloe\workspace\spinsci>docker exec -it 0df9daa8d8cc /bin/ash
/ # nc -l -p 1300
На моем хост-компьютере, Я пытаюсь подключиться, и это не удается:
$ nc -vv localhost 1300
nc: connect to localhost port 1300 (tcp) failed: Connection refused
nc: connect to localhost port 1300 (tcp) failed: Connection refused
$ nc 127.0.0.1 1300
$ nc 0.0.0.0 1300
$ telnet localhost 1300
Trying ::1...
Connection failed: Connection refused
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused
Мой Dockerfile
просто
FROM alpine:latest
EXPOSE 1300
CMD /bin/ash
Запуск docker inspect 0df9daa8d8cc
Выход
...
"HostConfig": {
"PortBindings": {
"1300/tcp": [
{
"HostIp": "",
"HostPort": "1300"
}
]
},
...
"NetworkSettings": {
"Ports": {
"1300/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "1300"
}
]
},
...
"Networks": {
"Gateway": "172.17.0.1",
"IPAddress": "172.17.0.2",
Использование Docker Ящик для инструментов (Двигатель 19.03.5) потому что Windows 8.1.