首页 >后端开发 >Python教程 >Python 应用程序的 Dockerfile

Python 应用程序的 Dockerfile

Susan Sarandon
Susan Sarandon原创
2024-12-15 14:17:14237浏览

Dockerfile for a Python application

让我们为 Python 应用程序创建一个简单的 Dockerfile。此示例假设您有一个名为 app.py 的 Python 脚本和一个包含应用程序依赖项的requirements.txt 文件。

  1. 打开终端。
  2. 导航到要创建或编辑 Dockerfile 的目录。
  3. 输入 vi Dockerfile 并按 Enter。这将打开 vi 编辑器,其中包含一个名为 Dockerfile 的新文件。
  4. 按 i 进入插入模式。您现在可以开始输入 Dockerfile 内容。
  5. 完成编辑后,按 Esc 退出插入模式。
  6. 输入 :wq 并按 Enter 键保存更改并退出 vi。如果您想退出而不保存,请输入 :q!并按 Enter 键。
# Use an official Python runtime as a parent image
FROM python:3.9-slim

# Set the working directory in the container
WORKDIR /app

# Copy the current directory contents into the container at /app
COPY . /app

# Install any needed dependencies specified in requirements.txt
RUN pip install --no-cache-dir -r requirements.txt

# Make port 8080 available to the world outside this container
EXPOSE 8080

# Define environment variable
ENV NAME World

# Run app.py when the container launches
CMD ["python", "app.py"]

在此 Dockerfile 中:

  • 我们使用版本 3.9 的官方 Python Docker 映像(具体来说,是较小的 slim 版本)。
  • 我们将容器内的工作目录设置为/app。
  • 我们将当前目录(您的 app.py 和requirements.txt 文件应驻留在其中)复制到 /app 的容器中。
  • 我们安装requirements.txt中指定的Python依赖项。
  • 我们公开端口 8080 以允许与容器通信。
  • 我们将环境变量NAME设置为“World”(您可以根据需要更改它)。
  • 最后我们指定容器启动时运行的命令是 python app.py。

要使用此 Dockerfile 构建映像,请导航到包含 Dockerfile 的目录并运行:

docker build -t my-python-app .

将 my-python-app 替换为 Docker 镜像所需的名称。

构建镜像后,您可以使用以下命令运行容器:

docker run -p 8080:8080 my-python-app

此命令运行一个基于您的 Docker 映像的容器,将端口 8080 从容器转发到主机上的端口 8080。根据您的应用程序的要求调整端口映射。

以上是Python 应用程序的 Dockerfile的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn