我有一个具有一层的docker文件
RUN python setup.py develop
我正在使用具有三个阶段的多阶段构建,这是所有阶段都具有相同基础映像的阶段,尽管我认为这不是dockerfile的问题,但似乎是python和它的执行方式处理基础图像python:3.7-slim
我在下面用这个在Travis CI上构建这个dockerfileTravis的版本信息:
docker version
Client:
Version: 17.09.0-ce
API version: 1.32
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:42:38 2017
OS/Arch: linux/amd64
Server:
Version: 17.09.0-ce
API version: 1.32 (minimum version 1.12)
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:41:20 2017
OS/Arch: linux/amd64
Experimental: false
我得到此错误,为>]
AttributeError: 'ParsedRequirement' object has no attribute 'req'
令人惊讶的是,我能够在具有docker版本
19.03.2
的Mac机器上使用此功能这是我的setup.py
文件
import os import shutil import inspect import platform from setuptools import setup import setuptools try: from pip.req import parse_requirements except ImportError: from pip._internal.req import parse_requirements EMAIL_CONF = 'email.conf' DL_CONF = 'dl.conf' LINUX_CONFDIR = os.path.expanduser('~') + '/.config/bassa/' WIN_CONFDIR = os.path.expanduser('~') + '/%app_data%/bassa/' OSX_CONFDIR = os.path.expanduser('~') + '/.config/bassa/' # Utility function to read the README file. def read(file_name): return open(os.path.join(os.path.dirname(__file__), file_name)).read() base_dir = os.path.dirname(os.path.abspath(__file__)) requirements_path = os.path.join(base_dir, 'requirements.txt') install_reqs = parse_requirements(requirements_path, session=False) requirements = [str(ir.req) for ir in install_reqs] ### Set configs ### if platform.system() == 'Linux': configdir = LINUX_CONFDIR elif platform.system() == 'Windows': configdir = WIN_CONFDIR elif platform.system() == 'Darwin': configdir = OSX_CONFDIR if not os.path.exists(configdir): os.makedirs(configdir) email_conf_location = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) + "/" + EMAIL_CONF dl_conf_location = os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe()))) + "/" + DL_CONF shutil.copyfile(email_conf_location, configdir + EMAIL_CONF) shutil.copyfile(dl_conf_location, configdir + DL_CONF) ###/ Set configs ### setup( ... )
请帮助我解决这个问题。
我有一个带有运行python setup.py的docker文件,其中一层具有三个阶段的多阶段构建,这是所有阶段具有相同基础映像的阶段,尽管我没有...
我终于找到了解决方法,\ o /