my python codes
# _*_ coding:utf-8 _*_
from BaseHTTPServer import BaseHTTPRequestHandler,HTTPServer
import SocketServer
class testHTTPSERVER_RequestHandler(BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type','text/html')
self.end_headers()
self.wfile.write("<html><body><h1>Hello world</h1></body></html>")
def run(server_class=HTTPServer,handler_class=BaseHTTPRequestHandler):
print('starting server ....')
server_address = ('127.0.0.1',8081)
httpd = server_class(server_address,testHTTPSERVER_RequestHandler)
print('running server')
httpd.serve_forever()
run()
和码头工人文件
FROM python:2.7-onbuild
#python:2.7.13-alpine dene
ADD testhttp_server.py /src/app/testhttp_server.py
WORKDIR /src/app/
EXPOSE 8081
CMD ["python","testhttp_server.py"]
码头工人运行和日志
莫兹拉
那么我的错误在哪里??我在两天内正在研究这个问题,但我没有找到其他任何东西
更改此内容
server_address = ('127.0.0.1',8081)
自
server_address = ('0.0.0.0',8081)
侦听 docker 容器内的127.0.0.1
意味着您只想侦听从容器内部生成的流量,但在将主机映射到容器时。它将流量从主机发送到容器的 IP。哪个ID动态并且事先不知道。因此,您需要侦听容器内的所有接口。这就是为什么你应该使用0.0.0.0