|
|
|
version: '3'
|
|
|
|
|
|
|
|
services:
|
|
|
|
taskme-api:
|
|
|
|
build:
|
|
|
|
context: ./
|
|
|
|
dockerfile: Dockerfile
|
|
|
|
expose:
|
|
|
|
- 5000
|
|
|
|
ports:
|
|
|
|
- 5000:3000
|
|
|
|
depends_on:
|
|
|
|
- taskme-postgres
|
|
|
|
- taskme-redis
|
|
|
|
- taskme-minio
|
|
|
|
links:
|
|
|
|
- taskme-postgres
|
|
|
|
- taskme-redis
|
|
|
|
- taskme-minio
|
|
|
|
volumes:
|
|
|
|
- ./:/home/node/app
|
|
|
|
command: npm run start
|
|
|
|
|
|
|
|
taskme-postgres:
|
|
|
|
image: postgres:11
|
|
|
|
restart: always
|
|
|
|
|
|
|
|
ports:
|
|
|
|
- 5001:5432
|
|
|
|
|
|
|
|
environment:
|
|
|
|
POSTGRES_PASSWORD: ${DATABASE_PASS}
|
|
|
|
POSTGRES_USER: ${DATABASE_USER}
|
|
|
|
POSTGRES_DB: ${DATABASE_DB}
|
|
|
|
|
|
|
|
taskme-redis:
|
|
|
|
image: 'redis:4-alpine'
|
|
|
|
command: redis-server --requirepass ${REDIS_PASS}
|
|
|
|
ports:
|
|
|
|
- '5002:6379'
|
|
|
|
|
|
|
|
taskme-minio:
|
|
|
|
hostname: taskme-minio
|
|
|
|
image: minio/minio:RELEASE.2021-09-18T18-09-59Z
|
|
|
|
container_name: taskme-minio
|
|
|
|
|
|
|
|
volumes:
|
|
|
|
- './taskme/data/:/data'
|
|
|
|
- './taskme/config:/root/.minio'
|
|
|
|
|
|
|
|
ports:
|
|
|
|
- 5003:9000
|
|
|
|
- 5004:9001
|
|
|
|
environment:
|
|
|
|
MINIO_ROOT_USER: ${MINIO_ACCESS_KEY}
|
|
|
|
MINIO_ROOT_PASSWORD: ${MINIO_SECRET_KEY}
|
|
|
|
command: server --console-address ":9001" /data
|
|
|
|
|
|
|
|
taskme-createbuckets:
|
|
|
|
image: minio/mc
|
|
|
|
depends_on:
|
|
|
|
- taskme-minio
|
|
|
|
entrypoint: >
|
|
|
|
/bin/sh -c "
|
|
|
|
sleep 10;
|
|
|
|
/usr/bin/mc config host add data http://${MINIO_HOST}:${MINIO_PORT} ${MINIO_ACCESS_KEY} ${MINIO_SECRET_KEY};
|
|
|
|
/usr/bin/mc mb data/${MINIO_BUCKET};
|
|
|
|
/usr/bin/mc policy set public data/${MINIO_BUCKET};
|
|
|
|
exit 0;
|
|
|
|
"
|
|
|
|
taskme-imgproxy:
|
|
|
|
image: 'darthsim/imgproxy:latest'
|
|
|
|
ports:
|
|
|
|
- '5005:8080'
|
|
|
|
environment:
|
|
|
|
IMGPROXY_KEY: ${IMGPROXY_KEY}
|
|
|
|
IMGPROXY_SALT: ${IMGPROXY_SALT}
|
|
|
|
IMGPROXY_MAX_SRC_FILE_SIZE: 10485760
|