mirror of
https://github.com/monkeytypegame/monkeytype.git
synced 2025-09-07 07:10:01 +08:00
49 lines
1.2 KiB
YAML
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:
|