Consultando la blockchain

Para arrancar una instancia de cardano-db-sync vamos a utilizar Docker como gestor y despliegue de esta instancia. Antes de continuar asegúrese de tener instalado Docker.
Primero desinstalamos posibles versiones viejas de Docker:
sudo apt-get remove docker docker-engine docker.io containerd runcActualizamos el repositorio de paquetes:
Instalamos los paquetes necesarios para los repositorios sobre https:
Agrega la clave oficial GPG de Docker:
Verificamos la clave:
Configuramos el repositorio estable de Docker.
Finalmente actualizamos el repo(para obtener la versión mas reciente) e instalamos.
Instalar cardano-db-sync
Source. Descargamos el código fuente del proyecto cardano-db-sync
Vamos a chequear la configuración con la que se va a establecer el nuevo entorno:
Mi configuración es la siguiente:
Si nos fijamos en la configuración vemos que Docker va a utilizar la credenciales postgres_db, postregres_password y postgres_user. Las va a ir a buscar a la carpeta /home/cardano/cardano-db-sync/config/secrets/. El repositorio por defecto trae estos archivos bajo el sufijo *_example, solo tenemos que reemplazar o duplicar los ejemplos.
Recuerda cambiar la contraseña.
Antes de correr Docker necesitamos añadir nuestro usuario al grupo docker:
Ahorra arrancamos la instancia con los mensajes de log activados:
Con esto hemos arrancado los servicios cardano-node, la base de datos postgresql, y la herramienta cardano-db-sync. Podemos acceder a estos servicios a través del puerto por defecto: 5432.
Una ejecución más óptima
Vamos a utilizar tmux para ejecutar docker en segundo plano y mostrar el estado de la máquina en vivo.
Creamos el script que levanta el servicio en segundo plano:
Creamos el script que ejecuta docker:
Creamos el script que finaliza el servicio asociado a la sesión "cardano-db-sync".
Agregamos permisos de ejecución a los scripts:
Finalmente arrancamos el servicio:
Una vez iniciado podemos lanzar consultas a la dirección localhost:5432.
Listamos todos los containers:
Eliminar un container concreto por su ID:
Terminar todas las instancias:
Relanzamos las instancias:
Apoyo nuestro trabajo delegando al pool Ada Booster.
Última actualización