¿Hay alguna desventaja en usar PYTHONDONTWRITEBYTECODE en Docker?

9

En muchos tutoriales de Docker basados ​​en Python (como: este ) usan la opción PYTHONDONTWRITEBYTECODEpara evitar que Python escriba archivos .pyc en la importación de módulos fuente (esto es equivalente a especificar la opción -B).

¿Cuáles son los riesgos y las ventajas de configurar esta opción?

floatingpurr
fuente
para volver a usar el tamaño de la imagen
LinPy
3
¿Algún inconveniente en términos de rendimiento?
floatingpurr

Respuestas:

3

Cuando ejecuta un solo proceso de Python en el contenedor, que no genera otros procesos de Python durante su vida útil, entonces no hay "riesgo" al hacerlo.

El almacenamiento de código de bytes en el disco se utiliza para compilar Python en código de bytes justo después de la primera invocación de un programa y sus bibliotecas dependientes para guardar ese paso en las siguientes invocaciones. En un contenedor, el proceso se ejecuta solo una vez, por lo tanto, establecer esta opción tiene sentido.

hek2mgl
fuente
Entonces, el mensaje principal es que esta opción es útil y segura el 99% del tiempo en el caso de un proyecto Docker. ¿Derecha?
floatingpurr
1
Como dije, está bien si no está generando otros procesos de Python que el proceso en contenedores en sí durante la vida útil del contenedor.
hek2mgl