aboutsummaryrefslogtreecommitdiffstats
path: root/crates
diff options
context:
space:
mode:
Diffstat (limited to 'crates')
-rw-r--r--crates/pseudonyms/.dockerignore2
-rw-r--r--crates/warden/.dockerignore5
-rw-r--r--crates/warden/Dockerfile29
3 files changed, 36 insertions, 0 deletions
diff --git a/crates/pseudonyms/.dockerignore b/crates/pseudonyms/.dockerignore
index 27fd8a4..c8cd160 100644
--- a/crates/pseudonyms/.dockerignore
+++ b/crates/pseudonyms/.dockerignore
@@ -1,3 +1,5 @@
/target
.env
.git
+.github
+/contrib
diff --git a/crates/warden/.dockerignore b/crates/warden/.dockerignore
new file mode 100644
index 0000000..c8cd160
--- /dev/null
+++ b/crates/warden/.dockerignore
@@ -0,0 +1,5 @@
+/target
+.env
+.git
+.github
+/contrib
diff --git a/crates/warden/Dockerfile b/crates/warden/Dockerfile
new file mode 100644
index 0000000..d297961
--- /dev/null
+++ b/crates/warden/Dockerfile
@@ -0,0 +1,29 @@
+FROM rust:1.89.0-slim AS builder
+
+ARG FEATURES=""
+
+ENV SQLX_OFFLINE=true
+
+RUN rustup target add x86_64-unknown-linux-musl
+RUN apt update && apt install -y musl-tools musl-dev protobuf-compiler curl
+RUN update-ca-certificates
+
+WORKDIR /usr/src/app
+
+RUN mkdir -p crates
+
+COPY ./.sqlx .sqlx
+COPY ./crates/warden crates/warden
+COPY ./lib lib
+COPY ./Cargo.toml .
+COPY ./Cargo.lock .
+
+RUN cargo fetch
+
+COPY ./proto proto
+
+RUN cargo build -F "${FEATURES}" --target x86_64-unknown-linux-musl --release
+
+FROM scratch
+COPY --from=builder /usr/src/app/target/x86_64-unknown-linux-musl/release/warden ./
+CMD [ "./warden" ]