2.3 KiB
Urbit Ship Hosting
Requirements and best practices for hosting Urbit ships as part of Zenith network participation.
Overview
Participation in the Zenith network requires hosting self-hosted Urbit ships for different roles. This page covers the infrastructure requirements, hosting options, and operational considerations for running Urbit ships as part of Zenith ecosystem participation.
Role-Based Requirements
Galaxy Operators
Galaxy operators must host the galaxy ship corresponding to their attested galaxy point and a star ship owned by the same Zenith account and sponsored by their galaxy. Both ships must be accessible and operational for network participation.
Star Operators
Star operators must host the Urbit ship for their attested star point while maintaining connectivity to sponsored planets and the sponsoring galaxy. High availability is essential for transaction aggregation services.
Planet Users
Planet users host their planet ship with the #zenith-desk installed, maintaining connection to their sponsoring star and ensuring their ship can access Zenith-enabled applications.
Operational Procedures
General Hosting Guidelines
Star and Galaxy hosting can be done by following the official Urbit documentation at docs.urbit.org/user-manual/running, with a few caveats for Galaxies (e.g., the port must be their point number plus some constant).
Ship Setup and Zenith Configuration
# Download and install Urbit
curl -L https://urbit.org/install-linux | bash
# Boot ship with pier directory
./urbit -w <ship-name> -k <keyfile>
Once your ship is running, install the zenith-desk from the dojo:
|install ~sampel-palnet %zenith-desk
Configure zenith-desk with the network parameters:
:zenith &config-chain-id 'zenith-stage1'
:zenith &config-janus-endpoint 'http://34.169.229.181:8090'
:zenith &config-http-api ['api.zenithd.zenith-test.tlon.systems' '1317']
:zenith &config-rpc ['api.zenithd.zenith-test.tlon.systems' '26657']
Manage accounts and tokens:
# Add account with private key
:zenith &add-account ['my-ship-name' 0x500e.49.....]
# Query zenith addresses
:zenith &zenith-address [our]
:zenith &zenith-address [~fus]
# Check balances
:zenith &balances-by-ship ~fipfus
# Send tokens
:zenith &send-to-ship ['my-ship-name' ~harrus 100 '$sZ']