我已经成功地构建并启动了Docker容器,它运行得很好,但是当我尝试访问它[End point url 0.0.0.0:6001
]时,我收到了“套接字挂起”错误
GET http://0.0.0.0:6001/
Error: socket hang up
Request Headers
User-Agent: PostmanRuntime/7.26.8
Accept: */*
Postman-Token: <token>
Host: 0.0.0.0:6001
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
早些时候,它工作正常,但当我删除容器和图像,并重建它,然后我开始得到这个错误
我正在使用Postman
发出GET
请求,还尝试了Web浏览器
谁能告诉我出了什么问题
--更新--
Docker File
创建容器
# Create Virtual Network
$ sudo docker network create network1
# Using custom network as there are multiple containers
# which communicate with each other
# Create Containers
$ sudo docker build -t form_ocr:latest .
$ sudo docker run -d -p 6001:5000 --net network1 --name form_ocr form_ocr
netstat
命令输出
$ netstat -nltp
...
tcp6 0 0 :::6001 :::* LISTEN -
docker container inspect
输出
$ sudo docker container inspect <container-id>
outputdocker ps
输出
$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
835e8cb11eee form_ocr "python3 app.py" 16 hours ago Up 40 seconds 0.0.0.0:6001->5000/tcp form_ocr
4条答案
按热度按时间velaa5lx1#
fastapi容器也有同样的问题
确保您的应用正在侦听容器中的0.0.0.0
f45qwnt82#
只需在main.ts中添加以下内容,您将在其中监听端口:
添加'0.0.0.0',它应该工作。
n3schb8v3#
尝试本地主机:6001不是互联网地址
您还可以尝试任何系统本地ipaddress,如果您分别使用linux或windows,则可以通过键入ifconfig或ipconfig来查找ipaddress
p1iqtdky4#
容器内部的fast-API服务器也存在同样的问题:
要修复让fast-API服务器bi运行在主机=”0.0.0.0“上,当您使用
uvicorn.run
方法时,因为默认情况下将使用主机“127.0.0.1“。对我来说,这很管用:
uvicorn.run(self, host="0.0.0.0", port=port)