Installation
Install Boltbase on your system.
Quick Install
macOS/Linux
# Install to ~/.local/bin (default, no sudo required)
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | bash
# Store temporary files outside /tmp (e.g., limited-size NAS)
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | \
bash -s -- --working-dir /volume1/tmpThis detects your OS/architecture and installs to ~/.local/bin by default. Provide --working-dir if /tmp is constrained on your system (for example, on some NAS devices).
Windows
# Install latest version to default location (%LOCALAPPDATA%\Programs\boltbase)
irm https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.ps1 | iex
# Install specific version
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.ps1))) v1.24.0
# Install to custom directory
& ([scriptblock]::Create((irm https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.ps1))) latest "C:\tools\boltbase"REM Install latest version
curl -fsSL https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.cmd -o installer.cmd && .\installer.cmd && del installer.cmd
REM Install specific version
curl -fsSL https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.cmd -o installer.cmd && .\installer.cmd v1.24.0 && del installer.cmd
REM Install to custom directory
curl -fsSL https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.cmd -o installer.cmd && .\installer.cmd latest "C:\tools\boltbase" && del installer.cmdThe installer downloads the appropriate binary and adds it to your PATH.
Running as a Windows Service
If you plan to run Boltbase as a Windows service, you should install it to Program Files which requires administrator privileges. Download the installer script and run it as Administrator:
# Download the installer
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.ps1" -OutFile "installer.ps1"
# Right-click PowerShell → "Run as Administrator", then:
.\installer.ps1 latest "C:\Program Files\boltbase"Docker
docker run -d \
--name boltbase \
-p 8080:8080 \
-v ~/.boltbase:/var/lib/boltbase \
ghcr.io/dagu-org/boltbase:latest \
boltbase start-allVisit http://localhost:8080. See Docker Images for available tags and variants.
Package Managers
npm
npm install -g --ignore-scripts=false @dagu-org/boltbaseThis installs Boltbase globally with automatic platform detection.
Homebrew
brew update && brew install boltbaseManual Download
Download from GitHub Releases.
Installation Options
Custom Directory & Version
# Install to custom location
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | \
bash -s -- --install-dir ~/bin
# Install to system-wide location (requires sudo)
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | \
bash -s -- --install-dir /usr/local/bin
# Install specific version
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | \
bash -s -- --version v1.17.0
# Combine options
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | \
bash -s -- --version v1.17.0 --install-dir ~/bin
# Use a custom working directory for temporary files
curl -L https://raw.githubusercontent.com/dagu-org/dagu/main/scripts/installer.sh | \
bash -s -- --working-dir /volume1/tmpDocker Compose
services:
boltbase:
image: ghcr.io/dagu-org/boltbase:latest
ports:
- "8080:8080"
environment:
- BOLTBASE_TZ=America/New_York
- BOLTBASE_PORT=8080 # optional. default is 8080
- BOLTBASE_HOME=/boltbase # optional.
- PUID=1000 # optional. default is 1000
- PGID=1000 # optional. default is 1000
volumes:
- boltbase:/var/lib/boltbase
volumes:
boltbase: {}Run with docker compose up -d.
Docker with Host Docker Access
For Docker executor support:
services:
boltbase:
image: ghcr.io/dagu-org/boltbase:latest
ports:
- "8080:8080"
volumes:
- boltbase:/var/lib/boltbase
- /var/run/docker.sock:/var/run/docker.sock
entrypoint: [] # Override default entrypoint
user: "0:0" # Run as root for Docker access
volumes:
boltbase: {}⚠️ Security: Mounting Docker socket grants full Docker access.
Build from Source
Requirements:
- Go 1.25+
- Node.js & pnpm
- Make
git clone https://github.com/dagu-org/dagu.git
cd boltbase
# Build everything
make build
# Install
sudo cp .local/bin/boltbase /usr/local/bin/Development:
make ui # Build frontend
make test # Run tests
make run # Start with hot reloadDirectory Structure
Boltbase uses standard locations:
~/.config/boltbase/
├── dags/ # Workflows
├── config.yaml # Configuration
└── base.yaml # Shared config
~/.local/share/boltbase/
├── logs/ # Execution logs
├── data/ # History
└── suspend/ # Pause flagsOverride with environment variables:
export BOLTBASE_HOME=/opt/boltbase # All-in-one directory
export BOLTBASE_DAGS_DIR=/workflows # Custom workflow location
export BOLTBASE_LOG_DIR=/var/log/boltbase # Custom log location
export BOLTBASE_DATA_DIR=/var/lib/boltbase # Custom data locationVerify Installation
boltbase versionNext Steps
- Quick Start - Create your first workflow
- Configuration - Customize Boltbase
- Web UI - Explore the interface
