Запуск локального тестнета
Вы можете запустить локальный тестнет блокчейна Aptos. Эта локальная тестовая сеть не будет подключена к сети разработчиков Aptos. Она будет работать на вашем локальном компьютере независимо от других сетей Aptos. Вы можете использовать ее для тестирования и разработки.
Вы можете запустить локальный тестнет двумя способами:
Используя исходные файлы Aptos. Этот подход полезен для тестирования модификаций в кодовой базе Aptos-core или в Aptos Framework.
Используя Docker. Это особенно полезно для создания сервисов вдобавок к Aptos Blockchain или Aptos Framework, поскольку нет дополнительных затрат на сборку, а реестр сохраняется при перезапуске сети (по умолчанию).
Остальная часть этого документа описывает:
Как запустить локальный тестнет с одной валидирующей нодой, используя оба метода
Как запустить сервис Faucet и подключить его к вашему локальному тестнету
Использование исходных файлов Aptos
Создайте новое ответвление и клонируйте репозиторий Aptos.
Создайте ответвление репозитория Aptos Core, щелкнув Fork в правом верхнем углу данной страницы репозитория: https://github.com/aptos-labs/aptos-core.
Клонируйте ответвление.
git clone https://github.com/<YOUR-GITHUB-USERID>/aptos-core
2. Перейдите cd
в каталог aptos-core
.
cd aptos-core
3. Запустите bash-скрипт scripts/dev_setup.sh
, как показано ниже. Это подготовит вашу среду разработчика.
./scripts/dev_setup.sh
4. Обновите текущую оболочку среды.
source ~/.cargo/env
5. Теперь, когда ваша среда разработки готова, вы можете запустить тестнет. Прежде чем продолжить, обратите внимание на следующее:
После выполнения команды запуска локального тестнета, данной ниже, ваш терминал перейдет в интерактивный режим с возможностью завершения тестовой сети. Следовательно, вам нужно будет открыть другой терминал оболочки для последующих шагов, описанных в этом разделе.
После запуска приведенной ниже команды, вам нужно будет скопировать информацию
Config path
из вывода терминала для следующих шагов.
Чтобы запустить тестнет локально, выполните следующую команду:
CARGO_NET_GIT_FETCH_WITH_CLI=true cargo run -p aptos-node -- --test
Ниже приведен пример частичного вывода. Сделайте заметку о Config path
из выходных данных.
...
...
...
Completed generating configuration:
Log file: "/private/var/folders/gn/m74t8ylx55z935q8wx035qn80000gn/T/b3adc18c144bfcc78a1541953893bc1c/validator.log"
Config path: "/private/var/folders/gn/m74t8ylx55z935q8wx035qn80000gn/T/b3adc18c144bfcc78a1541953893bc1c/0/node.yaml"
Aptos root key path: "/private/var/folders/gn/m74t8ylx55z935q8wx035qn80000gn/T/b3adc18c144bfcc78a1541953893bc1c/mint.key"
Waypoint: 0:47e676b5fe38ebe2aec6053db7b3daa0b805693d6422e3475e46e89499464ecf
ChainId: TESTING
REST API endpoint: 0.0.0.0:8080
FullNode network: /ip4/0.0.0.0/tcp/7180
Aptos is running, press ctrl-c to exit
ПРИМЕЧАНИЕ: Приведенная выше команда запускает локальный тестнет с одной валидирующей нодой. Команда запускает aptos-node
только из реестра в состоянии генезиса. Если вы хотите повторно использовать состояние реестра, созданное предыдущим запуском aptos-node
, используйте:
cargo run -p aptos-node -- --test --config <config-path>
Подключение Faucet к тестнету
Faucets — это сервисы без сохранения состояния, которые можно запускать параллельно с тестнетом. Faucet — это способ создания тестовых монет Aptos, не имеющих реальной стоимости. Вы можете использовать Faucet, отправив запрос на создание монет и перевод их на указанный счет от вашего имени.
Убедитесь, что вы запустили локальный тестнет, как это описано в Шаге 5 выше.
Откройте новый терминал оболочки.
Скопируйте путь к корневому ключу Aptos со своего терминала, где вы запустили тестовую сеть, и используйте его для замены
mint-key-file-path
в приведенной ниже команде.Выполните следующую команду, чтобы запустить Faucet:
cargo run --package aptos-faucet -- \
--chain-id TESTING \
--mint-key-file-path "/tmp/694173aa3bbe019499bbd5cf3fe0e2fc/mint.key" \
--address 0.0.0.0 \
--port 8000 \
--server-url http://127.0.0.1:8080
Это запустит Faucet, работающий локально, без каких-либо ограничений на токены, которые можно запрашивать и создавать. Сервис Faucet будет так же доступен, как и тестнет, который вы запустили ранее.
Использование Docker
В этом разделе описывается, как начать локальное тестирование с помощью Docker.
Установите Docker , включая Docker-Compose.
Создайте каталог для локальной сети тестового валидатора и перейдите в него
cd
.Загрузите файлы настройки YAML для:
4. Запустите Docker Compose, запустив команду:
docker-compose up
Пример
Последовательность команд для вышеуказанных Шагов со 2 по 4 показана ниже:
mkdir aptos_local_validator && cd aptos_local_validator
wget https://raw.githubusercontent.com/aptos-labs/aptos-core/main/docker/compose/validator-testnet/docker-compose.yaml
wget https://raw.githubusercontent.com/aptos-labs/aptos-core/main/docker/compose/validator-testnet/validator_node_template.yaml
docker-compose up
Это запустит и валидирующую ноду и Faucet сервис.
Конечная точка REST валидатора будет доступна на
http://127.0.0.1:8080
Faucet доступен на
http://127.0.0.1:8000
Устранение ошибок
Поскольку программное обеспечение еще находится на ранних стадиях разработки, возможны критические изменения. Если программное обеспечение не запускается, выполните следующие действия:
Сначала запросите в Docker контейнеры и тома с помощью
docker container ls -a
anddocker volume ls
.Затем удалите их, используя
docker container rm $id
anddocker volume rm $name
.Альтернативно вы можете начать с нуля, очистив локальное docker-состояние, выполнив следующую команду:
docker stop $(docker ps -a -q) && docker rm $(docker ps -a -q) && docker rmi $(docker images -q) && docker volume rm $(docker volume ls -q)
Взаимодействие с локальным тестнетом
После запуска локального тестнета, вы увидите следующее:
Entering test mode, this should never be used in production!
Completed generating configuration:
Log file: "/tmp/694173aa3bbe019499bbd5cf3fe0e2fc/validator.log"
Config path: "/tmp/694173aa3bbe019499bbd5cf3fe0e2fc/0/node.yaml"
Aptos root key path: "/tmp/694173aa3bbe019499bbd5cf3fe0e2fc/mint.key"
Waypoint: 0:197bc8b76761622c2d2054d8bf93c1802fa0eb4bc55f0f3d4442878fdecc297f
ChainId: TESTING
REST API endpoint: 0.0.0.0:8080
FullNode network: /ip4/0.0.0.0/tcp/7180
Aptos is running, press ctrl-c to exit
Используйте Aptos CLI tool для взаимодействия с локальным тестнетом. Приведенный выше результат выполнения содержит информацию, которую вы будете использовать для запуска Aptos CLI tool.
Aptos root key path
: корневой ключ (известный также как mint или faucet key) контролирует аккаунт, который может чеканить токены. Доступен в папке docker compose с именемaptos_root_key
.Waypoint
: поддающаяся проверке контрольная точка блокчейна (доступна в папке docker compose с именем waypoint.txt)REST endpoint
: конечная точка для REST сервиса, например:http://127.0.0.1:8080
ChainId
: ID цепи однозначно отличает эту сеть от других сетей блокчейна
Следующие шаги
На этом этапе у вас будет специальный корневой аккаунт 0x1
, который может выполнять операцию чеканки. Дальнейшая работа:
Ваша первая транзакция, чтобы научиться отправлять транзакции
Ваш первый модуль Move, чтобы научиться создавать модули Move
Взаимодействие с блокчейном Aptos, чтобы узнать, как чеканить монеты
Last updated