m/cup
1
0
mirror of https://github.com/sergi0g/cup.git synced 2025-11-08 05:03:49 -05:00
Files
cup/Dockerfile
2025-04-26 13:13:30 +03:00

44 lines
640 B
Docker

### Build UI ###
FROM oven/bun:1-alpine AS web
# Copy package.json and lockfile from web
WORKDIR /web
COPY ./web/package.json ./web/bun.lock ./
# Install requirements
RUN bun install
# Copy web folder
COPY ./web .
# Build frontend
RUN bun run build
### Build Cup ###
FROM rust:1-alpine AS build
# Requirements
RUN apk add musl-dev
# Copy files
WORKDIR /cup
COPY Cargo.toml .
COPY Cargo.lock .
COPY ./src ./src
# Copy UI from web builder
COPY --from=web /web/dist src/static
# Build
RUN cargo build --release
### Main ###
FROM scratch
# Copy binary
COPY --from=build /cup/target/release/cup /cup
EXPOSE 8000
ENTRYPOINT ["/cup"]