python - 在 Docker 中使用 PYTHONDONTWRITEBYTECODE 有什么缺点吗?
问题描述
在许多基于 Python 的 Docker 教程中(例如:this one)他们使用该选项PYTHONDONTWRITEBYTECODE
是为了使 Python 避免在导入源模块时编写 .pyc 文件(这相当于指定 -B 选项)。
设置此选项有哪些风险和优势?
解决方案
当您在容器中运行单个 python 进程时,该进程本身不会在其生命周期内产生其他 python 进程,那么这样做就没有“风险”。
在磁盘上存储字节码用于在第一次调用程序及其依赖库时将 python 编译为字节码,以便在后续调用时保存该步骤。在容器中,该进程只运行一次,因此设置此选项是有意义的。
推荐阅读
- chisel - 如何将 sbus 主机添加到火箭芯片外围设备
- laravel - Laravel 控制器
- python - 如何使用 python sumpy plot implicit 在同一个图中绘制不同的隐式方程
- replaykit - 使用 iOS replaykit 广播上传扩展时的图像残留问题
- c++ - 使用 Microsoft Visual Studio 2015 Community 和 Allegro5 Nuget 包无法解析的外部符号
- postgresql - postgres 数据库的备份给出 ssl 错误
- mysql - 找出每个 SQL 中的百分比
- r - R:如何从一个非常大的表格中快速选择两列中的常用词或相同数字?
- python - 保存到磁盘时 Numpy 数组大小不同(与 nbytes 相比)
- java - 错误 MSB6006:“java”退出,代码为 1 Proguard Xamarin