Skip to content
Snippets Groups Projects
README.md 1.44 KiB
Newer Older
Hans Moog's avatar
Hans Moog committed
# goshimmer
capossele's avatar
capossele committed

## Run Shimmer

First, you need to [install Go](https://golang.org/doc/install) if it is not already installed on your machine. It is recommended that you use the most recent version of Go.

### Requirements

capossele's avatar
capossele committed
- gcc: Some packages in this repo might require to be compiled by gcc. Windows users can install [MinGW-gcc](http://tdm-gcc.tdragon.net/download). 
capossele's avatar
capossele committed
## Build

capossele's avatar
capossele committed
If you need to develop locally and be able to build by using your local code, i.e., without waiting for pushing your commits on the repo, clone the repository directly inside the `src/github.com/iotaledger/` folder of your `$GOPATH` with the command:
capossele's avatar
capossele committed

```
git clone git@github.com:iotaledger/goshimmer.git
```

or if you prefer https over ssh

```
git clone https://github.com/iotaledger/goshimmer.git
```

You can build your executable (as well as cross compiling for other architectures) by running the `go build` tool inside the just cloned folder `goshimmer`:

```
go build -o shimmer
```
You can then run by:

```
./shimmer
```

## Docker

To run Shimmer on docker, you must first build the image with
```
docker build -t iotaledger/goshimmer .
```
and then run it with
```
docker run --rm -it -v target/mainnetdb:/root/mainnetdb iotaledger/goshimmer
```
You may replace `target/mainnetdb` with a custom path to the database folder.

To start Shimmer in the background, you can also simply use [Docker Compose](https://docs.docker.com/compose/) by running
```
docker-compose up -d
```