ChainLaunch

Quick Start

Get a running blockchain network in under 5 minutes.

Get a running blockchain network in under 5 minutes.

Requirements: 2+ CPU cores, 4 GB RAM, Docker 20.10+, macOS 10.15+ or Ubuntu 22.04+.

System Requirements

Minimum Recommended
CPU 2 cores 4+ cores
RAM 4 GB 8 GB+
Disk 10 GB 20 GB+
OS macOS 10.15+ / Ubuntu 22.04+ Ubuntu 24.04 LTS
Docker 20.10+ Latest

1. Install ChainLaunch

Run the install script — it detects your OS, downloads the latest binary, installs Docker if needed, generates a random admin password, and starts the server:

curl -fsSL https://chainlaunch.dev/deploy.sh | bash

When it finishes, the script prints a SETUP COMPLETE block with your credentials and saves them to ~/.chainlaunch/credentials.txt (mode 600). Look for:

Username: admin
Password: <random 24-char string>

ChainLaunch is now running at http://localhost:8100. Log in with admin and the printed password.

If you missed the output, read it back from the credentials file:

cat ~/.chainlaunch/credentials.txt

2. Deploy Your First Network

Option A: Hyperledger Fabric

chainlaunch testnet fabric \
  --name my-fabric \
  --org "Org1MSP,Org2MSP" \
  --peerOrgs "Org1MSP,Org2MSP" \
  --ordererOrgs "OrdererOrg" \
  --channels mychannel \  # NOTE: --channels is accepted but currently unused by the CLI; create channels via REST `POST /testnets/fabric` (channels field) or the network builder after provisioning
  --peerCounts "Org1MSP=1,Org2MSP=1" \
  --ordererCounts "OrdererOrg=3"

Option B: Hyperledger Besu

chainlaunch testnet besu --name my-besu --nodes 4 --mode docker

Option C: Hyperledger Fabric-X (new in 0.4.0)

A 4-party Arma network with one shared MSP — the easiest setup for token-sdk-x sample apps:

# macOS / Windows only — required so containers can dial the host:
export CHAINLAUNCH_FABRICX_LOCAL_DEV=true
 
chainlaunch fabricx quickstart --network-name my-fabricx --parties 4

This provisions ~22 containers (16 orderer + 5 committer + 1 postgres) and creates a quickstart namespace as a health check. See Fabric-X Quickstart for the web UI flow and --mode multi for production-shape MSP topology.

All three commands create a fully configured network with all nodes running locally.

3. Open the Dashboard

Go to http://localhost:8100 to see your nodes, deploy smart contracts with AI, and monitor your network.

ChainLaunch Dashboard


Manual Installation

If you prefer not to use the install script, download the binary directly:

macOS (Apple Silicon)
export CHAINLAUNCH_VERSION=$(curl -s https://api.github.com/repos/LF-Decentralized-Trust-labs/chaindeploy/releases/latest | grep tag_name | cut -d '"' -f 4)
curl -L -O "https://github.com/LF-Decentralized-Trust-labs/chaindeploy/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-darwin-arm64"
chmod +x chainlaunch-darwin-arm64
sudo mv chainlaunch-darwin-arm64 /usr/local/bin/chainlaunch
macOS (Intel)
export CHAINLAUNCH_VERSION=$(curl -s https://api.github.com/repos/LF-Decentralized-Trust-labs/chaindeploy/releases/latest | grep tag_name | cut -d '"' -f 4)
curl -L -O "https://github.com/LF-Decentralized-Trust-labs/chaindeploy/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-darwin-amd64"
chmod +x chainlaunch-darwin-amd64
sudo mv chainlaunch-darwin-amd64 /usr/local/bin/chainlaunch
Linux (amd64)
export CHAINLAUNCH_VERSION=$(curl -s https://api.github.com/repos/LF-Decentralized-Trust-labs/chaindeploy/releases/latest | grep tag_name | cut -d '"' -f 4)
curl -L -O "https://github.com/LF-Decentralized-Trust-labs/chaindeploy/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-linux-amd64"
chmod +x chainlaunch-linux-amd64
sudo mv chainlaunch-linux-amd64 /usr/local/bin/chainlaunch
Linux (arm64)
export CHAINLAUNCH_VERSION=$(curl -s https://api.github.com/repos/LF-Decentralized-Trust-labs/chaindeploy/releases/latest | grep tag_name | cut -d '"' -f 4)
curl -L -O "https://github.com/LF-Decentralized-Trust-labs/chaindeploy/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-linux-arm64"
chmod +x chainlaunch-linux-arm64
sudo mv chainlaunch-linux-arm64 /usr/local/bin/chainlaunch

First-time start

The server requires you to set initial admin credentials on first run — there is no default password. If CHAINLAUNCH_USER and CHAINLAUNCH_PASSWORD are unset and the database has no users, startup aborts:

No users found in database. CHAINLAUNCH_USER and CHAINLAUNCH_PASSWORD environment variables must be set for initial user creation

Set them once, then start the server:

export CHAINLAUNCH_USER=admin
export CHAINLAUNCH_PASSWORD='change-me-to-something-strong'
chainlaunch serve --port=8100 --db=./chainlaunch.db

On subsequent starts the env vars are no longer required (the user lives in the SQLite DB). If you set CHAINLAUNCH_PASSWORD later, the server resets that user's password and promotes them to admin — useful for password recovery.

Configuration (Optional)

# Override admin credentials at startup (see "First-time start" above)
export CHAINLAUNCH_USER=admin
export CHAINLAUNCH_PASSWORD='change-me-to-something-strong'
 
# Fabric-X local-dev mode (macOS / Windows Docker Desktop)
# Rewrites container-to-host addresses to host.docker.internal so committers
# can dial orderers across the Docker bridge.
export CHAINLAUNCH_FABRICX_LOCAL_DEV=true
 
# AI Integration
export ANTHROPIC_API_KEY=sk-ant-...    # For Claude AI chaincode assistant
export OPENAI_API_KEY=sk-...           # For OpenAI integration

Run as a System Service

The deploy.sh installer registers ChainLaunch with systemd (Linux) or launchd (macOS) automatically and writes CHAINLAUNCH_USER / CHAINLAUNCH_PASSWORD into the unit file. If you installed manually, write your own service file pointing at /usr/local/bin/chainlaunch serve --port=8100 --db=/var/lib/chainlaunch/chainlaunch.db and inject the same env vars. A minimal systemd example:

# /etc/systemd/system/chainlaunch.service
[Unit]
Description=ChainLaunch
After=network.target docker.service
Requires=docker.service
 
[Service]
User=root
Environment=CHAINLAUNCH_USER=admin
Environment=CHAINLAUNCH_PASSWORD=change-me
ExecStart=/usr/local/bin/chainlaunch serve --port=8100 --db=/var/lib/chainlaunch/chainlaunch.db
Restart=on-failure
 
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now chainlaunch

Pro tip — ChainLaunch Pro ships a chainlaunch install subcommand that generates this file for you. The open-source build does not.

Next Steps