lemmy-ui/dev.dockerfile

40 lines
980 B
Plaintext
Raw Normal View History

FROM node:20-alpine as builder
RUN apk update && apk add curl python3 build-base gcc wget git --no-cache
RUN npm install -g pnpm
2022-11-09 19:53:07 +00:00
WORKDIR /usr/src/app
ENV npm_config_target_arch=x64
ENV npm_config_target_platform=linux
ENV npm_config_target_libc=musl
2022-11-09 19:53:07 +00:00
# Cache deps
COPY package.json pnpm-lock.yaml ./
RUN pnpm i --prefer-offline
2022-11-09 19:53:07 +00:00
# Build
COPY generate_translations.js \
tsconfig.json \
webpack.config.js \
.babelrc \
./
COPY lemmy-translations lemmy-translations
COPY src src
COPY .git .git
2022-11-09 19:53:07 +00:00
# Set UI version
RUN echo "export const VERSION = 'dev';" > "src/shared/version.ts"
RUN echo "export const BUILD_DATE_ISO8601 = '$(date -u +"%Y-%m-%dT%H:%M:%SZ")';" > "src/shared/build-date.ts"
2022-11-09 19:53:07 +00:00
RUN pnpm i --prefer-offline
RUN pnpm build:dev
2022-11-09 19:53:07 +00:00
FROM node:20-alpine as runner
2022-11-09 19:53:07 +00:00
COPY --from=builder /usr/src/app/dist /app/dist
COPY --from=builder /usr/src/app/node_modules /app/node_modules
EXPOSE 1234
WORKDIR /app
CMD node dist/js/server.js