diff --git a/install/docker/backend/Dockerfile b/install/docker/backend/Dockerfile index 084dcba39..ff5772c38 100644 --- a/install/docker/backend/Dockerfile +++ b/install/docker/backend/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20 +FROM node:22 COPY ./entrypoint.sh /root/entrypoint.sh diff --git a/install/docker/docker-compose.yml b/install/docker/docker-compose.yml index a7f897c2b..b5b2b06c4 100644 --- a/install/docker/docker-compose.yml +++ b/install/docker/docker-compose.yml @@ -2,18 +2,25 @@ services: # Warning: mongodb here is not password-protected. # DO NOT EXPOSE THIS SERVICE TO THE PUBLIC. oj-mongo: - image: mongo + image: mongo:7-jammy container_name: oj-mongo restart: always volumes: - ./data/mongo:/data/db - + healthcheck: + test: mongosh --eval "db.adminCommand('ping')" + interval: 10s + timeout: 10s + retries: 5 + start_period: 30s oj-backend: build: ./backend container_name: oj-backend restart: always depends_on: - - oj-mongo + oj-mongo: + condition: service_healthy + restart: true volumes: - ./data/file:/data/file - ./data/backend:/root/.hydro diff --git a/install/docker/judge/Dockerfile b/install/docker/judge/Dockerfile index f807323a1..0440476fd 100644 --- a/install/docker/judge/Dockerfile +++ b/install/docker/judge/Dockerfile @@ -1,4 +1,4 @@ -FROM node:20 +FROM node:22 COPY ./entrypoint.sh /root/entrypoint.sh