46 lines
1.5 KiB
Docker
46 lines
1.5 KiB
Docker
FROM composer:2.9.2 AS vendor
|
|
|
|
ARG GITLAB_USER
|
|
ARG GITLAB_PASSWORD
|
|
|
|
COPY database/ database/
|
|
|
|
COPY composer.json composer.json
|
|
COPY composer.lock composer.lock
|
|
|
|
RUN composer config gitlab-token.lab.s-web.fr ${GITLAB_USER} ${GITLAB_PASSWORD}
|
|
RUN composer install \
|
|
--ignore-platform-reqs \
|
|
--no-interaction \
|
|
--no-plugins \
|
|
--no-scripts \
|
|
--no-dev \
|
|
--prefer-dist
|
|
|
|
FROM node:20.18 AS frontend
|
|
|
|
ARG GITLAB_PASSWORD
|
|
|
|
RUN mkdir -p /app/public/build
|
|
|
|
COPY package*.json tsconfig.json vite.config.ts .eslintrc.json .stylelintrc.json /app/
|
|
COPY resources/ /app/resources/
|
|
WORKDIR /app
|
|
RUN npm config set @ldc-web:registry https://lab.s-web.fr/api/v4/packages/npm/
|
|
RUN npm config set -- '//lab.s-web.fr/api/v4/packages/npm/:_authToken' "${GITLAB_PASSWORD}"
|
|
RUN npm config set @uwil:registry https://lab.s-web.fr/api/v4/groups/ldc-web/-/packages/npm/
|
|
RUN npm config set -- '//lab.s-web.fr/api/v4/groups/ldc-web/-/packages/npm/:_authToken' "${GITLAB_PASSWORD}"
|
|
RUN npm ci --no-audit --no-fund --loglevel=error && npm run prod
|
|
|
|
FROM registry.s-web.fr/ldc-web/projets/ldc-web-images-docker/ldcweb-production-8.3:170625-101047
|
|
|
|
ARG USER=www-data
|
|
|
|
COPY --chown=${USER}:${USER} . /app/srcs
|
|
COPY --chown=${USER}:${USER} ./resources/favicon /app/srcs/public
|
|
COPY --from=vendor --chown=${USER}:${USER} /app/vendor/ /app/srcs/vendor/
|
|
COPY --from=frontend --chown=${USER}:${USER} /app/public/build/ /app/srcs/public/build/
|
|
|
|
USER root
|
|
RUN chmod -R 755 /app/srcs/storage
|
|
USER ${USER}
|