Переглянути джерело

fix: apply best practices for the latest buildkit (#5527)

tags/0.6.12
kurokobo 1 рік тому
джерело
коміт
ea29007bc0
Аккаунт користувача з таким Email не знайдено
2 змінених файлів з 22 додано та 22 видалено
  1. 11
    11
      api/Dockerfile
  2. 11
    11
      web/Dockerfile

+ 11
- 11
api/Dockerfile Переглянути файл

# base image # base image
FROM python:3.10-slim-bookworm as base
FROM python:3.10-slim-bookworm AS base


WORKDIR /app/api WORKDIR /app/api


ENV POETRY_VIRTUALENVS_IN_PROJECT=true ENV POETRY_VIRTUALENVS_IN_PROJECT=true
ENV POETRY_VIRTUALENVS_CREATE=true ENV POETRY_VIRTUALENVS_CREATE=true


FROM base as packages
FROM base AS packages


RUN apt-get update \ RUN apt-get update \
&& apt-get install -y --no-install-recommends gcc g++ libc-dev libffi-dev libgmp-dev libmpfr-dev libmpc-dev && apt-get install -y --no-install-recommends gcc g++ libc-dev libffi-dev libgmp-dev libmpfr-dev libmpc-dev
# production stage # production stage
FROM base AS production FROM base AS production


ENV FLASK_APP app.py
ENV EDITION SELF_HOSTED
ENV DEPLOY_ENV PRODUCTION
ENV CONSOLE_API_URL http://127.0.0.1:5001
ENV CONSOLE_WEB_URL http://127.0.0.1:3000
ENV SERVICE_API_URL http://127.0.0.1:5001
ENV APP_WEB_URL http://127.0.0.1:3000
ENV FLASK_APP=app.py
ENV EDITION=SELF_HOSTED
ENV DEPLOY_ENV=PRODUCTION
ENV CONSOLE_API_URL=http://127.0.0.1:5001
ENV CONSOLE_WEB_URL=http://127.0.0.1:3000
ENV SERVICE_API_URL=http://127.0.0.1:5001
ENV APP_WEB_URL=http://127.0.0.1:3000


EXPOSE 5001 EXPOSE 5001


# set timezone # set timezone
ENV TZ UTC
ENV TZ=UTC


WORKDIR /app/api WORKDIR /app/api






ARG COMMIT_SHA ARG COMMIT_SHA
ENV COMMIT_SHA ${COMMIT_SHA}
ENV COMMIT_SHA=${COMMIT_SHA}


ENTRYPOINT ["/bin/bash", "/entrypoint.sh"] ENTRYPOINT ["/bin/bash", "/entrypoint.sh"]

+ 11
- 11
web/Dockerfile Переглянути файл





# install packages # install packages
FROM base as packages
FROM base AS packages


WORKDIR /app/web WORKDIR /app/web


RUN yarn install --frozen-lockfile RUN yarn install --frozen-lockfile


# build resources # build resources
FROM base as builder
FROM base AS builder
WORKDIR /app/web WORKDIR /app/web
COPY --from=packages /app/web/ . COPY --from=packages /app/web/ .
COPY . . COPY . .




# production stage # production stage
FROM base as production
FROM base AS production


ENV NODE_ENV production
ENV EDITION SELF_HOSTED
ENV DEPLOY_ENV PRODUCTION
ENV CONSOLE_API_URL http://127.0.0.1:5001
ENV APP_API_URL http://127.0.0.1:5001
ENV PORT 3000
ENV NODE_ENV=production
ENV EDITION=SELF_HOSTED
ENV DEPLOY_ENV=PRODUCTION
ENV CONSOLE_API_URL=http://127.0.0.1:5001
ENV APP_API_URL=http://127.0.0.1:5001
ENV PORT=3000


# set timezone # set timezone
ENV TZ UTC
ENV TZ=UTC
RUN ln -s /usr/share/zoneinfo/${TZ} /etc/localtime \ RUN ln -s /usr/share/zoneinfo/${TZ} /etc/localtime \
&& echo ${TZ} > /etc/timezone && echo ${TZ} > /etc/timezone


COPY docker/entrypoint.sh ./entrypoint.sh COPY docker/entrypoint.sh ./entrypoint.sh


ARG COMMIT_SHA ARG COMMIT_SHA
ENV COMMIT_SHA ${COMMIT_SHA}
ENV COMMIT_SHA=${COMMIT_SHA}


EXPOSE 3000 EXPOSE 3000
ENTRYPOINT ["/bin/sh", "./entrypoint.sh"] ENTRYPOINT ["/bin/sh", "./entrypoint.sh"]

Завантаження…
Відмінити
Зберегти