要配置一个 Docker 容器以在 Linux 环境下运行,包含 Python 3.9.11、Playwright、ddddocr、requests、PyInstaller、Flask、APScheduler 和 asyncio,同时不需要在 Dockerfile 中配置 CMD
,确保容器进程在启动时不会退出,可以按照以下步骤创建一个完整的例子
1. 创建 Dockerfile
这个 Dockerfile 将设置一个基础环境,包括安装所有必要的库和配置一个长期运行的服务(例如 Flask 应用)。
# 使用官方 Python 3.9.11 镜像作为基础镜像
FROM python:3.9.11-slim
# 设置工作目录
WORKDIR /app
# 安装系统依赖项,为 Playwright 安装所必需
RUN apt-get update && apt-get install -y wget \
libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 \
libdbus-1-3 libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 \
libxrandr2 libgbm1 libgtk-3-0 libasound2 libxshmfence1
# 复制项目文件到工作目录
COPY . /app
# 安装 Python 依赖
RUN pip install playwright ddddocr requests pyinstaller flask APScheduler
# Playwright 需要运行一次 install 命令来下载浏览器
RUN playwright install
# 暴露 Flask 默认端口
EXPOSE 5000
# 使用 Flask-APScheduler 创建一个简单的 Flask 应用
COPY app.py /app/app.py