Documentation

English
  • English
  • Russian
Mina Overview

Getting Started

Welcome to Mina! This section will walk you through the process of setting up a Mina node. After we will show you how to generate a keypair for use with the network. Finally we'll show you how to connect to the network and begin producing blocks.

note

This documentation is for the Mainnet release.

Network status: Unknown

Requirements

Software: macOS, Linux (currently supports Debian 9 and Ubuntu 18.04 LTS), or any host with Docker

Note: Windows is not officially supported at this time. However, community members succeeded in setting up nodes using Windows Subsystem for Linux. Click here for instructions on using Windows, which are created by the community. Additionally Windows users can use the Docker documentation.

Hardware: Sending and receiving mina does not require any special hardware, but running a block producer on the Mina network currently requires:

  • at least a 8-core processor
  • at least 16GB of RAM

Note that if you plan on running a snark worker node at the same time as a block producer, you may need more RAM. GPUs aren't currently required, but may be required for node operators when the protoctol is upgraded.

Network: At least 1 Mbps connection

VM Instances: O(1) Labs has tested running nodes on several cloud providers, and recommends the following instances for basic node operator needs. Keep in mind that custom requirements as well as different cost constraints may require a different instance type.

Check out our guide for how to configure your Mina node on Google Cloud.

Installation

The newest binary releases can be found below. Instructions are provided for macOS and Linux below:

This is a large download, around 1GB, so the install might take some time.

Ubuntu 18.04 / Debian 9

Follow along below to install the latest Stable Mina Release 1.2.2 or visit the Github Releases Page to discover and install pre-release (Beta) builds.

You can set up the new debian stretch stable respository and install the latest version as follows:

echo "deb [trusted=yes] http://packages.o1test.net stretch stable" | sudo tee /etc/apt/sources.list.d/mina.list
sudo apt-get update
sudo apt-get install -y curl unzip mina-mainnet=1.2.2-feee67c

Check that daemon installed correctly by running mina version. The output should read Commit feee67cc2836bf12e792510a2440f28a0275740e on branch master.

Windows

Windows is not yet natively supported. If you are interested in receiving a grant to develop Mina for Windows, please email [email protected] or reach out in the Discord server.

Please instead use the Docker instructions below.

macOS

macOS is used by developers, but we are not officially supporting any pre-built packages at this time.

Please instead use the Docker instructions below or you may build from source.

Docker

Docker is cross-platform tool that allows you to run a virtual machine that will execute any needed software. Please follow the official installation instructions for your platform on this page. Once docker is installed, proceed to the Mina Docker instructions on Connect to the Network

Build from source

If you're running another Linux distro or some version of macOS, you can try building Mina from source code. Please note that other operating systems haven't been tested thoroughly, and may have issues. Feel free to share any logs and get troubleshooting help in the Discord server.

Set up port forwarding and any firewalls

If you are running a firewall, you should allow traffic on TCP port 8302. Additionally, unless the -external-ip YOUR_IP flag is provided, the daemon will use HTTPS (443) and HTTP (80) to try and determine its own IP address.

You may need to configure your router's port forwarding to allow inbound traffic to the following ports through your external IP address.

  • TCP port 8302
  • Optionally to use the GraphQL service, expose TCP port 3085

For walk-through instructions see this guide.

Next

Now that you've installed Mina and configured your network, let's move on to the next step - generating a keypair!