From abf902c80ed1031a742628c4cabe2682740f4b51 Mon Sep 17 00:00:00 2001 From: clfreville2 Date: Fri, 17 Mar 2023 10:54:17 +0100 Subject: [PATCH] Create a Docker image based on Alpine for board-server --- board-server/Dockerfile | 23 +++++++++++++++++++++++ board-server/docker-compose.yml | 23 +++++++++++++++++++++++ 2 files changed, 46 insertions(+) create mode 100644 board-server/Dockerfile create mode 100644 board-server/docker-compose.yml diff --git a/board-server/Dockerfile b/board-server/Dockerfile new file mode 100644 index 0000000..69389f7 --- /dev/null +++ b/board-server/Dockerfile @@ -0,0 +1,23 @@ +FROM rust:1.68.0-slim as builder + +ENV CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse +WORKDIR /usr/src/board + +COPY Cargo.toml /usr/src/board/Cargo.toml +COPY board-frontend /usr/src/board/board-frontend +COPY board-network /usr/src/board/board-network +COPY board-server /usr/src/board/board-server +COPY board-shared /usr/src/board/board-shared + +# Build with musl to run on Alpine +RUN rustup target add x86_64-unknown-linux-musl +RUN cargo build --target x86_64-unknown-linux-musl --release --bin board-server + + +FROM alpine:3.17.2 AS runtime + +COPY --from=builder /usr/src/board/target/x86_64-unknown-linux-musl/release/board-server /usr/local/bin + +EXPOSE 8080 + +ENTRYPOINT ["/usr/local/bin/board-server"] diff --git a/board-server/docker-compose.yml b/board-server/docker-compose.yml new file mode 100644 index 0000000..2e42a11 --- /dev/null +++ b/board-server/docker-compose.yml @@ -0,0 +1,23 @@ +version: '3.0' + +services: + server: + build: + context: .. + dockerfile: board-server/Dockerfile + ports: + - "8080:8080" + depends_on: + - redis + networks: + - db-network + redis: + image: redis:alpine + ports: + - "6379:6379" + networks: + - db-network + +networks: + db-network: + driver: bridge