Table of Contents
Childchain is a server application written in Elixir, it collects valid transactions that move funds on the child chain, submits child chain block hashes to the root chain contract and publishes child chain block's contents.
The quickest way to get Childchain Server running is to use Docker-Compose.
- Install Docker and Docker-Compose.
- Clone the Childchain repo:
git clone https://github.com/omgnetwork/childchain.git && cd childchain
In order to avoid possible port conflicts, make sure that the following TCP
ports are available:
9656
,8545
,8546
,443
,7434
,7534
,5432
,4000
,8555
,8556
All commands should be run from the root of the repo folder.
-
To get the necessary dependencies to build the project:
make deps
- To bring the entire system up, you will first need to bring in the compatible
geth
snapshot of plasma contracts:
make init_test
- To start the server:
docker-compose up
- To start the server with only specific services up (eg: the childchain service, geth, etc...):
docker-compose up childchain geth ...
(Note: This will also bring up any services childchain depends on.)
If service start up is unsuccessful, containers can be left hanging, which impacts the start of services on the future attempts of docker-compose up
.
- View all running containers:
docker ps
- Stop all running containers:
docker kill $(docker ps -q)
All documentations can be found in the docs directory. It is recommended to take a look at the documentation.
The Childchain Server is licensed under the Apache License.