monkeytype/backend/docker/compose.yml
2025-07-30 10:06:04 +02:00

49 lines
1.2 KiB
YAML

name: monkeytype
version: "3.8"
services:
redis:
container_name: monkeytype-redis
image: redis:6.2.6
restart: on-failure
ports:
- "${DOCKER_REDIS_PORT:-6379}:6379"
volumes:
- redis-data:/data
mongodb:
container_name: monkeytype-mongodb
image: mongo:5.0.13
restart: on-failure
ports:
- "${DOCKER_DB_PORT:-27017}:27017"
volumes:
- mongo-data:/data/db
api-server:
container_name: monkeytype-api-server
build:
dockerfile_inline: |
FROM node:20.19.4
RUN npm i -g pnpm@9.6.0
RUN mkdir /pnpm-store && chown -R 1000:1000 /pnpm-store
user: "node" ##this works as long as your local user has uid=1000
restart: on-failure
depends_on:
- redis
- mongodb
environment:
- DB_URI=mongodb://mongodb:27017
- REDIS_URI=redis://redis:6379
ports:
- "${DOCKER_SERVER_PORT:-5005}:5005"
volumes:
- ../../:/monkeytype
entrypoint: 'bash -c "echo starting, this may take a while... \
&& cd /monkeytype \
&& pnpm config set store-dir /pnpm-store
&& pnpm i \
&& npm run dev-be"'
volumes:
mongo-data:
redis-data: