Crear un Nodo Estándar de Rocket Pool con Docker

En esta sección, recorreremos el proceso de instalación del stack de Smartnode de Rocket Pool utilizando la configuración estándar basada en Docker. Esto instalará y configurará todo lo que necesita para ejecutar un nodo completo, incluyendo:

  • El software Smartnode de Rocket Pool
  • Un cliente de Ejecución (anteriormente ETH1) de su elección, o una conexión a un cliente existente que ya gestiona
  • Un cliente de Consenso (anteriormente ETH2) de su elección, o una conexión a un cliente existente que ya gestiona
  • Un cliente Validador que manejará sus tareas de validación de Beacon Chain
  • (Opcionalmente) un stack de monitoreo para capturar métricas de rendimiento y salud

¡Todo lo que necesita hacer es decirle qué desea ejecutar!

NOTA

Las siguientes instrucciones requieren que use la terminal de su sistema para ingresar y ejecutar comandos. Si está conectado a la máquina del nodo a través de SSH, ya está haciendo esto. Si está en la máquina del nodo y usa una interfaz de usuario de escritorio, necesitará abrir una ventana de terminal para ejecutar los siguientes comandos. Consulte las instrucciones de su sistema operativo para aprender cómo hacer esto si no está familiarizado.

Descripción General del Proceso

A alto nivel, esto es lo que implica instalar Rocket Pool:

  1. Descargar la interfaz de línea de comandos (CLI) de Rocket Pool
  2. Usar la CLI para instalar el stack de Smartnode
  3. Configurar el stack de Smartnode con una interfaz de usuario fácil de usar en la terminal
  4. ¡Listo!

Antes de Comenzar

Warning

Si usa Ubuntu, se recomienda que antes de instalar Rocket Pool verifique dos veces que docker no se haya instalado junto con el sistema operativo.

El instalador de Ubuntu obtiene docker del administrador de paquetes snap, que entrará en conflicto con la versión de docker instalada por Smartnode.

Ejecute snap list, y asegúrese de que docker no se haya instalado.

Por ejemplo, esta es la salida en una máquina donde docker no está instalado:

Name    Version        Rev    Tracking       Publisher   Notes
core20  20230308       1852   latest/stable  canonical✓  base
lxd     5.0.2-838e1b2  24322  5.0/stable/…   canonical✓  -
snapd   2.59.1         18933  latest/stable  canonical✓  snapd

Y aquí está la salida si se instaló:

Name    Version        Rev    Tracking       Publisher   Notes
core20  20230308       1852   latest/stable  canonical✓  base
docker  20.10.17       2746   latest/stable  canonical✓  -
lxd     5.0.2-838e1b2  24322  5.0/stable/…   canonical✓  -
snapd   2.59.1         18933  latest/stable  canonical✓  snapd

Si lo ve en la salida de snap list, asegúrese de eliminarlo con:

sudo systemctl stop snap.docker.dockerd.service

sudo snap remove --purge docker

Después de lo cual, se recomienda que reinicie la máquina (sudo systemctl reboot)

Descargar la CLI de Rocket Pool

Las instrucciones para descargar la CLI varían según su sistema operativo.

NOTA

Debe realizar las siguientes instrucciones en la máquina que usará para su nodo de Rocket Pool. Si no está usando un teclado y monitor conectados directamente a su máquina de nodo, necesitará acceder a ella de forma remota (por ejemplo, a través de SSH) y ejecutar estos comandos en ella a través de esa conexión remota.

Linux
MacOS

En Linux, comience creando una nueva carpeta que contendrá la aplicación CLI:

mkdir -p ~/bin

A continuación, descargue la CLI. Esto depende de qué arquitectura use su sistema.

CONSEJO

Si no conoce la arquitectura de su CPU, puede ejecutar el siguiente comando para encontrarla:

uname -m

La salida de este comando imprimirá su arquitectura. Tenga en cuenta que x86_64 es lo mismo que x64 y amd64. Tenga en cuenta que aarch64 es lo mismo que arm64.

Para sistemas x64 (la mayoría de las computadoras normales):

wget https://github.com/rocket-pool/smartnode/releases/latest/download/rocketpool-cli-linux-amd64 -O ~/bin/rocketpool

Para sistemas arm64:

wget https://github.com/rocket-pool/smartnode/releases/latest/download/rocketpool-cli-linux-arm64 -O ~/bin/rocketpool

Márquelo como ejecutable, para que tenga permisos para ejecutarse:

chmod +x ~/bin/rocketpool

A continuación, cierre sesión y vuelva a iniciar sesión (o cierre SSH y reconecte), o simplemente reinicie. Esto se debe a que la ruta en la que guardó la CLI (~/bin) puede que aún no esté en la variable PATH de su sistema (la lista de lugares donde su sistema busca ejecutables). Cerrar sesión y volver a iniciarla la colocará allí.

Ahora, pruebe ejecutándola con la bandera --version. Debería ver una salida como esta:

rocketpool --version
rocketpool version 1.18.10

CONSEJO

Si ve un mensaje de error como este,

-bash: /home/user/rocketpool: cannot execute binary file: Exec format error

significa que descargó la versión incorrecta arriba. Verifique si su sistema es x64 o arm64 usando el comando en el consejo anterior, y descargue la versión apropiada. Si su sistema no es ninguno de esos, entonces no podrá ejecutar Rocket Pool.

Instalar el Stack de Smartnode

Ahora que tiene la CLI instalada, puede implementar el stack de Smartnode. Esto preparará su sistema con Docker, docker-compose, y cargará los archivos de Smartnode para que estén listos. En realidad no ejecutará nada todavía; eso viene después.

Para implementar el stack de Smartnode, necesitará ejecutar el siguiente comando en su máquina de nodo (ya sea iniciando sesión localmente, o conectándose de forma remota como a través de SSH):

rocketpool service install

Esto obtendrá la última versión del stack de Smartnode y lo configurará. Debería ver una salida como esta (por encima de algunas notas de lanzamiento de la última versión que se imprimirán al final):

Si no hay mensajes de error, entonces la instalación fue exitosa. Por defecto, se colocará en el directorio ~/.rocketpool dentro de la carpeta de inicio de su cuenta de usuario.

NOTA

Tenga en cuenta que el instalador de Smartnode no puede instalar docker y docker-compose en todas las plataformas automáticamente. Si recibe un mensaje de error como este durante la instalación:

Automatic dependency installation for the Mint operating system is not supported.
Please install docker and docker-compose manually, then try again with the '-d' flag to skip OS dependency installation.
Be sure to add yourself to the docker group with 'sudo usermod -aG docker $USER' after installing docker.
Log out and back in, or restart your system after you run this command.

Entonces simplemente tiene que instalar esas dos cosas manualmente.

Docker proporciona instrucciones de instalación comunes aquí.

Docker-compose proporciona instrucciones de instalación comunes aquí.

Una vez que ambos estén instalados, asegúrese de dar permiso a su cuenta de usuario para usar Docker:

sudo usermod -aG docker $USER

Finalmente, vuelva a ejecutar el instalador con la bandera -d para omitir la instalación de Docker:

rocketpool service install -d

Después de esto, cierre sesión y vuelva a iniciar sesión o reinicie su sesión SSH para que la configuración surta efecto.

Una vez que esto termine, el stack de Smartnode estará listo para ejecutarse.

Configurar la Ubicación de Almacenamiento de Docker

Por defecto, Docker almacenará todos los datos de sus contenedores en la unidad de su sistema operativo. En algunos casos, esto no es lo que desea.

NOTA

Si está conforme con este comportamiento predeterminado, vaya a la siguiente sección.

Para hacer esto, cree un nuevo archivo llamado /etc/docker/daemon.json como usuario root:

sudo nano /etc/docker/daemon.json

Esto estará vacío al principio, lo cual está bien. Agregue esto como contenido:

{
  "data-root": "<your external mount point>/docker"
}

donde <your external mount point> es el directorio en el que está montada su otra unidad.

Presione Ctrl+O, Enter para guardar el archivo, y Ctrl+X, Enter para salir del editor.

A continuación, cree la carpeta:

sudo mkdir -p <your external mount point>/docker

Ahora, reinicie el daemon de docker para que recoja los cambios:

sudo systemctl restart docker

Después de eso, Docker almacenará sus datos en el disco deseado.

Configurar el Stack de Smartnode

El siguiente paso en el proceso de instalación es realizar una configuración inicial de su nodo. Continúe con la sección Configurar Rocketpool para un tutorial de este proceso.