我已经关注了本教程http://containertutorials.com/docker-compose/flask-simple-app.html它提供了一个有效的Dockerfile,并且docker进行了构建。
他们说运行docker run -d -p 5000:5000 flask-sample-one
来运行应用程序,但这不会运行应用程序,它只是运行并退出。正确的命令应该让应用程序在容器中运行,以便您可以访问服务器(localhost:5000)。在他们的示例中,他们显示的状态为“启动”,这是不正确的:
cchilders:~/web
$ docker build -t flask-sample-one:latest .
Sending build context to Docker daemon 4.096 kB
Step 1/8 : FROM ubuntu:latest
---> 6a2f32de169d
Step 2/8 : RUN apt-get update -y
---> Using cache
---> 40ba52c006e7
Step 3/8 : RUN apt-get install -y python-pip python-dev build-essential
---> Using cache
---> ceeb0f2dc898
Step 4/8 : COPY . /app
---> Using cache
---> 4116b8a61dd0
Step 5/8 : WORKDIR /app
---> Using cache
---> 0115b7c1af92
Step 6/8 : RUN pip install -r requirements.txt
---> Using cache
---> 821b5910bf3b
Step 7/8 : ENTRYPOINT python
---> Using cache
---> 6965a343433e
Step 8/8 : CMD app.py
---> Using cache
---> c840a89d0622
Successfully built c840a89d0622
cchilders:~/web
$ docker run -d -p 5000:5000 flask-sample-one
055e9ebe5a633b042e432c07f225ac373cdcad34b4a2c61cd366507691e3ad0a
cchilders:~/web
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
055e9ebe5a63 flask-sample-one "python app.py" 5 seconds ago Exited (1) 4 seconds ago distracted_joliot
每次我运行它,它都会退出。如何运行容器以保持活动状态?谢谢
答案1
本教程有一个语法错误“From”,我没有注意到。要解决无法运行的容器,请使用docker logs [container_id]
https://docs.docker.com/engine/admin/logging/view_container_logs/