2022-06-07 10:29:40 +00:00
|
|
|
# FRONTEND
|
|
|
|
FROM node:16-alpine as client
|
2021-05-02 11:53:48 +00:00
|
|
|
WORKDIR /tmp
|
2021-11-11 12:37:21 +00:00
|
|
|
RUN npm install -g pnpm
|
2022-06-07 10:29:40 +00:00
|
|
|
COPY ./frontend ./
|
2021-11-11 12:37:21 +00:00
|
|
|
RUN pnpm install
|
|
|
|
RUN pnpm run build
|
2021-05-02 11:53:48 +00:00
|
|
|
|
|
|
|
|
2022-06-07 10:29:40 +00:00
|
|
|
# BACKEND
|
|
|
|
FROM rust:1.61-alpine as backend
|
2021-05-02 11:53:48 +00:00
|
|
|
WORKDIR /tmp
|
|
|
|
RUN apk add libc-dev openssl-dev alpine-sdk
|
2022-01-02 22:46:08 +00:00
|
|
|
COPY ./backend ./
|
2021-05-02 11:53:48 +00:00
|
|
|
RUN cargo build --release
|
|
|
|
|
|
|
|
|
2022-06-07 10:29:40 +00:00
|
|
|
# RUNNER
|
|
|
|
FROM alpine
|
2021-05-02 11:53:48 +00:00
|
|
|
WORKDIR /app
|
2022-06-07 10:29:40 +00:00
|
|
|
COPY ./entry.sh .
|
|
|
|
COPY --from=backend /tmp/target/release/cryptgeon .
|
|
|
|
COPY --from=client /tmp/build ./frontend/build
|
2021-05-02 11:53:48 +00:00
|
|
|
ENV MEMCACHE=memcached:11211
|
2021-05-08 08:16:05 +00:00
|
|
|
EXPOSE 5000
|
2022-06-07 10:29:40 +00:00
|
|
|
ENTRYPOINT [ "/app/entry.sh" ]
|