在Docker容器中运行一个Python应用程序,可以通过以下步骤进行:
- 编写Python应用程序:
python
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000)
- 构建Dockerfile:
Dockerfile
FROM python:3.7-alpine
WORKDIR /app
ENV FLASK_APP app.py
ENV FLASK_RUN_HOST 0.0.0.0
RUN pip install Flask
COPY . .
CMD ["flask", "run"]
此Dockerfile构建基于python:3.7-alpine的镜像,设置环境变量指定app.py为Flask应用入口并运行,并将当前目录中的代码复制到镜像。
- 构建镜像:
docker build -t flask-app .
- 运行容器:
docker run -p 5000:5000 -d flask-app
此命令在后台运行容器,并映射5000端口。
- 访问应用:
打开http://localhost:5000可以访问Flask应用。 - 在Docker Compose中定义应用:
yaml
version: '3'
services:
flask-app:
build: .
image: flask-app
ports:
- "5000:5000"
docker-compose up
可以一键启动应用。