在python项目的docker镜像里使用pdm管理依赖 - 程序设计实验室
💡
原文中文,约2000字,阅读约需5分钟。
📝
内容提要
在DjangoStarter项目中,使用pdm作为默认的包管理器,修改dockerfile和docker-compose配置。dockerfile中设置Python环境变量、禁用更新检查、安装pdm并配置镜像。docker-compose配置redis和web服务,web服务使用pdm运行项目。建议使用不带slim的Python镜像来使用uwsgi,可以禁用pdm创建的虚拟环境。
🎯
关键要点
- 在DjangoStarter项目中使用pdm作为默认包管理器,替代pip。
- 需要修改dockerfile和docker-compose配置以适应pdm。
- dockerfile中设置Python环境变量,禁用更新检查,并安装pdm。
- 使用不带slim的Python镜像以支持uwsgi的编译依赖gcc。
- 可以通过pdm配置禁用虚拟环境,适合在docker镜像中使用。
- docker-compose配置redis和web服务,web服务使用pdm运行项目。
- 新版docker-compose不再要求配置文件版本号。
- 所有容器都配置了container_name,使用环境变量存放容器名称。
- 入口命令使用pdm run以自动启用虚拟环境。
- 建议在docker-compose中添加NGINX或其他轻量级web服务器以处理静态文件。
➡️