diff --git a/rust/.dockerignore b/rust/.dockerignore new file mode 100644 index 0000000..18d3ece --- /dev/null +++ b/rust/.dockerignore @@ -0,0 +1,2 @@ +* +!/target/x86_64-unknown-linux-musl/release/packager \ No newline at end of file diff --git a/rust/Dockerfile b/rust/Dockerfile new file mode 100644 index 0000000..6f8f065 --- /dev/null +++ b/rust/Dockerfile @@ -0,0 +1,9 @@ +FROM docker.io/library/alpine:3.18 + +RUN apk add --no-cache tini + +COPY target/x86_64-unknown-linux-musl/release/packager /usr/local/bin/packager + +ENTRYPOINT ["tini", "--"] + +CMD ["/usr/local/bin/packager", "--bind", "0.0.0.0", "--port", "3000", "--database-url", "/var/lib/packager/db/db.sqlite"] diff --git a/rust/build-container.sh b/rust/build-container.sh new file mode 100755 index 0000000..6b387a8 --- /dev/null +++ b/rust/build-container.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +set -o nounset +set -o pipefail + +rustup target add x86_64-unknown-linux-musl + +cargo build --target x86_64-unknown-linux-musl --release + +docker build -t packager:latest . +docker tag packager:latest packager:$(git rev-parse HEAD) +docker tag packager:latest registry.hkoerber.de/packager:$(git rev-parse HEAD)