celestia

Celestia Docker 노드 가이드

4분 읽기 · docker

list목차(6)

Celestia Docker 노드 가이드

Celestia는 공식 Docker 이미지를 제공합니다. Light Node는 Docker가 적합하고, Bridge/Validator는 호스트 설치를 권장합니다.

Light Node (Mainnet)

Light Node는 데이터 가용성 샘플링만 수행하므로 가볍습니다. 대부분 사용자 요구가 여기에 해당합니다.

# 데이터 디렉토리
sudo mkdir -p /data/celestia-light
sudo chown -R 10001:10001 /data/celestia-light

# 초기화
docker run --rm -v /data/celestia-light:/home/celestia \
  ghcr.io/celestiaorg/celestia-node:v0.19.1-mocha \
  celestia light init --p2p.network celestia

# 실행
docker run -d --name celestia-light --restart unless-stopped \
  -p 2121:2121 -p 26658:26658 \
  -v /data/celestia-light:/home/celestia \
  ghcr.io/celestiaorg/celestia-node:v0.19.1-mocha \
  celestia light start --p2p.network celestia \
  --core.ip consensus-full.celestia.org \
  --rpc.addr 0.0.0.0
  • 26658: RPC (JSON-RPC 2.0)
  • 2121: libp2p

Bridge Node

Bridge Node는 Consensus 네트워크와 DA 네트워크를 연결합니다. celestia-app이 이미 존재해야 합니다.

docker run --rm -v /data/celestia-bridge:/home/celestia \
  ghcr.io/celestiaorg/celestia-node:v0.19.1-mocha \
  celestia bridge init --p2p.network celestia

docker run -d --name celestia-bridge --restart unless-stopped \
  -p 2121:2121 -p 26658:26658 \
  -v /data/celestia-bridge:/home/celestia \
  ghcr.io/celestiaorg/celestia-node:v0.19.1-mocha \
  celestia bridge start --p2p.network celestia \
  --core.ip localhost   # 호스트의 celestia-app과 통신

Validator / Consensus Node (celestia-app)

Validator는 보통 호스트 설치를 권장하지만, Docker로도 실행 가능합니다.

docker run -d --name celestia-app --restart unless-stopped \
  -p 26656:26656 -p 26657:26657 -p 9090:9090 -p 1317:1317 \
  -v /data/celestia-app:/home/celestia/.celestia-app \
  ghcr.io/celestiaorg/celestia-app:v3.3.2 \
  celestia-appd start \
    --home /home/celestia/.celestia-app \
    --grpc.address 0.0.0.0:9090

Genesis·State Sync 설정은 localhost/README.md 참고.

상태 확인

# Light Node Auth 토큰
docker exec celestia-light celestia light auth admin --p2p.network celestia

# 샘플 RPC (Header 높이)
AUTH_TOKEN=$(docker exec celestia-light celestia light auth admin --p2p.network celestia)
curl -s -X POST http://localhost:26658 \
  -H "Authorization: Bearer $AUTH_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"header.LocalHead","params":[]}' | jq

네트워크 간 전환

--p2p.network 플래그만 변경합니다.

  • celestia — Mainnet Beta
  • mocha — Testnet (Mocha-4)
  • arabica — Devnet (Arabica-11)

참고

celestia 다른 챕터