From c17d498b93ef01ec1f0a5edf16a9b0e2e8474d1f401f48b54b73bac9808f6f38 Mon Sep 17 00:00:00 2001 From: raven <7156279+RavenX8@users.noreply.github.com> Date: Sat, 14 Dec 2024 05:31:33 -0500 Subject: [PATCH] - fix: docker containers would fail to load libssl3 - add: missing character service docker file --- api-service/Dockerfile | 25 ++++++++++++++++++++++--- auth-service/Dockerfile | 24 +++++++++++++++++++++--- character-service/Dockerfile | 33 +++++++++++++++++++++++++++++++++ database-service/Dockerfile | 24 +++++++++++++++++++++--- packet-service/Dockerfile | 24 +++++++++++++++++++++--- world-service/Dockerfile | 24 +++++++++++++++++++++--- 6 files changed, 139 insertions(+), 15 deletions(-) create mode 100644 character-service/Dockerfile diff --git a/api-service/Dockerfile b/api-service/Dockerfile index e043bea..b919402 100644 --- a/api-service/Dockerfile +++ b/api-service/Dockerfile @@ -1,12 +1,31 @@ -FROM rust:1.83 as builder +FROM rust:1.83 AS builder LABEL authors="raven" +WORKDIR /usr/src/proto +COPY ./proto . + +WORKDIR /usr/src/utils +COPY ./utils . + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + protobuf-compiler \ + && rm -rf /var/lib/apt/lists/* + WORKDIR /usr/src/api-service -COPY . . +COPY ./api-service . RUN cargo build --release -FROM debian:bullseye-slim +FROM debian:bookworm-slim + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + pkg-config \ + libssl-dev \ + && rm -rf /var/lib/apt/lists/* COPY --from=builder /usr/src/api-service/target/release/api-service /usr/local/bin/api-service diff --git a/auth-service/Dockerfile b/auth-service/Dockerfile index f28ff9f..fb402e2 100644 --- a/auth-service/Dockerfile +++ b/auth-service/Dockerfile @@ -1,18 +1,36 @@ # Use Rust official image for building the application -FROM rust:1.83 as builder +FROM rust:1.83 AS builder LABEL authors="raven" +WORKDIR /usr/src/proto +COPY ./proto . + +WORKDIR /usr/src/utils +COPY ./utils . + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + protobuf-compiler + # Set the working directory WORKDIR /usr/src/auth-service # Copy the project files -COPY . . +COPY ./auth-service . # Build the application in release mode RUN cargo build --release # Use a minimal base image to run the application -FROM debian:bullseye-slim +FROM debian:bookworm-slim + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + pkg-config \ + libssl-dev \ + && rm -rf /var/lib/apt/lists/* # Copy the compiled binary COPY --from=builder /usr/src/auth-service/target/release/auth-service /usr/local/bin/auth-service diff --git a/character-service/Dockerfile b/character-service/Dockerfile new file mode 100644 index 0000000..fdc8bb4 --- /dev/null +++ b/character-service/Dockerfile @@ -0,0 +1,33 @@ +FROM rust:1.83 as builder +LABEL authors="raven" + +WORKDIR /usr/src/proto +COPY ./proto . + +WORKDIR /usr/src/utils +COPY ./utils . + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + protobuf-compiler + +WORKDIR /usr/src/character-service +COPY ./character-service . + +RUN cargo build --release + +FROM debian:bookworm-slim + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + pkg-config \ + libssl-dev \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=builder /usr/src/character-service/target/release/character-service /usr/local/bin/character-service + +EXPOSE 50054 + +CMD ["character-service"] \ No newline at end of file diff --git a/database-service/Dockerfile b/database-service/Dockerfile index a472915..037abcb 100644 --- a/database-service/Dockerfile +++ b/database-service/Dockerfile @@ -1,14 +1,32 @@ FROM rust:1.83 as builder LABEL authors="raven" +WORKDIR /usr/src/proto +COPY ./proto . + +WORKDIR /usr/src/utils +COPY ./utils . + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + protobuf-compiler + WORKDIR /usr/src/database-service -COPY . . +COPY ./database-service . RUN cargo build --release -FROM debian:bullseye-slim +FROM debian:bookworm-slim -COPY --from=builder /usr/src/database-service/target/release/api-service /usr/local/bin/database-service +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + pkg-config \ + libssl-dev \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=builder /usr/src/database-service/target/release/database-service /usr/local/bin/database-service EXPOSE 50052 diff --git a/packet-service/Dockerfile b/packet-service/Dockerfile index 5cc6de9..e81bfcf 100644 --- a/packet-service/Dockerfile +++ b/packet-service/Dockerfile @@ -1,14 +1,32 @@ FROM rust:1.83 as builder LABEL authors="raven" +WORKDIR /usr/src/proto +COPY ./proto . + +WORKDIR /usr/src/utils +COPY ./utils . + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + protobuf-compiler + WORKDIR /usr/src/packet-service -COPY . . +COPY ./packet-service . RUN cargo build --release -FROM debian:bullseye-slim +FROM debian:bookworm-slim -COPY --from=builder /usr/src/packet-service/target/release/api-service /usr/local/bin/packet-service +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + pkg-config \ + libssl-dev \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=builder /usr/src/packet-service/target/release/packet-service /usr/local/bin/packet-service EXPOSE 4000 diff --git a/world-service/Dockerfile b/world-service/Dockerfile index a4fa776..f68dc4b 100644 --- a/world-service/Dockerfile +++ b/world-service/Dockerfile @@ -1,14 +1,32 @@ FROM rust:1.83 as builder LABEL authors="raven" +WORKDIR /usr/src/proto +COPY ./proto . + +WORKDIR /usr/src/utils +COPY ./utils . + +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + protobuf-compiler + WORKDIR /usr/src/world-service -COPY . . +COPY ./world-service . RUN cargo build --release -FROM debian:bullseye-slim +FROM debian:bookworm-slim -COPY --from=builder /usr/src/database-service/target/release/world-service /usr/local/bin/world-service +RUN apt-get update \ + && DEBIAN_FRONTEND=noninteractive \ + apt-get install --no-install-recommends --assume-yes \ + pkg-config \ + libssl-dev \ + && rm -rf /var/lib/apt/lists/* + +COPY --from=builder /usr/src/world-service/target/release/world-service /usr/local/bin/world-service EXPOSE 50054