Skip to main content

Getting started

This guide provides detailed instructions for installing ChainLaunch on different operating systems and environments.

System Requirements

Before installing ChainLaunch, ensure your system meets the following requirements:

Minimum Requirements

  • CPU: 2 cores
  • RAM: 4GB
  • Disk Space: 10GB available
  • Operating System:
    • macOS 10.15 or later
    • Ubuntu 22.04/24.04 LTS (Recommended)
  • CPU: 4+ cores
  • RAM: 8GB or more
  • Disk Space: 20GB+ available
  • Network: Stable internet connection

Prerequisites

  • Docker Engine 20.10.x or later
  • curl or wget

Installation Methods

ChainLaunch can be installed using different methods depending on your preference and environment.

Binary Installation

This is the simplest method to get started with ChainLaunch.

macOS

For Apple Silicon (M1/M2)

export CHAINLAUNCH_VERSION=v0.0.2
export CHAINLAUNCH_URL="https://github.com/LF-Decentralized-Trust-labs/chainlaunch/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-darwin-arm64"
curl -L -O ${CHAINLAUNCH_URL}
chmod +x chainlaunch-darwin-arm64
sudo mv chainlaunch-darwin-arm64 /usr/local/bin/chainlaunch

For Intel Processors

export CHAINLAUNCH_VERSION=v0.0.2
export CHAINLAUNCH_URL="https://github.com/LF-Decentralized-Trust-labs/chainlaunch/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-darwin-amd64"
curl -L -O ${CHAINLAUNCH_URL}
chmod +x chainlaunch-darwin-amd64
sudo mv chainlaunch-darwin-amd64 /usr/local/bin/chainlaunch

Linux

export CHAINLAUNCH_VERSION=v0.0.2
export CHAINLAUNCH_URL="https://github.com/LF-Decentralized-Trust-labs/chainlaunch/releases/download/${CHAINLAUNCH_VERSION}/chainlaunch-linux-amd64"
curl -L -O ${CHAINLAUNCH_URL}
chmod +x chainlaunch-linux-amd64
sudo mv chainlaunch-linux-amd64 /usr/local/bin/chainlaunch

Verification

After installation, verify that ChainLaunch is properly installed by running:

chainlaunch version

You should see output similar to:

ChainLaunch 0.0.1
Build: abcdef123456
Go version: go1.23.5

Configuration

Basic Configuration

ChainLaunch can be configured using environment variables or a configuration file.

Environment Variables

# Required
export CHAINLAUNCH_USER=admin
export CHAINLAUNCH_PASSWORD=admin

Then start ChainLaunch with the config file:

chainlaunch serve --port=8100 --db=./chainlaunch.db

Advanced Configuration

For advanced deployments, you can configure additional settings:

TLS/SSL Configuration

To enable secure HTTPS connections:

go run cmd/chainlaunch/main.go serve --port=8443 --db=./chainlaunch.db --tls-cert=./cert.pem --tls-key=./key.pem

Starting the Server

Basic Start

chainlaunch serve --port=8100 --db=./chainlaunch.db

Run as a System Service

Linux (systemd)

Create a systemd service file:

sudo nano /etc/systemd/system/chainlaunch.service

Add the following content:

[Unit]
Description=ChainLaunch Service
After=network.target

[Service]
User=chainlaunch
Group=chainlaunch
Environment="CHAINLAUNCH_USER=admin"
Environment="CHAINLAUNCH_PASSWORD=admin"
ExecStart=/usr/local/bin/chainlaunch serve --port=8100 --db=/var/lib/chainlaunch/chainlaunch.db
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

Enable and start the service:

sudo systemctl daemon-reload
sudo systemctl enable chainlaunch
sudo systemctl start chainlaunch

Accessing the Web Interface

After starting the ChainLaunch server, you can access the web interface by opening a browser and navigating to:

http://localhost:8100

Enter your credentials (default: admin/admin) to log in.

ChainLaunch Login

After successful login, you'll see the ChainLaunch dashboard:

ChainLaunch Dashboard

Troubleshooting

Common Issues

Port Already in Use

If you see an error like "address already in use":

# Find the process using the port
sudo lsof -i :8100

# Kill the process
sudo kill <PID>

Permission Denied

If you encounter permission issues:

# Ensure the binary is executable
chmod +x /path/to/chainlaunch

# Check directory permissions
sudo chown -R <your_user>:<your_group> /path/to/data/directory

Database Connection Issues

If you're using an external database and encounter connection problems:

  1. Verify the database is running
  2. Check network connectivity
  3. Ensure credentials are correct
  4. Verify database user has appropriate permissions