Docker에서 PYTHONDONTWRITEBYTECODE를 사용하는 데 단점이 있습니까?


9

파이썬을 기반으로하는 많은 Docker 튜토리얼 (예 : this ) PYTHONDONTWRITEBYTECODE에서는 소스 모듈을 가져올 때 Python에서 .pyc 파일을 쓰지 않도록하기 위해이 옵션을 사용합니다 (이 옵션은 -B 옵션을 지정하는 것과 같습니다).

이 옵션을 설정하면 어떤 위험과 이점이 있습니까?


이미지 크기를
— 재사용하는 방법

3
성능면에서 단점이 있습니까?
— floatingpurr

답변:


3

컨테이너에서 수명주기 동안 다른 파이썬 프로세스 자체를 생성하지 않는 단일 파이썬 프로세스를 실행하면 "위험"이 발생하지 않습니다.

디스크에 바이트 코드를 저장하면 프로그램을 처음 호출 할 때 파이썬을 바이트 코드로 컴파일하고 종속 라이브러리를 사용하여 다음 호출에서 해당 단계를 저장합니다. 컨테이너에서 프로세스는 한 번만 실행되므로이 ​​옵션을 설정하는 것이 좋습니다.


따라서 집으로 가져가는 메시지는 Docker 프로젝트의 경우이 옵션이 시간의 99 % 유용하고 안전하다는 것입니다. 권리?
— floatingpurr

1
내가 말했듯이 컨테이너 수명 기간 동안 컨테이너 프로세스 자체 이외의 다른 파이썬 프로세스를 생성하지 않으면 괜찮습니다.
— hek2mgl
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.