docker出现pip无法安装软件包

docker出现pip无法安装软件包

说明

RUN pip install -r requirements.txt

收到错误

Step 3 : RUN pip install -r requirements.txt
 ---> Running in fe0b84217ad1
Collecting blinker==1.3 (from -r requirements.txt (line 1))
  Retrying (Retry(total=4, connect=None, read=None, redirect=None)) after connection broken by 'ProtocolError('Connection aborted.', gaierror(-2, 'Name or service not known'))': /simple/blinker/

原因:pip无法从docker容器内部访问任何软件包

解决措施:Docker没有使用正确的DNS服务器

解决措施

1、修改网卡设置

# 先找到文件位置
find / -name ifcfg-eth*  

默认允许Network Manager管理DNS,所以首先设置为no,然后操作DNS设置

# 编辑
vim /etc/sysconfig/network-scripts/ifcfg-eth0
# 修改
NM_CONTROLLED="no"  //是否允许Network Manager管理,设置为no

2、设置DNS内容

还是在etc/sysconfig/network-scripts/ifcfg-eth0中修改

PEERDNS="yes"
DNS1="8.8.8.8"  # Google DNS

这种设置方案是以网卡中设置的DNS为主,resolv.conf中按照网卡设置的DNS内容自动生成,以后想修改DNS,必须修改网卡中的设置才不会在服务器重启之后出现DNS设置失效的问题。

3、重启网卡

service network restart

可能遇到的问题

WARNING: IPv4 forwarding is disabled. Networking will not work.

第一步:在宿主机上执行

echo "net.ipv4.ip_forward=1" >>/usr/lib/sysctl.d/00-system.conf

第二步:重启network和docker服务

systemctl restart network && systemctl restart docker

参考

https://stackoverflow.com/questions/28668180/cant-install-pip-packages-inside-a-docker-container-with-ubuntu/41989423#41989423

https://blog.csdn.net/w670328683/article/details/61923858

https://www.cnblogs.com/python-wen/p/11224828.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值