docker python SimpleHtpServer不工作

2024-06-16 17:11:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我的python代码

# _*_ 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()

和docker文件

^{pr2}$

docker run and logs

mozilla

我的错误在哪里??我已经花了两天的时间在研究这个问题,但是我没有发现其他任何东西


Tags: runimportselfsendserverdefhtmlbody
1条回答
网友
1楼 · 发布于 2024-06-16 17:11:10

改变这个

server_address = ('127.0.0.1',8081)

^{pr2}$

监听docker容器内的127.0.0.1意味着您只想监听容器内部生成的流量,但当您将主机映射到容器时。它将流量从主机发送到容器的IP。它是动态的,不知道在手上。所以您需要监听容器内的所有接口。这就是为什么您应该使用0.0.0.0

相关问题 更多 >