
내 컴퓨터에는 많은 가상 환경이 있을 것이고 그것들을 모두 저장하는 장소를 갖고 싶습니다. 어쨌든 $HOME
하위 디렉토리는 좋지 않은 것 같습니다. 너무 노출됨. 내가 왜 잘못 생각하고 있는지 제안이나 정당화가 있습니까?
에 대해 생각 중입니다 /var/venv/
. 이견있는 사람?
답변1
Venv의 경우 의류나 docker와 같은 컨테이너의 보안 제한 문제를 피하기 위해 $HOME의 하위 디렉터리에 있는 것이 좋습니다.
이 파일의 제한사항에 유의하세요.
/etc/apparmor.d/abstractions/python
이론적으로는 /opt에 넣을 수 있지만 venvs는 실제로 사용자별로 다르며 사용자 홈 디렉터리에 있어야 합니다. 로컬은 다른 배포 제한 사항과 /usr이 공식적으로 LSB에 의해 네트워크에서 공유되는 것으로 가정하기 때문에 옵션이 아닙니다.
나는 개인적으로 golang 구조의 수정된 버전을 따릅니다.
~build/
+$language/
+bin/
| venv/
| |---Python2.7
| +---Python3.6
+pkg
+src/
|
+--- my_work/..
| |---repo1
| +---other_project
|
+-- external-repo.com/..
이를 통해 콘텐츠를 쉽게 찾고 이동할 수 있으며 보안 모델, cgroups의 기타 제한 사항과 호환됩니다. 이러한 제한 사항은 컨테이너가 인기를 끌수록 더욱 중요해집니다.
venvs는 원래 프로젝트 디렉터리에 포함되도록 의도되었다는 점을 기억하세요. 핵심 OS 종속성 및 주요 버전 변경에 대한 현실로 인해 사용이 증가했지만 개별 패키지, 프로세스 또는 사용자에 최대한 가깝게 유지하는 것이 여전히 바람직합니다.