FROM rust:alpine AS builder

RUN apk add -q --no-cache build-base curl

WORKDIR /app

RUN rustup target add x86_64-unknown-linux-musl

COPY . .

RUN cargo build --release --target=x86_64-unknown-linux-musl

FROM alpine:latest
WORKDIR /app

COPY --from=builder /app/target/x86_64-unknown-linux-musl/release/ml-api /app/ml-api
RUN apk add --no-cache ca-certificates

EXPOSE 5134/tcp
EXPOSE 1560/tcp

ENTRYPOINT ["/app/ml-api"]
