Skip to main content

Installing

There are three common ways to install and run Stellar Core:

  1. Using published packages. For production use, we recommend installing Stellar Core using published packages.

  2. Building from source. In some uncommon situations, or if you want to sacrifice convenience for maximum control, building from source may be necessary.

  3. Use a Docker image. Using a Docker image is the quickest and easiest method, so it's a good choice for a lot of developers.

Release Version

Whichever method you use, you should make sure to install the latest release since these builds are backwards compatible and are cumulative.

The version number scheme that we follow is protocol_version.release_number.patch_number, where:

  • protocol_version is the maximum protocol version supported by that release (all versions are 100% backward compatible),
  • release_number is bumped when a set of new features or bug fixes not impacting the protocol are included in the release, and
  • patch_number is used when a critical fix has to be deployed.

Package-Based Installation

If you are using a recent LTS version of Ubuntu, we provide the latest stable releases of stellar-core and stellar-horizon in Debian binary package format.

You may choose to install these packages individually, which offers the greatest flexibility, but requires manual creation of the relevant configuration files and configuration of a PostgreSQL database.

Installing From Source

The Stellar Core source code repository contains extensive and thorough instructions to build the software from source. Please check out INSTALL.md for more information.

Docker-Based Installation

Development Environments

SDF maintains a quickstart image that bundles Stellar's "Captive Core" with Horizon and the necessary PostgreSQL databases. It's a quick way to set up a default, non-validating, ephemeral configuration that should work for most developers. Additionally, the quickstart image can be spun up pre-configured for use as a Mainnet, Testnet, Futurenet, or Local network node.

info

The quickstart image is not intended to serve as a production-level instance node. Please plan your production instance(s) carefully.

Production Environments

SDF also maintains a Stellar-Core-only standalone image, stellar/stellar-core.

Example usage:

docker run stellar/stellar-core:latest help
docker run stellar/stellar-core:latest gen-seed

To run the Stellar Core daemon you need to provide a configuration file:

# Initialize postgres DB (see DATABASE config option)
docker run -v "/path/to/config/dir:/etc/stellar/" stellar/stellar-core:latest new-db
# Run stellar-core daemon in the background
docker run -d -v "/path/to/config/dir:/etc/stellar/" stellar/stellar-core:latest run

The image utilizes deb packages so it's possible to confirm the checksum of the stellar-core binary in the docker image matches what is in the cryptographically signed deb package. See packages documentation for information on installing Ubuntu packages. To calculate this checksum in the docker image you can run:

docker run --entrypoint=/bin/sha256sum stellar/stellar-core:latest /usr/bin/stellar-core