initial commit
Some checks failed
CI / build (push) Failing after 10s

This commit is contained in:
2025-07-04 11:56:23 +08:00
commit bd83d65d7b
17 changed files with 3345 additions and 0 deletions

32
Dockerfile Normal file
View File

@@ -0,0 +1,32 @@
FROM --platform=$BUILDPLATFORM alpine:latest AS base
ARG TARGETPLATFORM
FROM base AS builder-linux_amd64
ENV RUST_TARGET="x86_64-unknown-linux-musl"
ENV CC_x86_64-unknown-linux-musl=/opt/x-tools/x86_64-unknown-linux-musl/bin/x86_64-unknown-linux-musl-gcc
ENV CXX_x86_64-unknown-linux-musl=/opt/x-tools/x86_64-unknown-linux-musl/bin/x86_64-unknown-linux-musl-g++
FROM base AS builder-linux_arm64
ENV RUST_TARGET="aarch64-unknown-linux-musl"
ENV CC_aarch64_unknown_linux_musl=/opt/x-tools/aarch64-unknown-linux-musl/bin/aarch64-unknown-linux-musl-gcc
ENV CXX_aarch64_unknown_linux_musl=/opt/x-tools/aarch64-unknown-linux-musl/bin/aarch64-unknown-linux-musl-g++
FROM builder-${TARGETPLATFORM/\//_} AS build
RUN --mount=type=cache,target=/var/cache/apk apk update
RUN --mount=type=cache,target=/var/cache/apk apk add rustup binutils gcc musl-dev linux-headers
RUN adduser -D luser
USER luser
WORKDIR /home/luser
RUN rustup-init -y --profile minimal --target "$RUST_TARGET"
ADD --chown=luser:users . .
RUN source $HOME/.cargo/env && cargo build --release --target "$RUST_TARGET"
RUN cp "target/${RUST_TARGET}/release/intrasys" "./intrasys.x"
FROM scratch AS release
COPY --from=build --chown=9999:9999 /home/luser/intrasys.x /usr/local/bin/intrasys
USER 9999
ENTRYPOINT ["/usr/local/bin/intrasys"]
ENV INTRASYS_HOST="0.0.0.0"
EXPOSE 8080/tcp