cardano-submit-apiを試す機会があったので、リレーノードにインストールする手順をメモしておきたいと思います。
!--
- cardano-wallet GitHub
ダウンロードフォルダを作成する
sudo mkdir -p $HOME/git/cardano-wallet cd $HOME/git/cardano-wallet
cardano-walletバイナリをダウンロードする
wget https://github.com/cardano-foundation/cardano-wallet/releases/download/v2025-03-31/cardano-wallet-v2025-03-31-linux64.tar.gz
アーカイブを解凍し、解凍されたディレクトリに移動する
tar xvf cardano-wallet-v2025-03-31-linux64.tar.gz cd cardano-wallet-v2025-03-31-linux64
$(find $HOME/git/cardano-node -type f -name "cardano-submit-api") version
/usr/local/binディレクトリに配置する
sudo cp $(find $HOME/git/cardano-node -type f -name "cardano-submit-api") /usr/local/bin/cardano-submit-api
起動スクリプトを作成する
cat > $NODE_HOME/startCardanoSubmitAPI.sh << EOF #!/bin/bash DIRECTORY="${NODE_HOME}" PORT=8091 HOST="127.0.0.1" CONFIG_PATH="\${DIRECTORY}/mainnet-config.json" SOCKET_PATH="\${DIRECTORY}/db/socket" /usr/local/bin/cardano-submit-api --config \${CONFIG_PATH} --socket-path \${SOCKET_PATH} --listen-address \${HOST} --port \${PORT} EOF
常時起動させるためのサービスファイルを作成する
cat > $NODE_HOME/service/cardano-submit-api.service << EOF # file: /etc/systemd/system/cardano-submit-api.service [Unit] Description=Cardano Submit API After=cardano-node.service [Service] Type=simple Restart=always RestartSec=5 User=cardano WorkingDirectory=${NODE_HOME} ExecStart=/bin/bash -c '${NODE_HOME}/startCardanoSubmitAPI.sh' KillSignal=SIGINT RestartKillSignal=SIGINT SuccessExitStatus=143 TimeoutStopSec=300 StandardOutput=syslog StandardError=syslog SyslogIdentifier=cardano-wallet [Install] WantedBy=cardano-node.service EOF
mainnet-config.jsonに以下の2行を追記する(TraceChainDbの下辺りが良いらしいです)
"EnableLogging": true, "EnableLogMetrics": false,
起動スクリプトに実行権限を付与する
chmod +x $NODE_HOME/startCardanoSubmitAPI.sh
サービスファイルを規定のディレクトリに配置し、パーミッションを設定する
sudo cp $NODE_HOME/service/cardano-submit-api.service /etc/systemd/system/cardano-submit-api.service sudo chmod 644 /etc/systemd/system/cardano-submit-api.service
サービスファイルを再読み込みし、cardano-submit-apiサービスを有効化する
sudo systemctl daemon-reload sudo systemctl enable cardano-submit-api.service
cardano-walletサービスを開始する
sudo systemctl start cardano-submit-api.service
cardano-walletサービスの起動状態を確認する
sudo systemctl status cardano-submit-api.service