From e0565fa685e22adeae09bfb9dd512ab2d93b0be7 Mon Sep 17 00:00:00 2001 From: Prabhat Sharma Date: Sun, 30 May 2021 10:28:31 -0700 Subject: [PATCH] Added dockerfile --- .dockerignore | 9 +++++++++ Dockerfile | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..2499bb3a --- /dev/null +++ b/.dockerignore @@ -0,0 +1,9 @@ +.git +.github +.DS_Store +.vscode +scripts +deploy +tmp + +target \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..b3e6a7fe --- /dev/null +++ b/Dockerfile @@ -0,0 +1,36 @@ +FROM rust:slim-buster AS builder + +RUN apt-get update +RUN apt-get install -y pkg-config libssl-dev +RUN rustup component add rustfmt + +# Create appuser. +ENV USER=appuser +ENV UID=10001 +# See https://stackoverflow.com/a/55757473/12429735RUN +RUN adduser \ + --disabled-password \ + --gecos "" \ + --home "/nonexistent" \ + --shell "/sbin/nologin" \ + --no-create-home \ + --uid "${UID}" \ + "${USER}" + +WORKDIR /app + +COPY . . + +RUN cargo build --release + +# Use an unprivileged user. +USER appuser:appuser + +# Port on which the service will be exposed. +EXPOSE 8080 +# Run the uniqin binary. +ENTRYPOINT ["/app/target/release/toshi"] + + + +