推荐答案
-- -------------------- ---- ------- - ---------- -- ---- --------------- - ------ ------- ---- - ---------------- ---- -- ---- - ---- - ---- --- --- ------- -------------- -- ---------------- - ---- ------ ---- - ---- --- ---------- ---------
- 创建一个
Dockerfile
文件,内容如上所示。 - 在项目根目录下运行以下命令构建 Docker 镜像:
docker build -t my-python-app .
- 运行 Docker 容器:
docker run -p 5000:5000 my-python-app
本题详细解读
1. Dockerfile 解析
- FROM python:3.9-slim: 使用官方的 Python 3.9 镜像作为基础镜像,
slim
版本是一个轻量级的镜像,适合生产环境。 - WORKDIR /app: 设置容器内的工作目录为
/app
,后续的命令都会在这个目录下执行。 - COPY . /app: 将当前目录下的所有文件复制到容器的
/app
目录中。 - RUN pip install --no-cache-dir -r requirements.txt: 安装 Python 依赖,
--no-cache-dir
选项用于避免缓存,减少镜像大小。 - EXPOSE 5000: 暴露容器的 5000 端口,通常用于 Flask 或 Django 等 Web 应用。
- CMD ["python", "app.py"]: 指定容器启动时运行的命令,这里是运行
app.py
文件。
2. 构建和运行 Docker 容器
- docker build -t my-python-app .: 构建 Docker 镜像,
-t
选项用于指定镜像的名称和标签,.
表示当前目录为构建上下文。 - docker run -p 5000:5000 my-python-app: 运行 Docker 容器,
-p 5000:5000
将容器的 5000 端口映射到主机的 5000 端口,my-python-app
是镜像名称。
3. 其他注意事项
- requirements.txt: 确保项目根目录下有一个
requirements.txt
文件,列出所有依赖包。 - .dockerignore: 可以创建一个
.dockerignore
文件,忽略不需要复制到容器中的文件,类似于.gitignore
。
通过以上步骤,你可以成功使用 Docker 部署 Python 应用。