windows把源码还有环境放进docker
参考
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.pydef 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 的运行结果。