services: plane-redis: image: valkey/valkey:7.2.5-alpine restart: unless-stopped networks: - dev_env volumes: - redisdata:/data ports: - "6379:6379" plane-mq: image: rabbitmq:3.13.6-management-alpine restart: unless-stopped networks: - dev_env volumes: - rabbitmq_data:/var/lib/rabbitmq env_file: - .env environment: RABBITMQ_DEFAULT_USER: ${RABBITMQ_USER} RABBITMQ_DEFAULT_PASS: ${RABBITMQ_PASSWORD} RABBITMQ_DEFAULT_VHOST: ${RABBITMQ_VHOST} plane-minio: image: minio/minio restart: unless-stopped networks: - dev_env entrypoint: > /bin/sh -c " mkdir -p /export/${AWS_S3_BUCKET_NAME} && minio server /export --console-address ':9090' & sleep 5 && mc alias set myminio http://localhost:9000 ${AWS_ACCESS_KEY_ID} ${AWS_SECRET_ACCESS_KEY} && mc mb myminio/${AWS_S3_BUCKET_NAME} -p || true && tail -f /dev/null " volumes: - uploads:/export env_file: - .env environment: MINIO_ROOT_USER: ${AWS_ACCESS_KEY_ID} MINIO_ROOT_PASSWORD: ${AWS_SECRET_ACCESS_KEY} ports: - "9000:9000" - "9090:9090" plane-db: image: postgres:15.7-alpine restart: unless-stopped networks: - dev_env command: postgres -c 'max_connections=1000' volumes: - pgdata:/var/lib/postgresql/data env_file: - .env environment: PGDATA: /var/lib/postgresql/data ports: - "5432:5432" # web: # build: # context: . # dockerfile: ./web/Dockerfile.dev # restart: unless-stopped # networks: # - dev_env # volumes: # - ./web:/app/web # env_file: # - ./web/.env # depends_on: # - api # - worker # space: # build: # context: . # dockerfile: ./space/Dockerfile.dev # restart: unless-stopped # networks: # - dev_env # volumes: # - ./space:/app/space # depends_on: # - api # - worker # - web # admin: # build: # context: . # dockerfile: ./admin/Dockerfile.dev # restart: unless-stopped # networks: # - dev_env # volumes: # - ./admin:/app/admin # depends_on: # - api # - worker # - web # live: # build: # context: . # dockerfile: ./live/Dockerfile.dev # restart: unless-stopped # networks: # - dev_env # volumes: # - ./live:/app/live # depends_on: # - api # - worker # - web api: build: context: ./apps/api dockerfile: Dockerfile.dev args: DOCKER_BUILDKIT: 1 restart: unless-stopped networks: - dev_env volumes: - ./apps/api:/code command: ./bin/docker-entrypoint-api-local.sh env_file: - ./apps/api/.env depends_on: - plane-db - plane-redis - plane-mq ports: - "8000:8000" worker: build: context: ./apps/api dockerfile: Dockerfile.dev args: DOCKER_BUILDKIT: 1 restart: unless-stopped networks: - dev_env volumes: - ./apps/api:/code command: ./bin/docker-entrypoint-worker.sh env_file: - ./apps/api/.env depends_on: - api - plane-db - plane-redis beat-worker: build: context: ./apps/api dockerfile: Dockerfile.dev args: DOCKER_BUILDKIT: 1 restart: unless-stopped networks: - dev_env volumes: - ./apps/api:/code command: ./bin/docker-entrypoint-beat.sh env_file: - ./apps/api/.env depends_on: - api - plane-db - plane-redis migrator: build: context: ./apps/api dockerfile: Dockerfile.dev args: DOCKER_BUILDKIT: 1 restart: "no" networks: - dev_env volumes: - ./apps/api:/code command: ./bin/docker-entrypoint-migrator.sh --settings=plane.settings.local env_file: - ./apps/api/.env depends_on: - plane-db - plane-redis # proxy: # build: # context: ./apps/proxy # dockerfile: Dockerfile.ce # restart: unless-stopped # networks: # - dev_env # ports: # - ${LISTEN_HTTP_PORT}:80 # - ${LISTEN_HTTPS_PORT}:443 # env_file: # - .env # environment: # FILE_SIZE_LIMIT: ${FILE_SIZE_LIMIT:-5242880} # BUCKET_NAME: ${AWS_S3_BUCKET_NAME:-uploads} # depends_on: # - api # - web # - space # - admin volumes: redisdata: uploads: pgdata: rabbitmq_data: networks: dev_env: driver: bridge