Install Dependencies

sudo apt install -y git clang curl libssl-dev libudev-dev make protobuf-compiler

Open port

sudo ufw allow ssh; sudo ufw allow 30333

Download Binary

wget -O /usr/bin/tanssi-node https://github.com/moondance-labs/tanssi/releases/download/v0.5.0/tanssi-node && sudo chmod +x /usr/bin/tanssi-node

Create folder

mkdir ~/tanssi-data

Create a service

Change all INSERT_YOUR_TANSSI_NODE_NAME and INSERT_YOUR_TANSSI_NODE_NAME to your name

sudo tee /etc/systemd/system/tanssi.service > /dev/null << EOF
[Unit]
Description="Tanssi systemd service"
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
Restart=on-failure
RestartSec=10
User=tanssi_service
SyslogIdentifier=tanssi
SyslogFacility=local7
KillSignal=SIGHUP
ExecStart=$(which tanssi-node) \
--chain=dancebox \
--name=INSERT_YOUR_TANSSI_NODE_NAME \
--sync=warp \
--base-path=$HOME/tanssi-data/para \
--state-pruning=2000 \
--blocks-pruning=2000 \
--collator \
--telemetry-url='wss://telemetry.polkadot.io/submit/ 0' \
--database paritydb \
-- \
--name=tanssi-app \
--base-path=$HOME/tanssi-data/container \
--telemetry-url='wss://telemetry.polkadot.io/submit/ 0' \
-- \
--chain=westend_moonbase_relay_testnet \
--name=INSERT_YOUR_RELAY_NODE_NAME \
--sync=fast \
--base-path=$HOME/tanssi-data/relay \
--state-pruning=2000 \
--blocks-pruning=2000 \
--telemetry-url='wss://telemetry.polkadot.io/submit/ 0' \
--database paritydb \

[Install]
WantedBy=multi-user.target
EOF

Enable service

sudo systemctl daemon-reload
sudo systemctl enable tanssi
sudo systemctl start tanssi

Check the logs

sudo journalctl -u tanssi -f --no-hostname -o cat
  • Example Output:
2024-03-06 16:11:32 Parachain Collator Template
2024-03-06 16:11:32 ✌️  version 0.5.0-f4e4bd9c071
2024-03-06 16:11:32 ❤️  by Moondance Labs, 2020-2024
2024-03-06 16:11:32 📋 Chain specification: Dancebox
2024-03-06 16:11:32 🏷  Node name: Revonode
2024-03-06 16:11:32 👤 Role: AUTHORITY
2024-03-06 16:11:32 💾 Database: RocksDb at /app/testnet/tanssi/tanssi-data/para/chains/dancebox/db/full
2024-03-06 16:11:39 Parachain id: Id(3000)
2024-03-06 16:11:39 Parachain Account: 5Ec4AhPQ8esUzs1gsg6DiUp9q87vJgFNHhPmrXwYiU9FFR7H
2024-03-06 16:11:39 Parachain genesis state: 0x000000000000000000000000000000000000000000000000000000000000000000f620ad522fb217736764bceaa0156441d65a5297e65fa0c56e153730c7aadc4303170a2e7597b7b7e3d84c05391d139a62b157e78786d8c082f29dcf4c11131400
2024-03-06 16:11:39 Is collating: yes
2024-03-06 16:11:39 [Orchestrator] Large pruning window of 2000 detected! THIS CAN LEAD TO HIGH MEMORY USAGE AND CRASHES. Reduce the pruning window or switch your database to paritydb.
2024-03-06 16:11:39 [Orchestrator] 🔨 Initializing Genesis block/state (state: 0xf620…dc43, header-hash: 0x27aa…43ea)
2024-03-06 16:11:40 [Relaychain] Large pruning window of 2000 detected! THIS CAN LEAD TO HIGH MEMORY USAGE AND CRASHES. Reduce the pruning window or switch your database to paritydb.
2024-03-06 16:11:40 [Relaychain] 🔨 Initializing Genesis block/state (state: 0x96a6…9426, header-hash: 0xe1ea…9443)
2024-03-06 16:11:40 [Relaychain] 👴 Loading GRANDPA authority set from genesis on what appears to be first startup.
2024-03-06 16:11:40 [Relaychain] 👶 Creating empty BABE epoch changes on what appears to be first startup.
2024-03-06 16:11:40 [Relaychain] 🏷  Local node identity is: 12D3KooWDtFfqDKMJAZo1prgGLjRAqYhkymQ1TupsFS2x4fg4Qbq
2024-03-06 16:11:40 [Relaychain] 💻 Operating system: linux
2024-03-06 16:11:40 [Relaychain] 💻 CPU architecture: x86_64
2024-03-06 16:11:40 [Relaychain] 💻 Target environment: gnu
2024-03-06 16:11:40 [Relaychain] 💻 CPU: AMD Ryzen 5 3600 6-Core Processor
2024-03-06 16:11:40 [Relaychain] 💻 CPU cores: 6
2024-03-06 16:11:40 [Relaychain] 💻 Memory: 64260MB
2024-03-06 16:11:40 [Relaychain] 💻 Kernel: 5.15.0-25-generic
2024-03-06 16:11:40 [Relaychain] 💻 Linux distribution: Ubuntu 22.04 LTS
2024-03-06 16:11:40 [Relaychain] 💻 Virtual machine: no
2024-03-06 16:11:40 [Relaychain] 📦 Highest known block at #0
2024-03-06 16:11:40 [Relaychain] Running JSON-RPC server: addr=127.0.0.1:9952, allowed origins=["http://localhost:*", "http://127.0.0.1:*", "https://localhost:*", "https://127.0.0.1:*", "https://polkadot.js.org"]
2024-03-06 16:11:40 [Relaychain] 🏁 CPU score: 1.26 GiBs
2024-03-06 16:11:40 [Relaychain] 🏁 Memory score: 14.90 GiBs
2024-03-06 16:11:40 [Relaychain] 🏁 Disk score (seq. writes): 272.27 MiBs
2024-03-06 16:11:40 [Relaychain] 🏁 Disk score (rand. writes): 18.96 MiBs
2024-03-06 16:11:40 [Relaychain] Starting with an empty approval vote DB.
2024-03-06 16:11:40 [Orchestrator] Using default protocol ID "sup" because none is configured in the chain specs
2024-03-06 16:11:40 [Orchestrator] 🏷  Local node identity is: 12D3KooWRJZHsfbywyzihFKKtrBW5RnjeHR3jixiNnghUghQoZvU
2024-03-06 16:11:40 [Relaychain] discovered: 12D3KooWM6u9WBRpJNcFzPPndzssAnmYTWqZFd9zU5rFUtSCBb5A /ip4/185.16.38.48/tcp/30333
2024-03-06 16:11:40 [Relaychain] discovered: 12D3KooWEjENHgHaViurm971dkphmSwybMyPvDBvFdepvZovarn9 /ip4/185.225.191.101/tcp/30333
2024-03-06 16:11:40 [Relaychain] discovered: 12D3KooWRxdzDHvvrfpvVFCjBrtGnTzyuJLaXXmT9shwHx6AxND6 /ip4/95.214.55.63/tcp/30332/ws
2024-03-06 16:11:40 [Relaychain] discovered: 12D3KooWMBxZy3uL1AsTFjjNB2fgRuGLFjYKBHNXcuESHBhDNvoq /ip4/95.214.55.178/tcp/30333
  • Example Output after sync:
2024-03-08 20:51:36 [Orchestrator] ✨ Imported #1510532 (0xb600…fc2e)
2024-03-08 20:51:36 [Relaychain] cannot query the runtime API version: Api called for an unknown Block: State already discarded for 0xec2d6663606442d50d6ddd0c92f3bb5bb58dcf31b425d282d4459110bf316af2
2024-03-08 20:51:37 [Orchestrator] 💤 Idle (16 peers), best: #1510532 (0xb600…fc2e), finalized #1510529 (0xe1da…d85c), ⬇ 41.7kiB/s ⬆ 4.7kiB/s
2024-03-08 20:51:37 [Relaychain] 💤 Idle (11 peers), best: #14558181 (0xc704…4d37), finalized #14558178 (0xb71f…58a4), ⬇ 20.5kiB/s ⬆ 35.5kiB/s
2024-03-08 20:51:41 [Orchestrator] 🔏 No Nimbus keys available. We will not be able to author.
2024-03-08 20:51:41 [Relaychain] cannot query the runtime API version: Api called for an unknown Block: State already discarded for 0xec2d6663606442d50d6ddd0c92f3bb5bb58dcf31b425d282d4459110bf316af2
2024-03-08 20:51:42 [Relaychain] ✨ Imported #14558182 (0xf072…6a00)
2024-03-08 20:51:42 [Orchestrator] Authorities found for para Id(3000) are Some([Public(c0284f924b132dd7d8122bf8ddb1966fe0746172eaf14c9efa6b9702f8538e40 (5GQf2TBQ...)), Public(14eae7c698bc779b8f6790e1880749baaba123267737f6b3f59201943e6c9e07 (5CY8bYJ6...))])

Done.