How to Install Dolt on Linux, macOS, and Windows: 5 Methods Explained

Run curl -L https://github.com/dolthub/dolt/releases/latest/download/install.sh | sudo bash on Linux or macOS, or brew install dolt for macOS, to install the single ~103 MiB binary and verify with dolt version.

Dolt is a version-controlled SQL database that combines Git-like branching with MySQL-compatible queries. If you want to install Dolt on your machine, the dolthub/dolt repository provides multiple distribution methods ranging from one-line scripts to package managers and Docker images. Every installation method ultimately deploys the same single binary, ensuring consistent behavior across platforms.

Official Install Script (Linux and macOS)

The official install script provides the fastest way to install Dolt on Linux and macOS. Located at go/utils/publishrelease/install.sh in the repository, this script detects your operating system and CPU architecture, downloads the appropriate release tarball, and installs the binary to /usr/local/bin.

The script performs the following steps:

  1. Sanity checks – Verifies the OS is Linux or Darwin and the CPU is x86_64 or arm64.
  2. Platform selection – Constructs the platform tuple (e.g., linux-amd64, darwin-arm64).
  3. Download – Fetches the tarball from https://github.com/dolthub/dolt/releases/download/v$VERSION/dolt-$PLATFORM_TUPLE.tar.gz.
  4. Installation – Extracts the dolt binary to /usr/local/bin and license files to /usr/local/share/doc/dolt.

To run the install script:

curl -L https://github.com/dolthub/dolt/releases/latest/download/install.sh | sudo bash

Note: The script requires sudo because it writes to /usr/local/bin. If you prefer not to use sudo, download the tarball manually from the releases page and place the binary in a directory on your $PATH.

Package Managers

For users who prefer native package management, Dolt is available through several popular package managers.

Homebrew (macOS)

Homebrew provides a pre-built bottle for macOS users. The formula downloads the same release tarball used by the install script and places the binary in your Homebrew prefix.

brew update
brew install dolt
dolt version

Arch Linux

Arch Linux users can install Dolt directly from the official repositories using pacman.

sudo pacman -Sy dolt
dolt version

Windows (Chocolatey and MSI)

Windows developers have two primary options:

Chocolatey (command-line package manager):

choco install dolt -y
dolt version

MSI Installer: Download the .msi file from the GitHub releases page for a traditional Windows installation wizard.

Docker Images

Docker provides an isolated environment for running Dolt without installing it directly on your host system. The dolthub/dolt repository maintains two official images:

  • dolthub/dolt – Contains the dolt CLI binary.
  • dolthub/dolt-sql-server – Runs a MySQL-compatible SQL server.

The Dockerfiles (docker/Dockerfile and docker/serverDockerfile) copy the pre-built binary into a minimal container image, following the same release tarball approach used by the install script.

Pull and run the CLI image:

docker pull dolthub/dolt
docker run --rm dolthub/dolt version

For the SQL server:

docker run -p 3306:3306 dolthub/dolt-sql-server

Build from Source

If you need a custom build or are contributing to the project, you can compile Dolt from source. This requires Go version 1.22 or later and a working C compiler (for cgo).

The main entry point for the CLI is located at go/cmd/dolt/dolt.go. Compiling this package produces the dolt binary.

Clone the repository and install:

git clone https://github.com/dolthub/dolt.git
cd dolt/go
go install ./cmd/dolt

The binary is placed in $GOPATH/bin (or $HOME/go/bin if $GOPATH is unset). Verify the build:

$HOME/go/bin/dolt version

Verify Your Installation

Regardless of the installation method, confirm that Dolt is correctly installed and accessible from your terminal:

dolt version

This command prints the installed version (e.g., dolt version 1.79.1) and confirms the binary is in your $PATH.

Summary

  • Dolt is distributed as a single ~103 MiB binary that works identically across all installation methods.
  • The official install script (go/utils/publishrelease/install.sh) provides the fastest setup for Linux and macOS by auto-detecting your platform and installing to /usr/local/bin.
  • Package managers (Homebrew, pacman, Chocolatey) offer native installation experiences for macOS, Arch Linux, and Windows.
  • Docker images (dolthub/dolt and dolthub/dolt-sql-server) provide isolated environments without host installation.
  • Building from source requires Go 1.22+ and compiles the entry point at go/cmd/dolt/dolt.go.

Frequently Asked Questions

Can I install Dolt without sudo or administrator privileges?

Yes. If you cannot use sudo with the official install script, download the appropriate tarball manually from the GitHub releases page, extract the dolt binary, and place it in any directory that is on your $PATH (e.g., $HOME/bin or $HOME/.local/bin). For Windows, you can extract the binary to a user-writable folder and add that folder to your system PATH environment variable.

What are the system requirements for building Dolt from source?

Building Dolt from source requires Go version 1.22 or later and a working C compiler (cgo is used for some dependencies). The compilation process targets the go/cmd/dolt/dolt.go entry point. After running go install ./cmd/dolt, the binary appears in $GOPATH/bin (defaulting to $HOME/go/bin if $GOPATH is unset). This method is ideal for contributors or users on non-standard architectures not covered by the pre-built releases.

How do I run Dolt as a MySQL-compatible server using Docker?

To run Dolt in server mode without installing it locally, use the dolthub/dolt-sql-server Docker image. This image exposes a MySQL-compatible server on port 3306. Run the following command to start the server:

docker run -p 3306:3306 dolthub/dolt-sql-server

You can then connect using any MySQL client (e.g., mysql -h 127.0.0.1 -P 3306 -u root). For CLI-only operations, use the dolthub/dolt image instead.

Is the Dolt binary the same across all installation methods?

Yes. Whether you install Dolt via the official script, Homebrew, Docker, or by building from source, you receive the same single binary (approximately 103 MiB). The official install script at go/utils/publishrelease/install.sh and the Dockerfiles in docker/Dockerfile all pull from the same release tarballs published on GitHub. This ensures identical behavior for the dolt CLI and dolt sql-server regardless of how you obtained the software.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →