使用dockerfile文件部署Python+PyWebIO项目

1、安装docker

教程详见之前的内容。https://blog.csdn.net/weixin_44691253/category_12101661.html

2、打包好Python项目

之前的文章中有提到我编写测试工具使用的框架:Python+Requests+PyWebIO框架详解,编写测试工具提高团队测试效率

打包项目时,需要创建requirements.txt,使用pip freeze命令生成,存放至Project根目录下。

在python项目下,执行以下命令,即可生成此文件,其中列出了该项目依赖的所有3方库。

shell 复制代码
pip freeze > requirements.txt

3、编写Dockerfile文件

新建一个txt文件,命名为Dockerfile,存放至项目TestTools根目录下。

复制代码
# 基础镜像
FROM python:3.9.5
# 将项目代码复制到容器中
COPY . /TestTools
WORKDIR /TestTools
# 安装所需的 Python 库
RUN pip install -r requirements.txt
# 启动命令
CMD ["python", "main.py"]

4、构建Docker镜像

在TestTools目录下打开cmd或者powershell。运行以下命令来构建Docker镜像

shell 复制代码
docker build -f .\Dockerfile . -t pywebio-tools

5、小编遇到的问题

错误一

使用此命令构建时报错

shell 复制代码
docker build -t pywebio .

改成指定dockerfile文件后问题解决了。

shell 复制代码
docker build -f .\Dockerfile . -t pywebio-tools

错误二

这里的点和/TestTools之间是有空格的。修改之后就可以正常构建了。

错误三

复制代码
# 安装所需的 Python 库
RUN pip install -r requirements.txt

requirements.txt使用上述的路径,提示找不到。原因是dockerfile文件中的workdir写的不是TestTools。如果是其他名称,就需要指定路径(RUN pip install -r /TestTools/requirements.txt),如果是TestTools,当前写法就是ok的。
这里把WORKDIR改成 /TestTools即可。

python 复制代码
WORKDIR /TestTools

6、构建Docker镜像成功

构建中:

构建完成:

7、在Docker Desktop可查看Images

8、创建容器

复制代码
docker run -d -p 88:8888 --name=test-tools pywebio-tools

创建容器成功后,在web端直接访问pywebio application的url即可。

相关推荐
开心就好20255 小时前
Flutter iOS应用混淆与安全配置详细文档指南
后端·ios
掘金者阿豪5 小时前
记一次NFS下的权限踩坑:从“Operation not permitted”到安装成功的折腾实录
后端
飞Link5 小时前
【AI大模型实战】万字长文肝透大语言模型(LLM):从底层原理解析到企业级Python项目落地
开发语言·人工智能·python·语言模型·自然语言处理
妙蛙种子3115 小时前
【Java设计模式 | 创建者模式】 原型模式
java·开发语言·后端·设计模式·原型模式
翻斗包菜5 小时前
第 03 章 Python 操作 MySQL 数据库实战全解
数据库·python·mysql
LlNingyu5 小时前
Go 实现无锁环形队列:面向多生产者多消费者的高性能 MPMC 设计
开发语言·golang·队列·mpmc·数据通道
Lyyaoo.5 小时前
【JAVA基础面经】线程的状态
java·开发语言
阿聪谈架构5 小时前
第07章(下):LangGraph 工作流进阶 —— 检查点、人工介入与多 Agent 协作
人工智能·后端
John.Lewis5 小时前
C++进阶(8)智能指针
开发语言·c++·笔记
希望永不加班5 小时前
SpringBoot 配置绑定:@ConfigurationProperties
java·spring boot·后端·spring