From 3c9d5aef852df144d81a6cd521286856692adb92 Mon Sep 17 00:00:00 2001 From: Frank Yang Date: Fri, 30 Sep 2022 22:54:55 +0800 Subject: [PATCH] feat: add Dockerfile Signed-off-by: Frank Yang --- Dockerfile | 24 ++++++++++++++++++++++++ Makefile | 4 ++++ 2 files changed, 28 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..e3edefb8 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,24 @@ +FROM rust:1.61 as builder + +WORKDIR /app +COPY . /app +RUN cargo build --release --all-features --bin bindle-server + +FROM rust:1.61-slim-buster + +ARG USERNAME=bindle +ARG USER_UID=1000 +ARG USER_GID=$USER_UID + +VOLUME [ "/bindle-data" ] + +ENV BINDLE_IP_ADDRESS_PORT="0.0.0.0:8080" +ENV BINDLE_DIRECTORY="/bindle-data/bindles" + +RUN groupadd --gid $USER_GID $USERNAME \ + && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME + +COPY --from=builder --chown=$USERNAME /app/target/release/bindle-server /usr/local/bin/bindle-server + +USER $USERNAME +CMD ["/usr/local/bin/bindle-server", "--unauthenticated", "--keyring", "/bindle-data/keyring.toml"] diff --git a/Makefile b/Makefile index fbd4fc72..fd391279 100644 --- a/Makefile +++ b/Makefile @@ -80,3 +80,7 @@ build-client: $(CERT_NAME).crt.pem: openssl req -newkey rsa:2048 -nodes -keyout $(CERT_NAME).key.pem -x509 -days 365 -out $(CERT_NAME).crt.pem + +.PHONY: build-docker-image +build-docker-image: + docker build -t deislabs/bindle:dev .