Get Started With Eris In Three Easy Steps
There are three steps need to get moving with Eris:
- Install the Eris platform.
- Roll your own Blockchain in seconds.
- Build (and run) your distributed application using smart contract templates and a simple, web-based user interface.
Step 1: Install the Eris Platform
eris has 1 dependency: Docker. Docker is a run anywhere container solution which makes development, deployment, testing, and running of distributed applications a breeze.
Currently we consider the most workable setup to be (what our tests consider authoritative). We are working steadily toward making eris available for a wide variety of host environments.
- HOST_OS = UBUNTU:14.04
- DOCKER = 1.9.1
Installation requires that Docker be installed. Please see the Docker documentation for how to install.
At the current time,
docker >= 1.8.0. You can check your docker version with
docker version. We do not test against older versions of docker.
eris may or may not work against earlier versions of docker and we can make no guarantees of usability there.
Docker Installation for Linux
Follow the link above for the official way to install Docker on your Linux box.
Essential! After you install docker, then you must make sure that the user you are using to develop with
eris has access to the docker socket (which is accessible via the docker Linux usergroup). When you are logged in as the user you can do this:
sudo usermod -a -G docker $USER
That command will add the current user to the docker group which will mean that docker will not need to be called from
After you run that command, then please log out of the current shell and open a new shell. After that
eris will then be able to connect to docker.
The above command may be skipped, but if you do, then you will need to run all
eris commands either as the root user or using
Note Docker does not run on 32bit architecture. If you are using a Linux box, please make sure it is 64bit architecture.
Docker Installation for OSX & Windows
If you are on OSX or Windows, the Docker Toolbox is a graphical way of installing Docker, Virtualbox and Docker Machine. The Toolbox will build all of the functionality which Docker requires so that
eris is able to connect into the Docker daemon.
Note that the Docker Toolbox will install VirtualBox by default. Because Docker runs by connecting into a Linux kernel, Docker only runs on Linux OS’s at this time. While Docker is reportedly working on native solutions for other operating systems, at this time a Linux operating system is required.
By default the Docker Toolbox will use VirtualBox to create a very minimal Linux virtual machine with the Docker daemon preinstalled. The toolbox will install Docker-Machine which is used to start, stop, reboot, remove, etc. virtual machines via VirtualBox’s API.
eris has been built to be able to connect into the Docker daemon running within a VirtualBox minimal Linux virtual machine by default and without any effort on your part (other than installing the Docker Toolbox).
If virtualbox gives you trouble, then use docker machine’s plugins and create your
eris machine in the cloud.
If you’re a brew and brew cask user then:
brew cask install virtualbox brew install docker docker-machine
N.B. No matter whether you follow the below or not, you’ll want to run eris commands either from
git bash or from the
Docker Quickstart Terminal (which is really just
git bash) window. While most commands will work from the
cmd terminal, it is much more complicated to get right. All the tutorials will assume that you are using the
Docker Quickstart Terminal and are structured to support only that environment.
If you’re a chocolatey user then:
choco install virtualbox docker docker-machine
Make sure that everything is setup with Docker by running:
Note you will need to make sure that you perform the above command for the user which will be running eris.
eris can be easily installed using our convenient binary releases.
We distribute binaries via our Github Releases Page. You will simply need to download the proper zip or tarball for your architecture and then extract that into a place in your
We have (beta)
apt-get support for most current versions of Debain and Ubuntu. If you wish to use apt-get to install
eris then you will simply perform the following:
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-keys DDA1D0AB sudo echo "deb https://apt.eris.industries DIST main" > /etc/apt/sources.list.d/eris.list
Note in the above command you must replace
DIST with the distribution codename for your version of Debian or Ubuntu (vivid, trusty, jessie, etc.). We intend to make this easier in coming releases. We do not use the major-minor distribution pattern (e.g.,
ubuntu-trusty) as Docker does, but rather we just use (
trusty) as the DIST codename.
Once the apt repository is added to your sources then:
sudo apt-get update sudo apt-get install eris
We now have (experimental)
yum support for most current versions of Fedora, CentOS, RHEL, etc. If you wish to use yum to install
eris then you will perform the following:
sudo curl -sSL https://yum.eris.industries/eris.repo > /etc/yum.repos.d/eris.repo yum install eris-cli
Yum support is still quite experimental, so please do not rely on it, but please do let us know any issues you have with the installation and we will make sure to address those as quickly as we can.
Building From Source
If you would like to build from source see our documentation.
Check that everything installed correctly with:
Troubleshooting Your Install
Step 2: Roll Your Own Blockchain in Seconds
If you want to create your blockchain it is very easy.
eris services start keys eris chains make test_chain --chain-type simplechain eris chains new test_chain
test_chain can be whatever name you would like it to be. This simple command will create a permissioned, smart contract enabled blockchain suitable for testing.
To check that your chain is running type:
eris chains ls
Stop and remove your chain:
eris chains stop -rxf test_chain
Obviously, you will want an ability to make chains which you properly parameterize. As such you can always type:
eris chains new --help
To see the various ways which you can give to chains new for it to be instantiated properly.
Eris does not only work with permissioned smart contract networks. It works just as well with existing blockchains. Want to run bitcoin?
eris services start btcd
Want to run ethereum?
eris services start eth
That’s it. Your chain is rolled!
Step 3: Build (and run) your Distributed Application
Let’s remove all of the eris “stuff” before we move on to the next portion of the tutorials:
Now you’re ready to build and run your distributed application!
There are a lot of ways you can go from here!
To continue this getting started tour please see our next tutorial in this series on Making Your Own Permissioned Chain.
Please go here if you are interested in learning about smart contracts.
Please go here if you are interested in learning more about blockchains.