pingap 0.4.2

A reverse proxy like nginx
FROM node:20-alpine as webbuilder

COPY . /pingap
RUN apk update \
  && apk add git make \
  && cd /pingap \
  && make build-web

FROM rust as builder

COPY --from=webbuilder /pingap /pingap

RUN apt update \
  && apt install -y cmake libclang-dev wget gnupg ca-certificates lsb-release --no-install-recommends protobuf-compiler
RUN rustup target list --installed
RUN cd /pingap \
  && make release

FROM alpine

EXPOSE 7001

# tzdata 安装所有时区配置或可根据需要只添加所需时区

RUN addgroup -g 1000 rust \
  && adduser -u 1000 -G rust -s /bin/sh -D rust \
  && apk add --no-cache ca-certificates tzdata

COPY --from=builder /pingap/target/release/pingap /usr/local/bin/pingap
COPY --from=builder /pingap/entrypoint.sh /entrypoint.sh

USER rust

WORKDIR /home/rust

RUN mkdir -p /home/rust/pingap/conf


CMD ["pingap", "-c", "/home/rust/conf"]

ENTRYPOINT ["/entrypoint.sh"]