docker容器中执行python出现PermissionError: [Errno 1] Operation not permitted: ‘/opt/conda/bin/python‘的解决方法

本文讲述了在Docker20.x环境下,由于glibc版本差异导致的PermissionError,解决方法包括使用低版本镜像替换高版本容器,或者升级Docker到支持多线程的新版本,但后者不推荐。
摘要由CSDN通过智能技术生成

错误细节:

所执行的命令:

# 启动Django Web服务
python manage.py runserver 0.0.0.0:8000

 所报错误:

PermissionError: [Errno 1] Operation not permitted: ‘/opt/conda/bin/python‘

错误原因:docker版本过低(version 20.x)而容器对应的基础镜像版本过高,如Ubuntu22.04、Debian12等,执行Django服务程序时无法多线程执行。可参考:

This is because the default seccomp profile of Docker 20.10.9 is not adjusted to support the clone() syscall wrapper of glibc 2.34 adopted in Ubuntu 21.10 and Fedora 35.

解决方法:

1、拉取低版本的镜像(Ubuntu20.04及以下版本、Debian11及以下版本),使用新镜像重新运行封装容器(推荐:不会影响已有的docker镜像与容器),如:

# 原始的高版本镜像
docker pull bitnami/pytorch:latest
docker pull bitnami/pytorch:2.2.2-debian-12-r0
 
# 新拉取的低版本镜像
docker pull bitnami/pytorch:2.0.0-debian-11-r0


2、卸载旧版本的docker安装/升级docker至新版本(version 21.x以上),重新运行容器(不推荐:新版本安装过程时间长且容易带来其它问题,可能影响已有的docker镜像与容器);

sudo apt-get upgrade docker-ce
  • 11
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值