Недавно я столкнулся с ошибкой, когда пытался локально протестировать мой 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)