Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用setup.py安装构建docker映像比首先安装pip要慢得多_Python_Docker - Fatal编程技术网

Python 使用setup.py安装构建docker映像比首先安装pip要慢得多

Python 使用setup.py安装构建docker映像比首先安装pip要慢得多,python,docker,Python,Docker,我有一个docker映像,它接受我的代码并运行python setup.py install来安装所有依赖项,但是性能明显比我先安装-r requirements.txt要差 FROM python:3.7-alpine COPY . /myproj WORKDIR /myproj RUN pip3 install --no-cache-dir -r requirements.txt RUN python3 setup.py install CMD ["python3", "main.py"

我有一个docker映像,它接受我的代码并运行
python setup.py install
来安装所有依赖项,但是性能明显比我先安装-r requirements.txt要差

FROM python:3.7-alpine

COPY . /myproj
WORKDIR /myproj
RUN pip3 install --no-cache-dir -r requirements.txt
RUN python3 setup.py install

CMD ["python3", "main.py"]


real    0m9.090s
user    0m1.178s
sys     0m1.226s
这很快,但如果我这么做了

FROM python:3.7-alpine

COPY . /myproj
WORKDIR /myproj
RUN python3 setup.py install

CMD ["python3", "main.py"]


real    1m6.519s
user    0m1.213s
sys     0m1.277s
requirements.txt:

boto3==1.10.36
jinja2==2.10.3
policyuniverse==1.3.2.1
setup.py安装需要:

'boto3',
'jinja2',
'policyuniverse',
有人知道为什么要花这么长时间吗?是因为requirements.txt中的固定版本吗

这是我的setup.py文件

from setuptools import setup, find_packages

setup(name='myapp',
      version='0.1',
      description='Myappstuff',
      url='https://placeholder.com',
      author='PT',
      author_email='me@me.com',
      license='',
      packages=find_packages(exclude=('tests',)),
      install_requires=[
          'boto3',
          'jinja2',
          'policyuniverse',
      ],
      include_package_data=True,
      zip_safe=False)

猜测一下,可能是
python setup.py install
下载并安装了从源代码处编译的模块,而
pip install-r requirements.txt
使用了更快的wheel软件包安装速度。你能展示
setup.py
的内容吗?@funnydman我对这个问题进行了更详细的编辑。