For the best viewing experience, please turn your phone to portrait mode.

Lisk Core Binary Setup


This document will detail how to prepare a system for the installation of Lisk Core. It will guide you through the installation of important dependencies, as well as user creation.

Determine if your platform can run Lisk Core

Supported Platforms
  • Ubuntu 18.04 x86_64
  • Ubuntu 16.04 (LTS) x86_64

To complete the installation some prerequisites need to be fulfilled. If you have already performed these, please proceed to the Installation chapter. Please follow the instructions below to load the required software to your system.

Open the necessary ports

To connect to the desired network with Lisk Core , please ensure that the corresponding ports are open:

Network httpPort(HTTP) wsPort(TCP)
Mainnet 8000 8001
Testnet 7000 7001
Betanet 5000 5001
Devnet 4000 5000

These are the default ports for connecting with the network, they can be altered later in the config.json, which is specific for the network.

Install dependencies

sudo apt-get update
sudo apt-get install curl wget tar unzip zip ntp

Create a user to run Lisk


The lisk user itself does not need any sudo rights to run Lisk Core.

sudo adduser lisk


This section details how to install Lisk Core using pre-built binary packages. Once completed, you will have a functioning node on the Lisk Network. If you are looking to upgrade your current Lisk Core installation, please see the Upgrade Binary section.

Login to the Lisk user

The user was created in the Binary - Prerequisites Section. If you are already logged in to this user, please skip this step.

su - lisk

Execute the installation script

This will configure the environment, download and install Lisk Core.
Before proceeding, determine whether you wish to connect your node to the Testnet (Test Network) or the Mainnet (Main Network).


Download Lisk Core:


To connect your node to the Mainnet, run:

bash install -r main


Download Lisk Core:


To connect your node to the Testnet, run:

bash install -r test

You will be prompted for your installation directory, pressing enter will choose the default.

Next, you will be prompted, if you wish to synchronize from the Genesis block. If you answer 'no', which is the default option,
the node will download a recent snapshot of the database. This will be much faster than synching from the genesis block.

The installation may take a few minutes. Check the output of the scripts to verify that the installation was successful.

If you recognize an error, try to resolve it by analyzing the error output, otherwise you can have a look at our Troubleshooting Section.

Verify successful installation

When the installation script has finished, navigate inside of the newly created folder lisk-main(for Mainnet) or lisk-test(for Testnet).
You can verify that your Lisk node is up and running, by running the following command:

bash status

For further information and how to administer your Lisk node, please have a look at our Administration Section.

If you are not running Lisk locally, you will need to follow the Configuration - API document to enable access.

With all of the above steps complete you are ready to move on to the configuration documentation if you wish to enable forging or SSL, please see General Configuration.

Post-installation (optional)

Logrotate Setup

It is recommended to setup a log rotation for the logfile of Lisk Core.


Ubuntu systems provide a service called logrotate for this purpose.
First, make sure Logrotate is installed on your system:

logrotate --version

Next, create a new file called lisk in the logrotate directory /etc/logrotate.d:

cd /etc/logrotate.d
touch lisk

Inside of this file, define the parameters for the log rotation.

Example values:

/path/to/lisk/logs/mainnet/*.log { 
        daily                   # daily rotation
        rotate 5                # keep the 5 most recent logs
        maxage 14               # remove logs that are older than 14 days
        compress                # compress old log files
        delaycompress           # compress the data after it has been moved
        missingok               # if no logfile is present, ignore
        notifempty              # do not rotate empty log files

After customizing the config to fit your needs and saving it, you can test it by doing a dry run:

sudo logrotate /etc/logrotate.conf --debug