refactor: use Tailwind CLI and esbuild for assets
Fixes: #10 Fixes: #14
This commit is contained in:
parent
aa22925e92
commit
6e120bee3a
15 changed files with 1381 additions and 9904 deletions
68
Dockerfile
68
Dockerfile
|
@ -1,39 +1,71 @@
|
|||
FROM node:14-alpine AS assets
|
||||
|
||||
ARG NODE_ENV="production"
|
||||
ARG SCULPIN_ENV="prod"
|
||||
ENV NODE_ENV="${NODE_ENV}" \
|
||||
PATH="${PATH}:/node_modules/.bin" \
|
||||
SCULPIN_ENV="${SCULPIN_ENV}"
|
||||
|
||||
RUN apk add --no-cache bash
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN mkdir -p /node_modules \
|
||||
&& chown node:node -R /app /node_modules
|
||||
|
||||
USER node
|
||||
|
||||
COPY --chown=node:node *yarn* package.json ./
|
||||
|
||||
RUN yarn install && yarn cache clean
|
||||
|
||||
COPY --chown=node:node . .
|
||||
|
||||
RUN if [ "${NODE_ENV}" != "development" ]; then \
|
||||
./run yarn:build:css && ./run yarn:build:js; \
|
||||
else mkdir -p /app/build; fi
|
||||
|
||||
CMD ["bash"]
|
||||
|
||||
###
|
||||
|
||||
FROM opdavies/sculpin-serve AS app
|
||||
|
||||
#
|
||||
WORKDIR /app
|
||||
|
||||
RUN adduser --disabled-password sculpin \
|
||||
&& chown sculpin:sculpin -R /app
|
||||
|
||||
###
|
||||
|
||||
FROM app AS build
|
||||
|
||||
ENV PATH=$PATH:/app/vendor/bin/phpunit
|
||||
|
||||
COPY tools/docker/images/app/root /
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY composer.* ./
|
||||
USER sculpin
|
||||
|
||||
COPY --chown=sculpin:sculpin composer.* ./
|
||||
|
||||
RUN composer install --no-dev
|
||||
|
||||
COPY app app
|
||||
COPY source source
|
||||
COPY src src
|
||||
COPY --chown=sculpin:sculpin app app
|
||||
COPY --chown=sculpin:sculpin source source
|
||||
COPY --chown=sculpin:sculpin src src
|
||||
|
||||
RUN sculpin generate --env prod
|
||||
|
||||
#
|
||||
COPY --chown=sculpin:sculpin . .
|
||||
COPY --chown=sculpin:sculpin --from=assets /app/build /build
|
||||
|
||||
FROM node:14-alpine AS assets
|
||||
ENTRYPOINT ["/usr/bin/docker-entrypoint.sh"]
|
||||
|
||||
RUN apk add --no-cache make
|
||||
CMD ["bash"]
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
COPY package*.json ./
|
||||
RUN npm ci
|
||||
|
||||
COPY . .
|
||||
|
||||
RUN npm run production
|
||||
|
||||
#
|
||||
###
|
||||
|
||||
FROM nginx:1 AS production
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue