Senseiは、ビットコインを初めて使用するユーザーのオンボーディングエクスペリエンスを緩和することに焦点を当てた新しいLightningノードの実装です。ビットコイン開発キットとLightning Development Kitを使用して構築されています。
Senseiを使用するには、Bitcoindインスタンスが必要です。
Nigiriを使用して、すべてをローカルで実行することをお勧めします。
ソースから実行するには、次の手順を実行する必要があります。
git clone [email protected]:L2-Technology/sensei.git
cd sensei/web-admin && npm install && npm run build && cd ..
cargo run --bin senseid -- --network=regtest --bitcoind-rpc-host=localhost --bitcoind-rpc-port=18443 --bitcoind-rpc-username=admin1 --bitcoind-rpc-password=123 --database-url=sensei.db
http://localhost:5401/admin/nodes
で管理者を開きます先生は、 sqlite
、 mysql
、およびpostgres
データベースをサポートしています。 DATABASE_URL
環境Variblableまたは--database-url
コマンドライン引数を指定して、使用するデータベースを構成できます。
SQLiteの場合、データベースに使用するファイル名を指定します。 Sensei Data Directoryに保存されます。
例: --database-url=sensei.db
先生には、これらのデータベースをローカルで自動的に実行できるdocker-compose.yml
ファイルが含まれています。これらを自由に使用するか、資格情報を既に持っているデータベースに置き換えてください。
Dockerベースのデータベースの開始: docker-compose up -d
postgresの例: --database-url=postgres://sensei:sensei@localhost:5432/sensei
mysql例: --database-url=mysql://sensei:sensei@localhost:3306/sensei
あなたの変更をライブで見るためには、次のようにする必要があります。
cargo run --bin senseid -- --network=regtest --bitcoind-rpc-host=localhost --bitcoind-rpc-port=18443 --bitcoind-rpc-username=admin1 --bitcoind-rpc-password=123 --allow-origins=http://localhost:3001
cd sensei/web-admin && npm install && npm run start
http://localhost:3001/admin/nodes
Nigiriは、Bitcoind、Electrum、EsploraなどのローカルDocker画像を実行するための優れたツールです。実行されたら、シンセイノードを起動するときに提供するビットコインドインスタンスを使用できます。
ノードがセットアップされたら、次のことができます。
nigiri faucet <sensei_fund_address>
nigiri rpc getnewaddress "" "bech32"
に住所を取得するnigiri rpc generatetoaddress 10 "<address_from_previous_command>"
-data_dirフラグを使用してカスタムデータディレクトリを渡すことができますが、デフォルトはオペレーティングシステムのホームディレクトリの.sensei
ディレクトリになります。
Home Directoryは、dirs Crateを使用して取得されます。
プラットフォーム | 価値 | 例 |
---|---|---|
Linux | $HOME | /home/alice/.sensei |
macos | $HOME | /users/alice/.sensei |
Windows | {FOLDERID_Profile} | c: users alice.sensei |
$HOME
使用してください。$HOME
が設定されていないか空にない場合、関数getpwuid_r
を使用して現在のユーザーのホームディレクトリを決定します。getpwuid_r
現在のユーザーIDのエントリがない場合、またはホームディレクトリフィールドが空になっている場合、関数はNone
返されません。この関数は、 SHGetKnownFolderPath
を使用してユーザープロファイルフォルダーを取得します。
先生は、データディレクトリ内にroot config.json
ファイルを作成します。これらは、すべてのネットワークに適用される構成です。
先生はまた、デーモンをインスタンス化する各ネットワーク(MainNet、TestNet、Regtestなど)のサブディレクトリを作成します。各ネットワークサブディレクトリには、独自のconfig.json
ファイルがあります。
Senseiは、ネットワーク固有の構成をルート構成にマージして、最終的な構成を作成します。
これは、ネットワークレベルで設定された構成がルートレベルで構成をオーバーライドすることを意味します。
構成オプションの一部は、コマンドライン引数または環境変数を使用して設定できます。
これらは最も優先され、ネットワーク固有の構成を上書きします。
instance> network> root
インストールと開始手順については、ドキュメントWebサイトにアクセスしてください。
このプロジェクトに関連することについて話し合うために、私たちのDiscordコミュニティに参加してください。