在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服务器以处理静态文件。
➡️