在docker中安装 虚拟环境时执行
source /usr/local/bin/virtualenvwrapper.sh
报错:
/usr/local/bin/virtualenvwrapper.sh: line 230:: command not found
virtualenvwrapper.sh: There was a problem running the initialization hooks.
If Python could notimport the module virtualenvwrapper.hook_loader,
check that virtualenvwrapper has been installed for
VIRTUALENVWRAPPER_PYTHON=and that PATH isset properly.
이유 : virtualenvwrapper.sh에 다음 코드가 있기 때문입니다.
# Locate the global Python where virtualenvwrapper is installed.if["$VIRTUALENVWRAPPER_PYTHON"=""] then
VIRTUALENVWRAPPER_PYTHON="$(command \which python)"# 脚本会默认使用python2环境,但是virtualenvwrapper装在了python3环境中,所以会有上面的报错
로컬 가상 환경에서 직접 프로그램을 실행 한 후 전체 환경을 Docker로 가져와 오류를 방지 할 수 있습니다. 참조하십시오 :
선배의 대답 :
그런 다음 dockerfile 작성을 시작하십시오.
주요 아이디어는 전체 가상 환경을 해당하는 docker 디렉토리까지 패키징하는 것입니다. 이 환경 패키지를 docker 동일한 가상 환경 디렉토리로 이동 하지만 가상 환경에서 pip 및 python을 사용할 수 없다는 것을 알게 될 것입니다. 걱정하지 마세요. 변경해야합니다. 이 두 위치에 해당하는 경로 를 변경하면됩니다 . 이 두 파일은 각각 pip 및 activate입니다 .