From e179b3b995b6be4a36301966b714396a6aa3090b081a5d8282c1f236d5c082a9 Mon Sep 17 00:00:00 2001 From: RavenX8 <7156279+RavenX8@users.noreply.github.com> Date: Sat, 14 Dec 2024 04:13:34 -0500 Subject: [PATCH] - add: Dockerfile for building docker containers --- api-service/Dockerfile | 15 +++++++++++++++ auth-service/Dockerfile | 24 ++++++++++++++++++++++++ database-service/Dockerfile | 15 +++++++++++++++ packet-service/Dockerfile | 15 +++++++++++++++ world-service/Dockerfile | 15 +++++++++++++++ 5 files changed, 84 insertions(+) create mode 100644 api-service/Dockerfile create mode 100644 auth-service/Dockerfile create mode 100644 database-service/Dockerfile create mode 100644 packet-service/Dockerfile create mode 100644 world-service/Dockerfile diff --git a/api-service/Dockerfile b/api-service/Dockerfile new file mode 100644 index 0000000..e043bea --- /dev/null +++ b/api-service/Dockerfile @@ -0,0 +1,15 @@ +FROM rust:1.83 as builder +LABEL authors="raven" + +WORKDIR /usr/src/api-service +COPY . . + +RUN cargo build --release + +FROM debian:bullseye-slim + +COPY --from=builder /usr/src/api-service/target/release/api-service /usr/local/bin/api-service + +EXPOSE 8080 + +CMD ["api-service"] \ No newline at end of file diff --git a/auth-service/Dockerfile b/auth-service/Dockerfile new file mode 100644 index 0000000..f28ff9f --- /dev/null +++ b/auth-service/Dockerfile @@ -0,0 +1,24 @@ +# Use Rust official image for building the application +FROM rust:1.83 as builder +LABEL authors="raven" + +# Set the working directory +WORKDIR /usr/src/auth-service + +# Copy the project files +COPY . . + +# Build the application in release mode +RUN cargo build --release + +# Use a minimal base image to run the application +FROM debian:bullseye-slim + +# Copy the compiled binary +COPY --from=builder /usr/src/auth-service/target/release/auth-service /usr/local/bin/auth-service + +# Expose the service port +EXPOSE 50051 + +# Set the entrypoint for the container +CMD ["auth-service"] \ No newline at end of file diff --git a/database-service/Dockerfile b/database-service/Dockerfile new file mode 100644 index 0000000..a472915 --- /dev/null +++ b/database-service/Dockerfile @@ -0,0 +1,15 @@ +FROM rust:1.83 as builder +LABEL authors="raven" + +WORKDIR /usr/src/database-service +COPY . . + +RUN cargo build --release + +FROM debian:bullseye-slim + +COPY --from=builder /usr/src/database-service/target/release/api-service /usr/local/bin/database-service + +EXPOSE 50052 + +CMD ["database-service"] \ No newline at end of file diff --git a/packet-service/Dockerfile b/packet-service/Dockerfile new file mode 100644 index 0000000..5cc6de9 --- /dev/null +++ b/packet-service/Dockerfile @@ -0,0 +1,15 @@ +FROM rust:1.83 as builder +LABEL authors="raven" + +WORKDIR /usr/src/packet-service +COPY . . + +RUN cargo build --release + +FROM debian:bullseye-slim + +COPY --from=builder /usr/src/packet-service/target/release/api-service /usr/local/bin/packet-service + +EXPOSE 4000 + +CMD ["packet-service"] \ No newline at end of file diff --git a/world-service/Dockerfile b/world-service/Dockerfile new file mode 100644 index 0000000..a4fa776 --- /dev/null +++ b/world-service/Dockerfile @@ -0,0 +1,15 @@ +FROM rust:1.83 as builder +LABEL authors="raven" + +WORKDIR /usr/src/world-service +COPY . . + +RUN cargo build --release + +FROM debian:bullseye-slim + +COPY --from=builder /usr/src/database-service/target/release/world-service /usr/local/bin/world-service + +EXPOSE 50054 + +CMD ["world-service"] \ No newline at end of file