Развертывание Solana RPC-ноды и подключение к контракту

Установка Solana CLI и запуск локальной ноды

1. Запуск RPC-ноды Solana

Чтобы развернуть Solana RPC-ноду, можно воспользоваться локальным узлом или использовать облачные сервисы, например QuickNode, Alchemy или Helius.

Установка Solana CLI и запуск локальной ноды

# Установите Solana CLI, если не установлен
sh -c "$(curl -sSfL https://release.solana.com/stable/install)"

# Запустите локальную ноду
solana-test-validator

Если требуется основная сеть, настройте RPC следующим образом:

solana config set --url https://api.mainnet-beta.solana.com

Если используется Devnet:

solana config set --url https://api.devnet.solana.com

2. Компиляция и развертывание контракта

# Установите Anchor, если он не установлен
cargo install --git https://github.com/coral-xyz/anchor avm --locked --force

# Создайте новый проект Anchor
anchor init rentumai_staking

# Перейдите в каталог проекта
cd rentumai_staking

# Скомпилируйте контракт
anchor build

# Разверните контракт в Devnet
anchor deploy

3. Получение публичного адреса контракта

После развертывания Anchor выдаст адрес программы, например:

Program Id: 9HhvqA...pXr

4. Подключение RPC-ноды к смарт-контракту

Обновите конфигурацию Anchor в Anchor.toml:

[provider]
cluster = "https://api.devnet.solana.com"
wallet = "~/.config/solana/id.json"

5. Взаимодействие с контрактом через Solana Web3.js

Для связи с контрактом в Node.js:

const { Connection, PublicKey } = require('@solana/web3.js');

const connection = new Connection('https://api.devnet.solana.com', 'confirmed');
const programId = new PublicKey('9HhvqA...pXr');

(async () => {
    const accountInfo = await connection.getAccountInfo(programId);
    console.log('Program Info:', accountInfo);
})();

Теперь ваша RPC-нода связана с контрактом, и вы можете отправлять транзакции и получать данные.

Last updated