Deploy From Zero
Bring up a private Monkeys environment from an empty machine
This guide starts from a clean development machine and brings up a private Monkeys stack with the current multi-repository layout.
1. Prepare The Machine
Install:
- Git
- Docker Engine or Docker Desktop
- Docker Compose v2
- Node.js 18 or later
- Yarn 1.x for the main Node.js services
Docker needs enough memory for PostgreSQL, Redis, Elasticsearch, Conductor, MinIO, Prometheus, Grafana, and product services. For Docker Desktop, allocate at least 12 GB memory when possible.
2. Create A Workspace
Keep Monkeys repositories as siblings. The compose files in monkeys use this layout when building service images.
mkdir -p INFMONKEYS
cd INFMONKEYS
git clone https://github.com/infmonkeys/monkeys.git
git clone https://github.com/infmonkeys/monkeys-server.git
git clone https://github.com/infmonkeys/monkeys-studio.git
git clone https://github.com/infmonkeys/monkeys-kernel.git
git clone https://github.com/infmonkeys/monkeys-compute.gitClone optional capability services only when you need them:
git clone https://github.com/infmonkeys/monkeys-agent-server.git
git clone https://github.com/infmonkeys/monkeys-billing-server.git
git clone https://github.com/infmonkeys/monkeys-data-server.git
git clone https://github.com/infmonkeys/monkeys-webhook-server.git
git clone https://github.com/infmonkeys/monkeys-mcp-server.git
git clone https://github.com/infmonkeys/monkeys-conductor-worker.git
git clone https://github.com/infmonkeys/monkeys-training-worker.git
git clone https://github.com/infmonkeys/monkeys-comfyui-worker.git
git clone https://github.com/infmonkeys/monkey-tools-third-party-api.git
git clone https://github.com/infmonkeys/monkey-tools-third-party-api-python.git
git clone https://github.com/infmonkeys/monkey-tools-sandbox.git
git clone https://github.com/infmonkeys/monkey-tools-agentkits.git3. Start Infrastructure
The infrastructure compose file lives in the hub repository.
cd monkeys/docker/infrastructure
docker compose up -dExpected local endpoints:
| Service | Endpoint |
|---|---|
| PostgreSQL | localhost:5432 |
| Redis | localhost:6379 |
| Elasticsearch | http://localhost:9200 |
| Conductor API | http://localhost:8080/api |
| Conductor UI | http://localhost:5008 |
| MinIO API | http://localhost:9000 |
| MinIO console | http://localhost:9001 |
| Prometheus | http://localhost:9090 |
| Grafana | http://localhost:3003 |
Check the core dependencies before starting product services:
docker compose ps
curl http://localhost:8080/health
curl http://localhost:9200/_cluster/health4. Start Core Product Services
From the services compose directory:
cd ../services
docker compose up -d --buildThe default profile builds and starts:
monkeys-servermonkeys-studiomonkeys-kernelmonkeys-compute
Core service ports:
| Service | Endpoint |
|---|---|
| Studio | http://localhost:3000 |
| Main backend | http://localhost:33002 |
| Kernel frontend | http://localhost:3001 |
| Compute frontend | http://localhost:3002 |
5. Add Capability Profiles
Start optional profiles only after their sibling repositories are cloned.
docker compose --profile agent up -d --build
docker compose --profile billing up -d --build
docker compose --profile data up -d --build
docker compose --profile webhook up -d --build
docker compose --profile mcp up -d --build
docker compose --profile worker up -d --build
docker compose --profile tools up -d --buildProfiles can be combined:
docker compose --profile agent --profile tools up -d --build6. Verify The Stack
Use these checks after startup:
docker compose ps
curl http://localhost:33002Then open Studio at http://localhost:3000, create or select a team, configure model credentials, and create a small workflow with one model node and one explicit output.
7. Stop Or Reset
Stop product services:
cd monkeys/docker/services
docker compose downStop infrastructure:
cd ../infrastructure
docker compose downDelete local infrastructure data only when you intentionally want a clean database and object store:
docker compose down -v