Существует множество способов участия в сети Celestia.
Операторы нод Celestia могут запускаться в сети различным образом:
- В качестве бридж-ноды (эта нода соединяет сеть доступности данных и сеть консенсуса)
- В качестве валидатор-ноды (операторы, управляющие бридж-нодами, имеют возможность также участвовать в консенсусе, став валидатором)
- В качестве лайт-клиента (проводят сэмплирование доступности данных в сети Data Availability)
Вы можете узнать больше о том, как настроить каждую из нод, изучив это руководство.
О бридж-нодах и валидатор-нодах написано в рамках одного и того же раздела. Лайт-клиентам посвящен свой собственный раздел.
Пожалуйста, оставляйте свои отзывы об этих туториалах и гайдах. Если вы заметили какую-то ошибку или проблему, не стесняйтесь сделать Pull Request или написать Github Issue ticket!
В этом гайде мы рассмотрим настройку бридж-ноды Celestia.
Бридж-ноды соединяют уровень доступности данных и уровень консенсуса, а также имеют возможность стать валидатором сети.
Если вы читаете это руководство для того, чтобы настроить валидатор в сети Celestia, следуйте по всем разделам, пока не дойдете до руководства по настройке валидатора. Если вы хотите запустить только бридж-ноду, вам не нужно выполнять шаги по настройке валидатора в конце.
Бридж-нода Celestia обладает следующими свойствами:
- Импорт и обработка "сырых" заголовков и блоков из надежного Core-процесса (имеется в виду доверенное RPC-соединение с узлом celestia-core) в сети Consensus. Бридж-ноды могут выполнять этот процесс Core самостоятельно (встроенным образом) или просто подключаться к удаленному эндпоинту (конечной точке). Бридж-ноды также могут быть активными валидаторами в консенсус-сети
- Валидирование и стирание кода [erasure code] «сырых» блоков
- Передача лайт-нодам частей блоков вместе с заголовками доступности данных
Бридж-ноды, с точки зрения имплементации, выполняют два отдельных процесса:
- Celestia App с Celestia Core (см. репозитарий)
- Celestia App – это конечный автомат (state machine), в котором выполняется логика приложения и proof-of-stake. Celestia App построена на Cosmos SDK, а также включает в себя Celestia Core.
- Celestia Core – это уровень взаимодействия состояний, консенсуса и производства блоков. Celestia Core построено на основе Tendermint Core, модифицированного для хранения корней данных блоков со стирающим кодом, а также других изменений (см. ADRs).
- Celestia Node (см. репозиторий)
- Celestia Node дополняет вышеперечисленное отдельной libp2p сетью, которая обслуживает запросы на сэмплирование доступности данных. Команда иногда называет эту сеть "halo".
Для работы бридж-ноды рекомендуются следующие минимальные требования к аппаратному обеспечению:
- Оперативная память: 8 GB RAM
- CPU: 4 ядра
- Жесткий диск: 250 GB SSD Storage
- Пропускная способность: 1 Gbps на скачивание/100 Mbps на загрузку
Этот гайд был написан на примере сервера с ОС Ubuntu Linux 20.04 (LTS) x64.
После того, как вы настроили свой сервер, подключитесь к нему по ssh, чтобы начать настройку вместе со всеми необходимыми зависимостями для работы бридж-ноды.
Во-первых, обязательно обновите ОС:
sudo apt update && sudo apt upgrade -y
Эта команда установит важные пакеты, которые необходимы для выполнения многих задач, таких как загрузка файлов, компиляция и мониторинг ноды:
sudo apt install curl tar wget clang pkg-config libssl-dev jq build-essential \
git make ncdu -y
Установим Golang на этой машине для того, чтобы мы могли собрать необходимые бинарные файлы для работы бридж-ноды. В частности, Golang необходим для компиляции Celestia Application.
ver="1.17.2"
cd $HOME
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
Теперь нам нужно добавить каталог /usr/local/go/bin
в $PATH
:
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
Чтобы проверить корректность установки Go, выполните команду:
go version
В выводе должна быть появится установленная версия:
go version go1.17.2 linux/amd64
В этом разделе описана часть 1 настройки бридж-ноды Celestia: запуск демона Celestia App с внутренним узлом Celestia Core.
Примечание: Убедитесь, что у вас есть не менее 100+ Гб свободного места для безопасной установки и запуска бридж-ноды.
Следующие шаги создадут бинарный файл с именем celestia-appd
в папке $HOME/go/bin
, который будет использоваться позже для запуска ноды.
cd $HOME
rm -rf celestia-app
git clone https://github.com/celestiaorg/celestia-app.git
cd celestia-app/
git checkout tags/v0.1.0 -b v0.1.0
make install
Чтобы проверить, успешно ли скомпилирован бинарный файл, вы можете запустить его, используя флаг --help
:
celestia-appd --help
Вы должны увидеть примерно такой вывод (с полезными примерами команд):
Stargate CosmosHub App
Usage:
celestia-appd [command]
Use "celestia-appd [command] --help" for more information about a command.
Теперь мы настроим P2P-сети путем клонирования репозитория:
cd $HOME
rm -rf networks
git clone https://github.com/celestiaorg/networks.git
Для инициализации сети выберите "node-name", которое характеризует вашу ноду. Параметр --chain-id, который мы используем здесь, - devnet-2
. Имейте в виду, что он может измениться, если будет развернута новая тестовая сеть.
celestia-appd init "node-name" --chain-id devnet-2
Скопируйте файл genesis.json
. Для devnet-2 мы используем:
cp $HOME/networks/devnet-2/genesis.json $HOME/.celestia-app/config
Установите сиды и пиров:
SEEDS="74c0c793db07edd9b9ec17b076cea1a02dca511f@46.101.28.34:26656"
PEERS="34d4bfec8998a8fac6393a14c5ae151cf6a5762f@194.163.191.41:26656"
sed -i.bak -e "s/^seeds *=.*/seeds = \"$SEEDS\"/; s/^persistent_peers \
*=.*/persistent_peers = \"$PEERS\"/" $HOME/.celestia-app/config/config.toml
Для меньшего использования дискового пространства мы рекомендуем настроить прунинг с помощью приведенных ниже конфигураций. При желании вы можете изменить их на свои собственные конфигурации:
pruning="custom"
pruning_keep_recent="100"
pruning_keep_every="5000"
pruning_interval="10"
sed -i -e "s/^pruning *=.*/pruning = \"$pruning\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-keep-recent *=.*/pruning-keep-recent = \
\"$pruning_keep_recent\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-keep-every *=.*/pruning-keep-every = \
\"$pruning_keep_every\"/" $HOME/.celestia-app/config/app.toml
sed -i -e "s/^pruning-interval *=.*/pruning-interval = \
\"$pruning_interval\"/" $HOME/.celestia-app/config/app.toml
Это приведет к удалению всех папок с данными, и мы сможем начать все с чистого листа:
celestia-appd unsafe-reset-all
Синхронизация с Genesis может занять много времени, в зависимости от вашего оборудования. Используя этот метод, вы можете синхронизировать свою ноду Celestia очень быстро, загрузив свежий снимок блокчейна. Если вы хотите синхронизироваться с Genesis, то можете пропустить эту часть.
cd $HOME
rm -rf ~/.celestia-app/data; \
mkdir -p ~/.celestia-app/data;
SNAP_NAME=$(curl -s https://snaps.qubelabs.io/celestia/ | \
egrep -o ">devnet-2.*tar" | tr -d ">"); wget -O - \
https://snaps.qubelabs.io/celestia/${SNAP_NAME} | tar xf - \
-C ~/.celestia-app/data/
SystemD - это служба-демон, удобная для запуска приложений в качестве фоновых процессов.
Создайте системный файл Celestia-App:
sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-appd.service
[Unit]
Description=celestia-appd Cosmos daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$HOME/go/bin/celestia-appd start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF
Если файл был создан успешно, вы сможете увидеть его содержимое:
cat /etc/systemd/system/celestia-appd.service
Теперь загрузите адресную книгу. Есть 2 разных способа:
wget -O $HOME/.celestia-app/config/addrbook.json "https://raw.githubusercontent.com/maxzonder/celestia/main/addrbook.json"
ИЛИ
wget -O $HOME/.celestia-app/config/addrbook.json "https://raw.githubusercontent.com/qubelabsio/celestia/main/addrbook.json"
Включите и запустите демон celestia-appd:
sudo systemctl enable celestia-appd
sudo systemctl start celestia-appd
Проверьте, правильно ли запущен демон:
sudo systemctl status celestia-appd
Проверьте логи демона в режиме реального времени:
sudo journalctl -u celestia-appd.service -f
Проверьте, синхронизирована ли ваша нода, прежде чем двигаться дальше:
curl -s localhost:26657/status | jq .result | jq .sync_info
Убедитесь, что параметр "catching_up": false
, иначе оставьте процесс запущенным, пока он не будет синхронизирован.
Создайте кошелек
Вы можете выбрать любое название для своего кошелька. В нашем примере мы использовали "validator" в качестве имени кошелька:
celestia-appd keys add validator
Сохраните мнемоник (сид-фразу), так как это единственный способ восстановить кошелек валидатора в случае его потери!
Пополните кошелек
Вы можете пополнить созданный кошелек через Discord, отправив это сообщение в канале #faucet:
!faucet celes1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Дождитесь подтверждения об успешной отправке токенов. Чтобы проверить, успешно ли токены прибыли на кошелек получателя, выполните приведенную ниже команду, заменив публичный адрес на свой собственный:
celestia-appd q bank balances celes1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Если вы хотите заделегировать больше стейка любому из валидаторов, включая свой собственный, вам понадобится celesvaloper
адрес данного валидатора. Вы можете либо проверить его с помощью вышеупомянутого блок-эксплорера, либо выполнить приведенную ниже команду, чтобы получить celesvaloper
адрес вашего локального кошелька валидатора на случай, если вы захотите заделегировать ему больше токенов:
celestia-appd keys show $VALIDATOR_WALLET --bech val -a
После ввода кодовой фразы (passphrase) для вашего кошелька вы должны увидеть аналогичный результат:
Enter keyring passphrase:
celesvaloper1q3v5cugc8cdpud87u4zwy0a74uxkk6u43cv6hd
Чтобы заделигировать токены валидатору celesvaloper
, например, вы можете выполнить:
celestia-appd tx staking delegate \
celesvaloper1q3v5cugc8cdpud87u4zwy0a74uxkk6u43cv6hd 1000000celes \
--from=$VALIDATOR_WALLET --chain-id=devnet-2
Если все прошло успешно, вы должны видеть примерно такой вывод:
code: 0
codespace: ""
data: ""
gas_used: "0"
gas_wanted: "0"
height: "0"
info: ""
logs: []
raw_log: '[]'
timestamp: ""
tx: null
txhash: <tx-hash>
Вы можете убедится, прошел ли хэш TX, используя блок-эскплорер, введя идентификатор txhash
, который появился ранее.
В этом разделе описана вторая часть настройки бридж-ноды Celestia: запуск демона Celestia Node.
Установите бинарный файл Celestia Node, который будет использоваться для запуска бридж-ноды.
cd $HOME
rm -rf celestia-node
git clone https://github.com/celestiaorg/celestia-node.git
cd celestia-node/
git checkout tags/v0.2.0 -b v0.2.0
make install
Убедитесь, что бинарный файл работает, и проверьте версию с помощью команды celestia version
:
$ celestia version
Semantic version: v0.2.0
Commit: 1fcf0c0bb5d5a4e18b51cf12440ce86a84cf7a72
Build Date: Fri 04 Mar 2022 01:15:07 AM CET
System version: amd64/linux
Golang version: go1.17.5
Предостережение: Для продолжения этого руководства вам понадобится запущенная celestia-app. Пожалуйста, обратитесь к celestia-app.md для установки.
Вам необходимо иметь проверенный сервер для инициализации бридж-ноды. Вы можете использовать http://localhost:26657
для локального запуска celestia-app
. Доверенный хэш является необязательным флагом и необязательно должен использоваться. Если вы не передаете его, бридж-нода будет просто синхронизироваться с самого начала, что также является предпочтительным вариантом запуска.
Пример запроса к локальному приложению celestia-app для получения доверенного хэша:
curl -s http://localhost:26657/block?height=1 | grep -A1 block_id | grep hash
celestia bridge init --core.remote <ip:port of celestia-app>
Если вы все равно хотите использовать доверенный хэш, вот как его инициализировать:
celestia bridge init --core.remote <ip:port of celestia-app> \
--headers.trusted-hash <hash_from_celestia_app>
Например:
celestia bridge init --core.remote tcp://127.0.0.1:26657 --headers.trusted-hash 4632277C441CA6155C4374AC56048CF4CFE3CBB2476E07A548644435980D5E17
Для того, чтобы ваша бридж-нода Celestia могла взаимодействовать с другими бридж-нодами, необходимо добавить их в качестве взаимных пиров (mutual peers)
в файл config.toml
и разрешить обмен пирами. Пожалуйста, перейдите по адресу networks/devnet-2/celestia-node/mutual_peers.txt
, чтобы найти список взаимных пиров.
Для получения более подробной информации о config.toml
, пожалуйста, перейдите по этой ссылке.
nano ~/.celestia-bridge/config.toml
...
[P2P]
...
#add multiaddresses of other celestia bridge nodes
MutualPeers = [
"/ip4/46.101.22.123/tcp/2121/p2p/12D3KooWD5wCBJXKQuDjhXFjTFMrZoysGVLtVht5hMoVbSLCbV22",
"/ip4/x.x.x.x/tcp/yyy/p2p/abc"]
# the /ip4/x.x.x.x is only for example.
# Don't add it!
PeerExchange = true #change this line to true. By default it's false
...
...
SystemD - это служба-демон, удобная для запуска приложений в качестве фоновых процессов.
Создайте systemd файл Celestia Bridge:
sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-bridge.service
[Unit]
Description=celestia-bridge Cosmos daemon
After=network-online.target
[Service]
User=$USER
ExecStart=$HOME/go/bin/celestia bridge start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF
Если файл был создан успешно, вы сможете увидеть его содержимое:
cat /etc/systemd/system/celestia-bridge.service
Включите и запустите демон celestia-bridge:
sudo systemctl enable celestia-bridge
sudo systemctl start celestia-bridge && sudo journalctl -u \
celestia-bridge.service -f
Теперь бридж-нода Celestia начнет синхронизировать заголовки и хранить блоки из приложения Celestia.
Примечание: При запуске мы можем увидеть мультиадрес бридж-ноды Celestia. Это необходимо для будущих подключений лайт-ноды и связи между бридж-нодами Celestia.
Например:
/ip4/46.101.22.123/tcp/2121/p2p/12D3KooWD5wCBJXKQuDjhXFjTFMrZoysGVLtVht5hMoVbSLCbV22
Вы должны видеть логи того, как бридж-нода синхронизируется. Вы успешно настроили бридж-ноду, которая синхронизируется с сетью. Читайте дальше, если вас интересует настройка валидатор-ноды.
По желанию, если вы хотите присоединиться к списку активных валидаторов, вы можете создать своего собственного валидатора, следуя инструкциям ниже. Помните, что эти шаги необходимы ТОЛЬКО в том случае, если вы хотите участвовать в консенсусе.
Выберите имя MONIKER по своему вкусу! Это имя валидатора, которое будет отображаться на публичных дэшбордах и в эксплорерах. VALIDATOR_WALLET
должен быть тем же самым, который вы определили ранее. Параметр --min-self-delegation=1000000
определяет количество токенов, которые будут самоделегироваться с вашего кошелька валидатора.
MONIKER="your_moniker"
VALIDATOR_WALLET="validator"
celestia-appd tx staking create-validator \
--amount=1000000celes \
--pubkey=$(celestia-appd tendermint show-validator) \
--moniker=$MONIKER \
--chain-id=devnet-2 \
--commission-rate=0.1 \
--commission-max-rate=0.2 \
--commission-max-change-rate=0.01 \
--min-self-delegation=1000000 \
--from=$VALIDATOR_WALLET
Вам будет предложено подтвердить транзакцию:
confirm transaction before signing and broadcasting [y/N]: y
При вводе y
должен появится примерно следующий результат:
code: 0
codespace: ""
data: ""
gas_used: "0"
gas_wanted: "0"
height: "0"
info: ""
logs: []
raw_log: '[]'
timestamp: ""
tx: null
txhash: <tx-hash>
Теперь вы сможете найти своего валидатора в блок-эсклорере. Например, здесь.
Это гайд по настройке лайт-ноды Celestia, которая сможет позволить вам выполнять сэмплирование данных в сети доступности данных (Data Availability, DA).
Лайт-ноды (Celestia Light Nodes, CLN) обеспечивают доступность данных. Это наиболее распространенный способ взаимодействия с сетью Celestia.
Примечание: В будущих имплементациях лайт-ноды смогут также публиковать транзакции (см. ADR), хотя в Devnet’e транзакциями занимаются бридж-ноды.
Лайт-ноды обладают следующими свойствами:
- Подключение к бридж-нодам в сети доступности данных (DA). Примечание: лайт-ноды не общаются друг с другом, а только с бридж-нодами.
- Получают ExtendedHeaders, т.е. обернутые "сырые" заголовки, которые уведомляют ноды Celestia о новых заголовках блоков и соответствующих метаданных DA.
- Выполняют сэмплирование доступности данных (Data Availability Sampling, DAS) над полученными заголовками.
Для работы лайт-ноды рекомендуются следующие минимальные требования к аппаратному обеспечению:
- Оперативная память: 2 GB RAM
- CPU: 1 ядро
- Жесткий диск: 5 GB SSD Storage
- Пропускная способность: 56 Kbps на скачивание/56 Kbps на загрузку
Этот гайд был написан на примере сервера с ОС Ubuntu Linux 20.04 (LTS) x64.
После того, как вы настроили свой сервер, подключитесь к нему по ssh, чтобы начать настройку вместе со всеми необходимыми зависимостями для работы лайт-ноды.
Во-первых, обязательно обновите ОС:
sudo apt update && sudo apt upgrade -y
Эта команда установит важные пакеты, которые необходимы для выполнения многих задач, таких как загрузка файлов, компиляция и мониторинг ноды:
sudo apt install curl tar wget clang pkg-config libssl-dev jq \
build-essential git make ncdu -y
Установим Golang на нашей машине для того, чтобы мы могли собрать необходимые бинарные файлы для работы лайт-ноды. В частности, Golang необходим для компиляции Celestia Light Node.
ver="1.17.2"
cd $HOME
wget "https://golang.org/dl/go$ver.linux-amd64.tar.gz"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "go$ver.linux-amd64.tar.gz"
rm "go$ver.linux-amd64.tar.gz"
Теперь нам нужно добавить каталог /usr/local/go/bin в $PATH:
echo "export PATH=$PATH:/usr/local/go/bin:$HOME/go/bin" >> $HOME/.bash_profile
source $HOME/.bash_profile
Чтобы проверить правильность установки Go, выполните команду:
go version
В выводе должна быть указана установленная версия:
go version go1.17.2 linux/amd64
Примечание: Убедитесь, что у вас есть не менее 5+ Гб свободного места для установки лайт-ноды Celestia.
Установите бинарный файл Celestia Node. Убедитесь, что у вас установлены git
и golang
.
git clone https://github.com/celestiaorg/celestia-node.git
cd celestia-node/
git checkout tags/v0.2.0 -b v0.2.0
make install
Если вы хотите подключиться к бридж-ноде Celestia и начать синхронизацию лайт-ноды Celestia с не-genesis хэша, то рассмотрите возможность редактирования файла
config.toml
.
Более подробную информацию о config.toml
можно найти здесь.
Инициализируйте лайт-ноду
Выполните следующую команду:
celestia light init
Запустите лайт-ноду
Запустите лайт-ноду в качестве процесса-демона в фоновом режиме.
sudo tee <<EOF >/dev/null /etc/systemd/system/celestia-lightd.service
[Unit]
Description=celestia-lightd Light Node
After=network-online.target
[Service]
User=$USER
ExecStart=$HOME/go/bin/celestia light start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
[Install]
WantedBy=multi-user.target
EOF
Если файл был создан успешно, вы сможете увидеть его содержимое:
cat /etc/systemd/system/celestia-lightd.service
Запустите демона
Включите и запустите демон celestia-lightd:
sudo systemctl enable celestia-lightd
sudo systemctl start celestia-lightd
Проверьте состояние демона
Проверьте, правильно ли запущен демон:
sudo systemctl status celestia-lightd
Проверьте логи
Проверяйте логи в режиме реального времени:
sudo journalctl -u celestia-lightd.service -f
Теперь лайт-нода Celestia начнет процесс синхронизации заголовков. После завершения синхронизации лайт-ноду выполнит сэмплирование доступности данных (DAS) с бридж-ноды.
Для продолжения, вам понадобятся:
- Лайт-нода Celestia, подключенная к бридж-ноде
- Кошелек Celestia
Откройте 2 окнатерминала, чтобы посмотреть на то, как работает сэмплирование доступности данных:
- В 1 окне терминала откройте журнал логов лайт-ноды
- В 2 окне терминала используйте CLI приложения Celestia для отправки в сеть платной транзакции payForMessage
Во-первых, вам нужен кошелек, чтобы оплатить транзакцию.
Вариант 1: Используйте кошелек Keplr, который имеет бета-поддержку Celestia.
Ознакомьтесь с эксплорером здесь
Вариант 2: Загрузите бинарный файл Celestia App, в котором есть CLI для создания кошельков.
В случае выбора 2 варианта проделайте следующие шаги:
Скачайте бинарный файл Celestia-App
Скачайте бинарный файл celestia-appd в папку $HOME/go/bin
, который будет использоваться для создания кошельков.
git clone https://github.com/celestiaorg/celestia-app.git
cd celestia-app/
git checkout tags/v0.1.0 -b v0.1.0
make install
Проверьте корректность комплияции бинарного файла
Чтобы проверить, корректно ли скомпилировался бинарный файл, вы можете запустить его, используя флаг --help
:
celestia-appd –help
Создайте кошелек
Создайте кошелек с любым произвольным именем кошелька, например mywallet:
celestia-appd keys add mywallet
Сохраните мнемоник (сид-фразу), так как это единственный способ восстановить кошелек валидатора в случае его потери!
Вы можете пополнить созданный кошелек через Discord, отправив это сообщение в канале #faucet:
!faucet celes1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Дождитесь подтверждения об успешной отправке токенов. Чтобы проверить, успешно ли токены прибыли на кошелек получателя, выполните приведенную ниже команду, заменив публичный адрес на свой собственный:
celestia-appd q bank balances celes1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Во втором окне терминала отправьте транзакцию payForMessage
с помощью celestia-appd
(или сделайте это в кошельке):
celestia-appd tx payment payForMessage <hex_namespace> <hex_message> \
--from <wallet_name> --keyring-backend <keyring-name> \
--chain-id <chain_name>
Например:
celestia-appd tx payment payForMessage 0102030405060708 \
68656c6c6f43656c6573746961444153 --from myWallet --keyring-backend test \
--chain-id devnet-2
В логах лайт-ноды вы должны будете увидеть, как работает сэмплирование доступности данных: Например:
INFO das das/daser.go:96 sampling successful {“height”: 81547, “hash”: \
“DE0B0EB63193FC34225BD55CCD3841C701BE841F29523C428CE3685F72246D94”, \
“square width”: 2, “finished (s)”: 0.000117466}
В этом разделе будет представлен обзор различных доступных ресурсов для разработчиков и операторов узлов (нод), желающих протестировать архитектуру Celestia.
Одним из ресурсов для ознакомления с инфраструктурой Docker Compose для Celestia является репозиторий ephemeral-cluster. Этот репозиторий предоставляет инфраструктуру для проведения интеграционных тестов для разработки путем запуска экземпляра Docker Compose в Celestia devnet. Его не рекомендуется использовать как таковой для запуска нод по отдельности.