Докер в Windows - порт заблокирован - PullRequest
0 голосов
/ 14 октября 2018

Недавно я столкнулся с ошибкой, когда пытался локально протестировать мой Golang API.

Мой API был открыт для порта 8080:

log.Fatal(http.ListenAndServe(":8080", router))

Мой последний файл Docker представляет API для того же порта:

FROM scratch

WORKDIR /app
COPY ./fooAPI.exe /app/fooapi
COPY ./cmd/fooAPI/conf.json /app

# tell we are exposing our service on port 8080
EXPOSE 8080

# run it!
CMD ["./fooapi"]  

Когда я пыталсяЗапустите мой образ докера, у меня появилось следующее сообщение об ошибке:

C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from daemon: driver failed programming external connectivity on endpoint fooapi (f6d5bed281ad1e8c1c56770cc1c05e3b5a7f8a05abd8265ae3a4007eeb3ff895): 
Error starting userland proxy: mkdir /port/tcp:0.0.0.0:8080:tcp:172.17.0.2:8080: input/output error

Событие после удаления предыдущих контейнеров с помощью следующей команды:

docker rm $(docker ps -a -q)

1 Ответ

0 голосов
/ 14 октября 2018

Docker в Windows иногда блокирует ваши порты, даже после удаления вашего контейнера, в течение неопределенной продолжительности.

Самое простое, что вам нужно сделать, это перезапустить Docker, и порт больше не блокируется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...