From 1f018d023e56b6bb7f07f6e78811f270fed4e483 Mon Sep 17 00:00:00 2001 From: Muhammad Mominul Huque Date: Tue, 14 Oct 2025 01:21:23 +0600 Subject: [PATCH 1/4] Use rust:latest for the server base build image --- images/server.Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/images/server.Dockerfile b/images/server.Dockerfile index 5b5fb73..c22a0cb 100644 --- a/images/server.Dockerfile +++ b/images/server.Dockerfile @@ -1,6 +1,7 @@ # Stage 1: Compute the recipe file -FROM lukemathwalker/cargo-chef:latest-rust-latest AS chef +FROM rust:latest AS chef WORKDIR /app +RUN cargo install cargo-chef FROM chef AS planner COPY . . From 42783a3d91148eeeb8cb5e8f5e81c87e4e18b0b1 Mon Sep 17 00:00:00 2001 From: Muhammad Mominul Huque Date: Tue, 14 Oct 2025 01:36:48 +0600 Subject: [PATCH 2/4] prev ver --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index a9f8506..722f01d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,6 @@ services: app: - image: mominul/packhub:latest + image: mominul/packhub@sha256:a92a7ec201d3f5005c39772dc4fcb440cd0f049f8ab279cae718ae0e9b29a138 container_name: packhub_app depends_on: - mongodb From d5658b92b128be212e9953b32cf31ae29b0e1a95 Mon Sep 17 00:00:00 2001 From: Muhammad Mominul Huque Date: Thu, 16 Oct 2025 22:03:28 +0600 Subject: [PATCH 3/4] use debian trixie as the base image of docker upgrade to mongodb 8.0 --- docker-compose.yml | 50 +++++++++++++++++++++++++++------------- images/server.Dockerfile | 5 ++-- 2 files changed, 36 insertions(+), 19 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 722f01d..04ad9cf 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,22 +1,8 @@ services: - app: - image: mominul/packhub@sha256:a92a7ec201d3f5005c39772dc4fcb440cd0f049f8ab279cae718ae0e9b29a138 - container_name: packhub_app - depends_on: - - mongodb - ports: - - "80:80" - - "443:443" - volumes: - - ./.env:/app/.env - - ./key.gpg:/app/key.gpg - - ${PACKHUB_DOCKER_CERT_PEM}:/app/fullchain.pem - - ${PACKHUB_DOCKER_KEY_PEM}:/app/privkey.pem - mongodb: - image: mongo:5.0.6 + image: mongo:8.0 container_name: packhub_mongodb - restart: always + restart: unless-stopped ports: - "27017:27017" environment: @@ -24,6 +10,38 @@ services: MONGO_INITDB_ROOT_PASSWORD: ${PACKHUB_DB_PASSWORD} volumes: - mongodb_data:/data/db + healthcheck: + test: + [ + "CMD", + "mongosh", + "--username", + "${PACKHUB_DB_USER}", + "--password", + "${PACKHUB_DB_PASSWORD}", + "--eval", + "db.adminCommand('ping')", + ] + interval: 10s + timeout: 5s + retries: 5 + start_period: 15s + + app: + image: mominul/packhub + container_name: packhub_app + restart: unless-stopped + depends_on: + mongodb: + condition: service_healthy + ports: + - "80:80" + - "443:443" + volumes: + - ./.env:/app/.env + - ./key.gpg:/app/key.gpg + - ./${PACKHUB_DOCKER_CERT_PEM}:/app/fullchain.pem + - ./${PACKHUB_DOCKER_KEY_PEM}:/app/privkey.pem volumes: mongodb_data: diff --git a/images/server.Dockerfile b/images/server.Dockerfile index c22a0cb..af1e8a5 100644 --- a/images/server.Dockerfile +++ b/images/server.Dockerfile @@ -1,7 +1,6 @@ # Stage 1: Compute the recipe file -FROM rust:latest AS chef +FROM lukemathwalker/cargo-chef:latest-rust-1.90.0-trixie AS chef WORKDIR /app -RUN cargo install cargo-chef FROM chef AS planner COPY . . @@ -20,7 +19,7 @@ COPY . . RUN cargo build --release # Stage 3: Minimal final runtime image -FROM debian:bookworm-slim AS runtime +FROM debian:trixie-slim AS runtime RUN apt update && apt install -y libssl-dev ca-certificates clang llvm pkg-config nettle-dev RUN update-ca-certificates From d93f351059323bd8fcf4b3cc9f6683dd5a92741a Mon Sep 17 00:00:00 2001 From: Muhammad Mominul Huque Date: Thu, 16 Oct 2025 22:10:34 +0600 Subject: [PATCH 4/4] use latest rust --- images/server.Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/images/server.Dockerfile b/images/server.Dockerfile index af1e8a5..3092d4a 100644 --- a/images/server.Dockerfile +++ b/images/server.Dockerfile @@ -1,5 +1,5 @@ # Stage 1: Compute the recipe file -FROM lukemathwalker/cargo-chef:latest-rust-1.90.0-trixie AS chef +FROM lukemathwalker/cargo-chef:latest-rust-trixie AS chef WORKDIR /app FROM chef AS planner