Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
| Порівняння попередніх версій Попередня ревізія Наступна ревізія | Попередня ревізія | ||
|
software:docker:tips [2020/04/12 16:39] charon |
software:docker:tips [2021/05/13 12:20] (поточний) charon [Python multistage builds] |
||
|---|---|---|---|
| Рядок 7: | Рядок 7: | ||
| docker build --pull --no-cache -t image-tag . | docker build --pull --no-cache -t image-tag . | ||
| + | ====== Python multistage builds ====== | ||
| + | <code - Dockerfile.multi> | ||
| + | ARG MY_PYTHON_VER=3.8.10 | ||
| + | # base | ||
| + | FROM python: | ||
| + | COPY ./ | ||
| + | RUN pip wheel --no-cache-dir --no-deps --wheel-dir /wheels -r requirements.txt | ||
| + | |||
| + | # stage | ||
| + | FROM python: | ||
| + | RUN apt-get update && \ | ||
| + | DEBIAN_FRONTEND=noninteractive apt-get -y upgrade && \ | ||
| + | DEBIAN_FRONTEND=noninteractive apt-get -y install jq && \ | ||
| + | apt-get clean | ||
| + | WORKDIR / | ||
| + | COPY --from=base /wheels /wheels | ||
| + | COPY --from=base requirements.txt . | ||
| + | RUN pip install --no-cache /wheels/* | ||
| + | COPY . / | ||
| + | CMD gunicorn -b 0.0.0.0: | ||
| + | </ | ||