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

This commit is contained in:
kurokobo 2024-06-24 01:45:33 +09:00 committed by GitHub
parent 3a626cd251
commit ea29007bc0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 22 additions and 22 deletions

View File

@ -1,5 +1,5 @@
# 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
@ -14,7 +14,7 @@ ENV POETRY_NO_INTERACTION=1
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
@ -27,18 +27,18 @@ RUN poetry install --sync --no-cache --no-root
# production stage # production stage
FROM base AS production FROM base AS production
ENV FLASK_APP app.py ENV FLASK_APP=app.py
ENV EDITION SELF_HOSTED ENV EDITION=SELF_HOSTED
ENV DEPLOY_ENV PRODUCTION ENV DEPLOY_ENV=PRODUCTION
ENV CONSOLE_API_URL http://127.0.0.1:5001 ENV CONSOLE_API_URL=http://127.0.0.1:5001
ENV CONSOLE_WEB_URL http://127.0.0.1:3000 ENV CONSOLE_WEB_URL=http://127.0.0.1:3000
ENV SERVICE_API_URL http://127.0.0.1:5001 ENV SERVICE_API_URL=http://127.0.0.1:5001
ENV APP_WEB_URL http://127.0.0.1:3000 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
@ -61,6 +61,6 @@ RUN chmod +x /entrypoint.sh
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"]

View File

@ -9,7 +9,7 @@ RUN apk add --no-cache tzdata
# install packages # install packages
FROM base as packages FROM base AS packages
WORKDIR /app/web WORKDIR /app/web
@ -22,7 +22,7 @@ COPY yarn.lock .
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 . .
@ -31,17 +31,17 @@ RUN yarn build
# production stage # production stage
FROM base as production FROM base AS production
ENV NODE_ENV production ENV NODE_ENV=production
ENV EDITION SELF_HOSTED ENV EDITION=SELF_HOSTED
ENV DEPLOY_ENV PRODUCTION ENV DEPLOY_ENV=PRODUCTION
ENV CONSOLE_API_URL http://127.0.0.1:5001 ENV CONSOLE_API_URL=http://127.0.0.1:5001
ENV APP_API_URL http://127.0.0.1:5001 ENV APP_API_URL=http://127.0.0.1:5001
ENV PORT 3000 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
@ -59,7 +59,7 @@ COPY docker/pm2.json ./pm2.json
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"]