参考

Windows 11 家庭中文版安装Docker Desktop:https://blog.csdn.net/Xiao_Ya__/article/details/152329190?spm=1001.2014.3001.5502

Docker Desktop:https://blog.csdn.net/Xiao_Ya__/article/details/153197585?spm=1001.2014.3001.5501


将源码和环境放进Docker的完整过程


Docker是一个流行的容器化平台,用于创建、部署和管理应用程序。将Windows的源码及其运行环境放入Docker中,可以保证环境的一致性,提高软件的可移植性和可维护性。本文将详细介绍如何在Windows上使用Docker来容纳源码和其所需环境,并提供相应的代码示例。

一、前期准备


在开始之前,请确保你已经安装了Docker Desktop,并且配置正确。可以从[Docker官网]( --version`来验证Docker的安装是否成功。

docker --version

二、创建项目结构


在你的Windows系统中,创建一个新的文件夹作为项目根目录。在这个目录里,你可以创建以下子文件夹和文件:

my_docker_project/
├── app/
│   └── main.py
├── Dockerfile
└── requirements.txt

注意:

Dockerfile 文件,文件类型就是名为 Dockerfile 的纯文本文件(不是 .txt、.bat 或 .py)。

1.在项目文件夹里右键 → “新建” → “文本文档”

2..输入内容后保存为:
文件名: Dockerfile
保存类型: “所有文件 (.)”
编码: UTF-8

3.确认文件名最终为 Dockerfile,而不是 Dockerfile.txt。

检查方法:在资源管理器中开启“查看 → 文件扩展名”,如果看到 .txt,请改名删除扩展名。

1. app/main.py


在app文件夹中,创建一个Python程序main.py,示例代码如下:

# app/main.py

def hello_world():
    print("Hello, World!")

if __name__ == "__main__":
    hello_world()

2. requirements.txt


在项目根目录下,创建一个requirements.txt文件,虽然此示例没有特定的库,但你可以列出你项目所需的所有Python库,例如:

# requirements.txt
flask
numpy

3. Dockerfile


在项目根目录下创建一个Dockerfile,该文件定义了Docker镜像的构建过程。以下是一个简单的Dockerfile示例:

# Dockerfile

# 使用官方Python镜像
FROM python:3.10-slim

# 设置工作目录
WORKDIR /app

# 复制 requirements.txt 到镜像中
COPY requirements.txt .

# 安装依赖
RUN pip install --no-cache-dir -r requirements.txt

# 复制源码到镜像中
COPY app/ .

# 指定容器启动时执行的命令
CMD ["python", "main.py"]

三、构建Docker镜像


回到项目的根目录,打开命令行窗口并运行以下命令以构建Docker镜像:

docker build -t my_python_app .


构建完成后,你可以使用以下命令列出所有镜像,验证你的镜像已成功创建:

docker images

四、运行Docker容器


构建完成后,你可以运行该镜像来启动一个新的Docker容器:

docker run my_python_app

预期结果
当容器启动时,你应该在命令行中看到:

Hello, World!

这表明你的Docker容器成功运行了main.py中的代码。

五、常用Docker命令

命令描述
docker ps列出所有运行中的容器
docker images列出所有本地Docker镜像
docker run <image_name>基于指定镜像运行新的容器
docker stop <container_id>停止一个运行中的容器
docker rm <container_id>删除一个已停止的容器
docker rmi <image_name>删除指定的Docker镜像

六、类图设计


在实际开发中,可能会有多种模块和类。以下是一个类图示例,示范如何在应用中组织类的架构:

该类图简单展示了应用的主要类结构。

七、总结


通过以上步骤,你已经成功地将Windows环境中的Python源码及其运行环境放进Docker中。这种方法不仅减少了环境配置的复杂性,还能确保在不同环境中拥有 consistent 的运行结果。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐