簡體   English   中英

Docker 在 Dockerfile 中編譯 python 文件 不要創建 pyc

[英]Docker compile python file in Dockerfile don't create pyc

我將在 Dockerfile 中編譯我的 python 文件 (.py) 以創建 pyc 文件,然后刪除所有 *.py。

我創建了一個像 tisone 一樣的 Dockerfile:

FROM python:3.6-alpine
EXPOSE 8000
RUN apk update
RUN apk add --no-cache make linux-headers libffi-dev jpeg-dev zlib-dev
RUN apk add postgresql-dev gcc python3-dev musl-dev

VOLUME /var/lib/cathstudio/data
WORKDIR /var/lib/cathstudio/data

COPY ./requirements.txt .

RUN pip install --upgrade pip
RUN pip install -r requirements.txt
ENV PYTHONUNBUFFERED 1
#ENV PYTHONPATH /var/lib/cathstudio/data

COPY . /var/lib/cathstudio/data

RUN python -m compileall ajaxfuncs/

好吧,當我構建我的圖像編譯似乎已經完成:

在此處輸入圖像描述

但是當我在卷中瀏覽我的文件時,沒有 pyc 文件存在:

在此處輸入圖像描述

如何在 docker 構建期間編譯我的 python 文件以獲得 pyc s?

非常感謝提前

它們已編譯,您將在__pycache__文件夾中找到已編譯的文件。 如果要將文件與原始文件放在同一目錄中,則需要使用: compileall -b

文檔

-b

將字節碼文件寫入它們的舊位置和名稱,這可能會覆蓋由另一個版本的 Python 創建的字節碼文件。 默認是將文件寫入 > 它們的 PEP 3147 位置和名稱,這允許來自 Python 多個版本的字節碼文件共存。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM