1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ikaiguang-docker-ethereum

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
readme.md

docker-ethereum

Версия docker

docker version
  • Версия клиента: 18.06.1-ce
  • Версия сервера: 18.06.1-ce

Версия ethereum

docker run --rm -it ethereum/client-go version

Version: 1.8.18-unstable

Рабочий каталог

Я использую программирование на Golang, поэтому:

Каталог установлен в $GOPATH/src/github.com/ikaiguang/docker-ethereum Вы можете настроить рабочий каталог по своему усмотрению.

cd path/to/your_path
git clone https://github.com/ikaiguang/docker-ethereum.git
# work path
cd path/to/your_path/docker-ethereum

Сеть docker

docker network create --subnet 172.200.0.0/16 ethereum-node

Отдельный узел

# docker 网路
docker network create --subnet 172.200.0.0/16 ethereum-node

# 工作目录
cd $GOPATH/src/github.com/ikaiguang/docker-ethereum

# 节点目录
cd alone_node

# 启动
docker run -itd --restart=always \
    --name ethereum-node \
    --network ethereum-node --ip 172.200.0.30 \
    -v $(pwd)/ethereum_conf:/ethereum_conf \
    -v $(pwd)/ethereum_data:/ethereum_data \
    -p "58545:18545" \
    -p "58546:18546" \
    -p "50303:10303" \
    ethereum/client-go \
    --datadir "/ethereum_data" \
    --identity "node1" \
    --nodiscover \
    --dev --dev.period 1 \
    --networkid 147852369 \
    --ipcdisable \
    --rpcport 18545 \
    --wsport 18546 \
    --port 10303 \
    --verbosity 6 \
    --rpc --rpcaddr "0.0.0.0" \
    --rpccorsdomain "*" \
    --rpcapi "eth,net,web3,rpc,admin,personal,clique,debug,miner,shh,txpool" \
    console

# Автоматический майнинг: --dev --dev.period 1
# Ограничение rpc api опций: --rpcapi "db,eth,net,web3,personal,admin"
# modules: admin:1.0 clique:1.0 debug:1.0 eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 shh:1.0 txpool:1.0 web3:1.0

Прочее


# log
docker logs -f ethereum-node

# exec
docker exec -it ethereum-node /bin/sh

# restart
docker restart ethereum-node

# remove
docker rm -f ethereum-node

Операции с узлом


# Подключение к узлу

# В контейнере docker
geth attach http://127.0.0.1:18545

# На хост-машине
geth attach http://127.0.0.1:58545

# Другие примеры подключения
# geth attach ipc:<datadir>/geth.ipc
# geth attach ws://191.168.1.1:18546

# Идентификатор узла
admin.nodeInfo.enode

# Добавление узла
# admin.addPeer("enode://node_id@ip:port")
# (ifconfig); (ifconfig|grep netmask|awk '{print $2}'); (ip a)
admin.addPeer

# Информация об узле
net.listening
net.peerCount
admin.peers

# Аккаунт
eth.accounts

# Баланс
eth.getBalance

Кластер перед добавлением тестовых данных (можно пропустить)


# Рабочий путь
cd $GOPATH/src/github.com/ikaiguang/docker-ethereum/cluster_node1

# Создание аккаунта 1
docker run --rm -it \
    -v $(pwd)/ethereum_conf:/ethereum_conf \
    -v $(pwd)/ethereum_data:/ethereum_data \
    ethereum/client-go \
    --datadir "/ethereum_data" \
    account new

# Создание аккаунта 2
docker run --rm -it \
    -v $(pwd)/ethereum_conf:/ethereum_conf \
    -v $(pwd)/ethereum_data:/ethereum_data \
    ethereum/client-go \
    --datadir "/ethereum_data" \
    account new

# Изменение alloc адреса в файле genesis.json в каталоге ethereum_conf для всех узлов на созданные два адреса

90e440e8b7bb0ccc780b614c75956d475cef16a3
7c6262d1b3d8db591bafa71b716e44b5b298c669

Создание кластера из 3 узлов

  1. Сеть docker

# Сеть docker
docker network create --subnet 172.200.0.0/16 ethereum-node
  1. Запуск узла 1

# Рабочий путь
cd $GOPATH/src/github.com/ikaiguang/docker-ethereum/cluster_node1

# Инициализация genesis.json
docker run --rm -it \
    -v $(pwd)/ethereum_conf:/ethereum_conf \
    -v $(pwd)/ethereum_data:/ethereum_data \
    ethereum/client-go \
    --datadir "/ethereum_data" \
    init

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Эфириум, Эфириум-нод, докер-эфириум, учебник по Эфириуму, торговля на Эфириуме, майнинг на Эфириуме. Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/ikaiguang-docker-ethereum.git
git@api.gitlife.ru:oschina-mirror/ikaiguang-docker-ethereum.git
oschina-mirror
ikaiguang-docker-ethereum
ikaiguang-docker-ethereum
master