Py学习  »  docker

带webpack的Monolith docker应用程序

Harsh Manvar • 4 年前 • 775 次点击  

我在docker容器中运行monolith应用程序,在GKE上运行k8s。

应用程序包含python&node dependencies,还包含前端包的webpack。

主要目标是尽可能减少构建时间。写入的Dockerfile是多阶段的。

Webpack需要更多的时间来生成包。要生成docker映像,我正在使用已经很高的配置工作程序。

为了减少我尝试使用 Kaniko builder .

问题:

作为docker的python代码缓存层,它工作得很好。但是当 JS CSS

当有任何变化 JS公司 &安培; 如果生成新的包,则改为使用缓存层。

有没有办法通过向docker文件传递一些值来分离构建新包或使用缓存。

FROM python:3.5 AS python-build
WORKDIR /app
COPY requirements.txt ./
RUN pip install -r requirements.txt  &&\
    pip3 install Flask-JWT-Extended==3.20.0
ADD . /app

FROM node:10-alpine AS node-build
WORKDIR /app
COPY --from=python-build ./app/app/static/package.json app/static/
COPY --from=python-build ./app ./
WORKDIR /app/app/static
RUN npm cache verify && npm install && npm install -g --unsafe-perm node-sass && npm run sass  && npm run build


FROM python:3.5-slim
COPY --from=python-build /root/.cache /root/.cache
WORKDIR /app
COPY --from=node-build ./app ./
RUN apt-get update -yq \
    && apt-get install curl -yq \
    && pip install -r requirements.txt
EXPOSE 9595
CMD python3 run.py
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/55102
 
775 次点击  
文章 [ 1 ]  |  最新文章 4 年前