Closed metroluffy closed 6 years ago
是容器里的错误还是容器外的错误?
用的是relesase中的版本吗?
提供的信息太少了,没办法给出更具体的回答
十分抱歉,之前只简略提出了错误信息。
我使用的是relesase中的版本,以上错误发生在运行docker-compose up
时,随着第一条错误发生之后的提示:
Failed building wheel for cryptography
,
估计是发生在容器内?因为已经安装了相关的依赖(openssl-devel、libffi-devel以及python-devel)。
看样子是装scrapy的依赖cryptography
出错了
你可以尝试改一下Dockerfile
,根据这个答案在Dockerfile
中安装一些其它的依赖。暂时你先别用docker compose
,直接使用Dockerfile
看看能否启动scrapy worker,不行的话,尝试分层调试一下镜像,通过
docker exec -it your_container_of_the_lastest_success_level_of_image /bin/bash
来手动安装一下cryptography,看看究竟是缺了什么依赖
或者你试试在你的机器上看看能否装cryptography
,是不是有些东西会依赖宿主机
我在Dockfile中添加了这一句解决了:
RUN apt install build-essential libssl-dev libffi-dev python3-dev -yq
说是cryptography的安装依赖。
但是我理解都是基于同一个image (Ubuntu:16.04)这种情况大家不应该都有么?怎么看起来像是部分情况?
参考:How to install cryptography on ubuntu?
另,如果是CentOS的话,要装这些:
yum install gcc libffi-devel python-devel openssl-devel
感谢回复。这个我也不是特别清楚个中原理,我在Ubuntu17和CentOS7上测试都没有问题。Docker的运行时是基于Linux Kernel的,不知道这个对它是否有影响
使用docker部署时遇见两个错误:
环境:CentOS 7.4, 但是我已经安装了相关联的devel