Python 3.x 使用Python3的Web应用程序在停靠时不工作 HelloWorld-1.py
使用以下命令构建dockerPython 3.x 使用Python3的Web应用程序在停靠时不工作 HelloWorld-1.py,python-3.x,docker,flask,Python 3.x,Docker,Flask,使用以下命令构建docker docker build -t helloworld . docker run -d --name helloworld -p 80:80 helloworld docker ps -a 使用以下命令运行docker映像 docker build -t helloworld . docker run -d --name helloworld -p 80:80 helloworld docker ps -a 当我运行下面的命令时 docker build
docker build -t helloworld .
docker run -d --name helloworld -p 80:80 helloworld
docker ps -a
使用以下命令运行docker映像
docker build -t helloworld .
docker run -d --name helloworld -p 80:80 helloworld
docker ps -a
当我运行下面的命令时
docker build -t helloworld .
docker run -d --name helloworld -p 80:80 helloworld
docker ps -a
我得到下面的输出
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
cebfe8a22493 helloworld "python /home/HelloW…" 2 minutes ago Up 2 minutes (unhealthy) 0.0.0.0:80->80/tcp helloworld
如果我点击浏览器(127.0.0.1:5000),它不会给出响应,
但是当我单独运行python文件时,它在浏览器中正常运行。我重现了您的问题,主要有四个问题:
烧瓶
名称
而不是\uuuuuu名称
HelloWorld-1.py
的外观:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def printHelloWorld():
print("+++++++++++++++++++++")
print("+ HELLO WORLD-1 +")
print("+++++++++++++++++++++")
return '<h1>Bishwajit</h1>'
# return '<h1>Hello %s!<h1>' %name
if __name__ == '__main__':
app.run(host='0.0.0.0')
FROM python:3
ADD HelloWorld-1.py .
RUN pip install flask
CMD [ "python", "/HelloWorld-1.py"]
然后简单地构建并运行:
docker build . -t helloflask
docker run -dit -p 5000:5000 helloflask
现在转到localhost:5000
,它应该可以工作了
另外:您实际上可以分配任何其他端口,例如4444,然后转到localhost:4444
:
docker run -dit -p 4444:5000 helloflask
您正试图使用
127.0.0.1:5000
进行访问,-p
参数是否应为-p 5000:80
?我也尝试过更改端口,但它不起作用。我的docker文件正确吗?我也试过了。。在Dockerfile中…如果它被更改,它就在那里。@programandoconro终于起作用了。我更改了一些东西,如“app.run(debug='true',port='5000',host='0.0.0')”、“docker run-p 5000:5000 helloworld``不,它仍然不起作用。在Dockerfile中……如果需要更改,它将公开80。是的。对的如果我想公开一个端口,它需要首先给出该端口,然后在Dockerfile中公开它。