ToolJet/docker-compose.yaml

99 lines
2.1 KiB
YAML

version: "3"
services:
plugins:
build:
context: ./
dockerfile: ./docker/plugins.Dockerfile.dev
image: tooljet-plugins:development
container_name: plugins
platform: linux/x86_64
volumes:
- ./plugins:/app/plugins
command: npm run --prefix plugins start
client:
build:
context: ./
dockerfile: ./docker/client.Dockerfile.dev
image: tooljet-client:development
container_name: client
platform: linux/x86_64
volumes:
- ./frontend:/app/frontend:delegated
- ./plugins:/app/plugins
- /app/frontend/node_modules/
ports:
- 8082:8082
environment:
- WEBPACKER_DEV_SERVER_HOST=0.0.0.0
- NODE_ENV=development
- SERVE_CLIENT=false
command: npm run --prefix frontend start
server:
build:
context: ./
dockerfile: ./docker/server.Dockerfile.dev
image: tooljet-server:development
container_name: server
platform: linux/x86_64
depends_on:
- postgres
env_file:
- .env
volumes:
- ./server:/app/server:delegated
- ./plugins:/app/plugins
- /app/server/node_modules/
- ./.env:/app/.env
- ./.env.test:/app/.env.test
ports:
- 3000:3000
environment:
- SERVE_CLIENT=false
- FORCE_COLOR=1
command: npm run --prefix server start:dev
postgrest:
container_name: postgrest
image: postgrest/postgrest:v12.0.2
ports:
- "3002:3002"
env_file:
- .env
depends_on:
- postgres
postgres:
container_name: ${PG_HOST}
image: postgres:13
restart: always
ports:
- 5432:5432
volumes:
- postgres:/data/postgres
env_file: .env
environment:
- POSTGRES_USER=${PG_USER}
- POSTGRES_PASSWORD=${PG_PASS}
redis:
container_name: redis
image: redis:6.2
restart: always
deploy:
resources:
limits:
cpus: '0.5'
memory: 1G
env_file:
- .env
environment:
- MASTER=redis
- REDIS_USER=${REDIS_USER}
- REDIS_PASSWORD=${REDIS_PASSWORD}
volumes:
postgres:
redis: