当前位置: 首页 > 知识库问答 >
问题:

Docker生成:未找到匹配的分发

龚承嗣
2023-03-14

我尝试用pip构建docker镜像,运行pip3安装*包*--索引url=*url*--受信任主机=*url*。但是,它失败了,并出现以下错误:

找不到满足要求的版本*包*(来自版本:)找不到*包*的匹配发行版。

然而,在我删除了包并成功构建了映像后,我可以从docker容器中成功安装包!

我用来构建镜像的bash是:sudo docker build-network=host-t adelai:deploy-f伯纳德。Dockerfile。


共有2个答案

郤旭东
2023-03-14

问题解决了:我在构建期间设置了环境变量(ARG http\u proxy=“*url*”),并在安装之前将其取消设置(ENV http\u proxy=)。

我不是docker方面的专家,但我猜原因是在构建后丢弃了环境变量,这导致dockerfile和docker容器之间的环境不同。

@Matthias Reissner提供了一个可靠的指南,但这个答案绝对提供了在docker构建期间调试问题的更详细的方法。

水瀚漠
2023-03-14

拜托你试试

docker run --rm -ti python bash

然后运行您的<代码>pip 在此容器内。

 类似资料:
  • 我有C#解决方案,有4个项目,3个是Dlls,1个是控制台应用程序使用这些DLL。 我试图使用visual studio上的docker支持来构建我的docker映像,但我的docker文件失败,如下所示: 我将CD放入docker文件所在的目录,并执行docker build。错误: 你可以看到那条路找不到。而我试图在我的电脑上创建docker文件。sln级别。我更改了docker文件中的一行。

  • null 我正在CentOS Linux版本7.3.1611的虚拟环境中使用Python2.7。 我正在运行一个使用matplotlib.pyplot的脚本,运行时会出现以下错误 我试着用- 然后我甚至安装了- 并且它表示包已经安装并且 我已经重新设置了我的虚拟环境,看看我是否错过了什么,但我无法到达任何地方。请救命!

  • 问题内容: 我正在尝试运行python urllib2脚本并收到此错误: InsecurePlatformWarning:真正的SSLContext对象不可用。这会阻止urllib3正确配置SSL,并可能导致某些SSL连接失败。有关更多信息,请参见https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarn

  • 我们已经添加了使用log4j2.x的库,但是我们仍然在使用log4j1.x(主要是因为我们有自己的一些附加程序和记录器的impl)。我被告知,解决方案是将log4j2.x发送到slf4j(使用log4j-to-slf4j,版本2.x),然后将slf4j发送到log4j1.x,使用slf4j-log4j12,版本1.x。 这就是我刚才所做的,但我仍然得到这样的信息: 我希望slf4j使用log4J

  • 这是一个简单的批处理文件,应该通过一个文件(PingList_Results.txt)运行,并拉出任何符合正则表达式(IPv4 Addy)的行,但它不起作用。我肯定这个问题很简单,但我不明白。谢谢! 示例PingList_结果。txt: ping 10.10。10.11包含32字节的数据:从10.10回复。10.11:字节=32时间=62ms TTL=54 Ping统计为10.10。10.11:数

  • 问题内容: 我正在使用/ 来获取HTTP响应中的响应代码。返回1,但是尝试获取异常!知道为什么吗? 这是代码: 这是输出: 问题答案: 总是会创建一个新的匹配器,因此您需要再次致电。 尝试: