FROM rust as build
WORKDIR /usr/src/ip-server
COPY Cargo.toml .
# cache dependencies
RUN mkdir .cargo
RUN cargo vendor > .cargo/config
# build
COPY ./src src
RUN cargo build --release
RUN ln -s $(cd ./target/release/; pwd)/ip-server /ip-server
# to use in other docker images
# COPY --from=ip-server /ip-server /usr/local/bin/ip-server
FROM gcr.io/distroless/cc
COPY --from=build /ip-server /usr/local/bin/ip-server
ENTRYPOINT ["ip-server"]