4 [![Build Status](https://travis-ci.org/Bytom/vapor.svg)](https://travis-ci.org/Bytom/vapor) [![AGPL v3](https://img.shields.io/badge/license-AGPL%20v3-brightgreen.svg)](./LICENSE)
6 **Golang implemented sidechain for Bytom.**
10 - [Go](https://golang.org/doc/install) version 1.11 or higher, with `$GOPATH` set to your preferred directory
15 $ git clone https://github.com/Bytom/vapor.git $GOPATH/src/github.com/vapor
18 Then, you have two ways to get vapor executable file:
20 1. compile source code
21 2. build it using Docker
26 $ cd $GOPATH/src/github.com/vapor
32 Firstly, you need initialize node:
35 $ vapord init --chain_id=vapor --home <vapor-data-path>
38 For example, you can store vapor data in `$HOME/bytom/vapor`:
41 $ vapord init --chain_id=vapor --home $HOME/bytom/vapor
44 Then, start your node:
47 $ vapord node --home <vapor-data-path>
55 $ cd $GOPATH/src/github.com/vapor
56 $ docker build -t vapor .
59 ### Enter the iterative mode
62 $ docker run -it --net=host -v <vapor/data/directory/on/host/machine>:/root/.vapor vapor:latest
65 vapor data directory has three config files:
71 Use `exit` to exit Docker's iterative mode.
78 $ docker run -d --net=host -v <vapor/data/directory/on/host/machine>:/root/.vapor vapor:latest vapord node --web.closed --auth.disable
81 To list the running containners and check their container id, image, corresponding command, created time, status, name and ports being used:
93 To execute a command inside a containner, for example:
96 $ docker exec -it <containerId> vaporcli create-access-token <tokenId>
99 To stop a running containner:
102 $ docker stop <containerId>
105 To remove a containner:
108 $ docker rm <containerId>