12345678910111213141516171819202122232425 |
- FROM archlinux:base-devel AS build
- RUN pacman -Syu --noconfirm
- RUN pacman -S --noconfirm rustup clang openssl tpm2-tss
- RUN rustup toolchain install nightly
- RUN rustup default nightly
- RUN mkdir -p src/crates
- COPY ./crates /src/crates
- COPY Cargo.toml /src/
- COPY Cargo.lock /src/
- WORKDIR /src
- RUN cargo fetch --target x86_64-unknown-linux-gnu
- WORKDIR /src/crates/btfsd
- RUN cargo build --release
- FROM archlinux:base AS release
- RUN pacman -Syu --noconfirm\
- && pacman -S --noconfirm openssl tpm2-tss swtpm tpm2-abrmd dbus\
- && pacman -Scc --noconfirm\
- && useradd btfsd\
- && mkdir -p /app/state\
- && chown btfsd:btfsd /app/state
- COPY --from=build /src/target/release/btfsd /app/
- COPY --from=build /src/crates/btfsd/btfsd_init.sh /init.sh
- USER btfsd
- ENTRYPOINT ["/init.sh"]
|