commit ee9efab2f72c73a9b08d46fa3352ab3640f7c9f7 parent f91b1205efc9865e7da5080707c59f2706df6e9a Author: Greg Heartsfield <scsibug@imap.cc> Date: Sat, 11 Dec 2021 16:46:42 -0600 feat: add Dockerfile Diffstat:
A | Dockerfile | | | 40 | ++++++++++++++++++++++++++++++++++++++++ |
1 file changed, 40 insertions(+), 0 deletions(-)
diff --git a/Dockerfile b/Dockerfile @@ -0,0 +1,40 @@ +FROM rust:1.57 as builder + +RUN USER=root cargo new --bin nostr-rs-relay +WORKDIR ./nostr-rs-relay +COPY ./Cargo.toml ./Cargo.toml +COPY ./Cargo.lock ./Cargo.lock +RUN cargo build --release +RUN rm src/*.rs + +COPY ./src ./src + +RUN rm ./target/release/deps/nostr*relay* +RUN cargo build --release + +FROM debian:buster-slim +ARG APP=/usr/src/app + +RUN apt-get update \ + && apt-get install -y ca-certificates tzdata sqlite3 \ + && rm -rf /var/lib/apt/lists/* + +EXPOSE 8080 + +ENV TZ=Etc/UTC \ + APP_USER=appuser + +RUN groupadd $APP_USER \ + && useradd -g $APP_USER $APP_USER \ + && mkdir -p ${APP} + +COPY --from=builder /nostr-rs-relay/target/release/nostr-rs-relay ${APP}/nostr-rs-relay + +RUN chown -R $APP_USER:$APP_USER ${APP} + +USER $APP_USER +WORKDIR ${APP} + +ENV RUST_LOG=info + +CMD ["./nostr-rs-relay"]