Files
Lyu 6ef77f0b98 docs: warn that project1's defaults collide with the quickstart instance
Both pages start ~/insforge on the default ports, then hand project1 those same
ports in the multi-instance section. Anyone reading either page end-to-end brings
up the second one into a bind failure.

Same note in both, since the README carries a copy of this section.
2026-08-08 13:34:18 -07:00

4.1 KiB

Deploy InsForge with Docker

Prerequisites

  • Docker and Docker Compose installed on your machine
  • Git, to check out the repository

Setup InsForge

Step 1: Get the repository

curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh | sh -s ~/insforge

Checks out the files the stack reads and generates JWT_SECRET, ENCRYPTION_KEY, ROOT_ADMIN_PASSWORD and POSTGRES_PASSWORD into .env. Nothing is started.

Rather not pipe a script into a shell? Read it first:

curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh -o setup.sh
less setup.sh
sh setup.sh ~/insforge

Every service pulls a published image — there is no build step. The checkout is required because Postgres mounts deploy/docker-init/db/ from it.

Step 2: Start InsForge

cd ~/insforge
docker compose up -d

Step 3: Access InsForge

Open your browser and navigate to http://localhost:7130, you can see the InsForge dashboard as below:

InsForge Dashboard

Running Multiple Instances

You can run multiple InsForge projects on the same host by using different ports and project names.

Step 1: Run the setup script once per directory

curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh | sh -s ~/project1
curl -fsSL https://raw.githubusercontent.com/InsForge/InsForge/main/deploy/setup.sh | sh -s ~/project2

A directory each, so each gets its own generated secrets. Copying .env.example instead would give both the placeholder values it ships — the same published JWT_SECRET on every instance.

Step 2: Give each one its own project name and ports

Both .env files start with COMPOSE_PROJECT_NAME=insforge, and two directories sharing that name share containers — the second up -d adopts the first's and recreates them with the second's config. Set it before starting anything.

~/project1/.env keeps the default ports — which collide with the ~/insforge instance from the quickstart above if it is still running. Stop that one, or give project1 its own ports the way project2 has:

COMPOSE_PROJECT_NAME=project1

~/project2/.env needs its own:

COMPOSE_PROJECT_NAME=project2
POSTGRES_PORT=5442
POSTGREST_PORT=5440
APP_PORT=7230
AUTH_PORT=7231
DENO_PORT=7233

Step 3: Start each project

cd ~/project1 && docker compose up -d
cd ~/project2 && docker compose up -d

COMPOSE_PROJECT_NAME gives each one isolated containers, volumes, and networks; the ports keep them from colliding on the host.

Managing multiple instances

# Check status
cd ~/project1 && docker compose ps

# View logs
cd ~/project1 && docker compose logs -f

# Stop an instance
cd ~/project1 && docker compose down

# Stop and remove all data
cd ~/project1 && docker compose down -v

Each project has its own database, storage, and configuration. They are completely independent.


Start using InsForge

1. Connect InsForge MCP

Open InsForge Dashboard, Follow the steps to connect InsForge MCP Server:

Connect InsForge MCP

2. Verify installation

To verify the connection, send the following prompt to your agent:

I'm using InsForge as my backend platform, call InsForge MCP's fetch-docs tool to learn about InsForge instructions.

3. Start building your project

Build your next todo app, Instagram clone, or online platform in seconds!

Sample Project Prompt:

Build an app similar to Reddit with community-based discussion threads using InsForge as the backend platform that has these features:

- Has a "Communities" list where users can browse or create communities
- Each community has its own posts feed
- Users can create posts with a title and body (text or image upload to InsForge storage)
- Users can comment on posts and reply to other comments
- Allows upvoting and downvoting for both posts and comments
- Shows vote counts and comment counts for each post