Skip to content
Snippets Groups Projects
Select Git revision
  • 006fb56a178a62cc34d89c2c22ee0dc4c578947f
  • master default
  • y3
  • y2
  • y1
  • v1.0
  • v2.0
  • v2.1
  • v2.2
  • v2.3
  • v3.0
  • v3.0.1
  • v3.1
  • v3.1.1
  • v3.2
15 results

manual.html

Blame
  • Dockerfile 1.07 KiB
    FROM clux/muslrust:stable as build-env
    RUN rustc --version
    WORKDIR /app
    COPY ./ .
    RUN cargo build --release
    RUN cp target/x86_64-unknown-linux-musl/release/ujmtbackend .
    
    FROM alpine:latest AS finalize
    RUN apk update && \
        apk add upx
    WORKDIR /app
    COPY --from=build-env /app/ujmtbackend /app
    RUN upx ujmtbackend
    
    FROM alpine:latest as base
    RUN apk add upx && apk add make && apk add git && apk add curl && apk add bash
    RUN curl --proto '=https' --tlsv1.2 -sSf https://just.systems/install.sh | bash -s -- --to /usr/bin
    RUN apk update && \
        apk add ca-certificates && \
        update-ca-certificates && \
        rm -rf /var/cache/apk/* && \
        addgroup app && \
        adduser -G app -D app
    
    # build an image
    FROM scratch
    COPY --from=base /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
    COPY --from=base /etc/passwd /etc/passwd
    COPY --from=base /etc/group /etc/group
    COPY --from=base /lib/libssl.so.3 /lib/libssl.so.3
    COPY --from=base /usr/lib/libssl.so.3 /usr/lib/libssl.so.3
    WORKDIR /app
    COPY --from=finalize /app/ujmtbackend /app
    USER app:app
    EXPOSE 8080
    CMD ["/app/ujmtbackend","serve"]