Sensei es una nueva implementación del nodo Lightning con un enfoque en facilitar la experiencia de incorporación para los usuarios nuevos en Bitcoin. Se construye utilizando el kit de desarrollo de Bitcoin y el kit de desarrollo Lightning.
Necesitará una instancia de Bitcoind para usar Sensei.
Recomiendo usar Nigiri para que todo funcione localmente.
Para correr desde la fuente, deberá dar los siguientes pasos:
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
Sensei admite bases de datos sqlite
, mysql
y postgres
. Puede configurar qué base de datos utilizar al especificar un argumento de línea de comandos de comandos de entorno DATABASE_URL
--database-url
Para SQLite, solo especifica el nombre de archivo para usar para la base de datos. Se guardará en el directorio de datos Sensei.
Ejemplo: --database-url=sensei.db
Sensei incluye un archivo docker-compose.yml
que puede ejecutar automáticamente estas bases de datos para usted localmente. Siéntase libre de usarlos o simplemente sustituir las credenciales a cualquier base de datos que ya tenga.
Iniciar bases de datos basadas en Docker: docker-compose up -d
Ejemplo de Postgres: --database-url=postgres://sensei:sensei@localhost:5432/sensei
mysql Ejemplo: --database-url=mysql://sensei:sensei@localhost:3306/sensei
Para ver sus cambios en vivo, deberá:
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 es una gran herramienta para ejecutar imágenes locales de Docker de Bitcoind, Electrum, Esplora y mucho más. Una vez que se está ejecutando, puede usar la instancia de bitcoind que proporciona al iniciar su nodo sensei.
Una vez que su nodo esté configurado, puede:
nigiri faucet <sensei_fund_address>
nigiri rpc getnewaddress "" "bech32"
nigiri rpc generatetoaddress 10 "<address_from_previous_command>"
Puede pasar un directorio de datos personalizado usando el indicador --data_dir, pero el predeterminado será un directorio .sensei
en el directorio de inicio de su sistema operativo.
El directorio de inicio se recupera utilizando la caja DIRS.
Plataforma | Valor | Ejemplo |
---|---|---|
Linux | $HOME | /home/alice/.sensei |
macosa | $HOME | /Users/alice/.sensei |
Windows | {FOLDERID_Profile} | C: users alice.sensei |
$HOME
si está configurado y no está vacío.$HOME
no está configurado o vacía, entonces la función getpwuid_r
se usa para determinar el directorio de inicio del usuario actual.getpwuid_r
carece de una entrada para la ID de usuario actual o el campo de directorio de inicio está vacío, entonces la función no devuelve None
. Esta función recupera la carpeta de perfil de usuario utilizando SHGetKnownFolderPath
.
Sensei creará un archivo Root config.json
dentro del directorio de datos. Estas son configuraciones que se aplicarán en todas las redes.
Sensei también creará subdirectorios para cada red (por ejemplo, MainNet, Testnet, RegTest) con el que instancia el Daemon. Cada subdirectorio de red tendrá su propio archivo config.json
.
Sensei fusionará la configuración específica de la red en la configuración raíz para crear la configuración final.
Esto significa que cualquier configuración establecida en el nivel de red anulará la configuración en el nivel raíz.
Algunas de las opciones de configuración se pueden configurar utilizando argumentos de línea de comando o variables de entorno.
Estos tendrán la mayor precedencia y sobrescribirán la configuración específica de la red.
instancia> red> root
Visite el sitio web de documentación para obtener instrucciones de instalación y iniciar.
Únase a nuestra comunidad de Discord para discutir cualquier cosa relacionada con este proyecto.