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.8 restart: on-failure ports: - "${DOCKER_DB_PORT:-27017}:27017" volumes: - mongo-data:/data/db api-server: container_name: monkeytype-api-server image: node:18.20.4 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 \ && npm i --prefer-offline --no-audit \ && npm run dev-be"' volumes: mongo-data: redis-data: