문맥
저는 현재 Gentoo 데스크톱을 실행하고 있으며 내 시스템에서 적절한 Python 개발을 수행하고 싶습니다.
docker-compose
젠투의 이머지 시스템을 통해 일부 패키지를 설치 하려고 합니다 . docker-compose
이전 버전의 모듈에 대한 종속성 으로 인해 requests
시스템 업데이트가 지루하고 해결하기 어려워졌습니다 .
그런 다음 시스템 전체 도구/라이브러리와의 충돌을 피하기 위해 해당 플래그를 pip
사용하여 설치하라는 조언으로 전환 하고 따랐습니다. 이 사용자 수준에서 설치했는데 개별 프로젝트의 종속성을 관리하기 위해 Pipenv를 믹스에 추가하기 전까지는 모든 것이 잘 진행되었습니다. Pipenv는 이 플래그를 좋아하지 않으며 파일에 설정할 때 종속 항목 설치를 거부합니다 .--user
pip
docker-compose
--user
pip.conf
virtualenv
제목에...
내 시스템에 필요한 다양한 수준의 Python 패키지를 격리하는 방법을 원합니다. 나는 젠투 도구에 의해 설정된 시스템 종속성을 유지하고 emerge
, 주 사용자가 액세스할 수 있는 도구와 라이브러리를 설치할 장소를 갖고 싶고, 마지막으로 특정 프로젝트에만 필요한 라이브러리를 저장할 장소를 갖고 싶습니다. 내 컴퓨터에는 사용자가 한 명뿐이므로 사용자 간에 "사용자" 종속성을 공유하는 것에 대해 크게 걱정하지 않고 오히려 모든 디렉터리에서 해당 사용자에 액세스할 수 있는지 확인합니다.
s를 살펴봤지만 virtualenv
"사용자" 수준보다는 "프로젝트별" 수준에서 더 잘 작동하는 것 같습니다. 제가 아는 한, virtualenv
한 번에 하나만 활성화될 수 있으므로 docker-compose
홈 디렉터리에서 항상 활성화된 도구를 설치한 다음 프로젝트에 대한 새 도구로 전환하면 해당 도구에 액세스할 수 없으며 "사용자" 수준으로 설치한 다른 모든 것.virtualenv
virtualenv
docker-compose
virtualenv
간단히 말해서, Python 종속성의 다양한 "수준"을 관리하기 위한 옵션은 무엇입니까? 사용자 수준 시스템 종속성과 프로젝트 수준 사용자 종속성을 짓밟지 않도록 하는 모범 사례는 무엇입니까? 그렇다면 이러한 다양한 수준을 안전하게 격리하기 위해 어떤 조치를 취하시겠습니까?
이것은 내 첫 번째 Stackexchange 게시물이므로 이 질문을 명확하게 하거나 개선할 수 있으면 알려주시기 바랍니다. 사전에 조사를 하려고 했으나 부족하다는 느낌이 들었습니다.