Autoinstall Script

Fecha de Creación: 10.06.2025

Fecha actualización: 30.06.2025

Introducción

En esta guía encontrarás:

  • Cómo realizar la instalación de docker con facilidad

  • Un script que realiza todas las acciones necesarias hasta tener tu validador de Space and Time desplegado en docker.

Instalar Docker

Copia directamente este código en tu terminal:

sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update


sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

Descarga y Ejecuta el script

Paso 1 - Genera un archivo para el script

sudo nano sxt-docker-autoinstall.sh

Paso 2 - Pegar script en el archivo creado

Se te habrá abierto un editor de texto en el que podrás copiar el siguiente código.

#!/bin/bash
# === CONFIGURACIÓN ===
NODE_NAME="YOUR_VALIDATOR_NAME"
DOCKER_IMAGE="ghcr.io/spaceandtimefdn/sxt-node:mainnet-v0.114.5"


# === 1. Limpieza previa completa ===
echo "🧹 Limpiando contenedor y volúmenes anteriores..."
docker rm -f sxt-validator 2>/dev/null
docker volume rm -f sxt-mainnet-data sxt-validator-key sxt-node-key 2>/dev/null
docker system prune -a -f


# === 2. Crear volúmenes ===
echo "📦 Creando volúmenes nuevos..."
docker volume create sxt-mainnet-data >/dev/null
docker volume create sxt-validator-key >/dev/null
docker volume create sxt-node-key >/dev/null


# === 3. Descargar la imagen ===
echo "⬇️ Descargando imagen Docker mainnet..."
docker pull "$DOCKER_IMAGE"


# === 4. Generar clave nueva de nodo ===
echo "🔑 Generando clave de nodo nueva..."
docker run -it --rm \
  --platform linux/amd64 \
  -v sxt-node-key:/data \
  --entrypoint=/usr/local/bin/sxt-node \
  "$DOCKER_IMAGE" \
  key generate-node-key --chain /opt/chainspecs/mainnet-spec.json --file /data/subkey.key


# === 5. Fix permisos en el volumen del keystore ===
echo "🛠️ Corrigiendo permisos en volumen de clave..."
docker run -it --rm \
  --platform linux/amd64 \
  -v sxt-validator-key:/key \
  --user root \
  --entrypoint=chown \
  "$DOCKER_IMAGE" \
  -R sxtuser:sxtuser /key


# === 6. Lanzar nodo validador ===
echo "🚀 Lanzando nodo validador Mainnet..."
docker run -d --restart always \
  --platform linux/amd64 \
  --name sxt-validator \
  -v sxt-mainnet-data:/data \
  -v sxt-validator-key:/key \
  -v sxt-node-key:/node-key \
  -p 30333:30333/tcp \
  -p 9615:9615/tcp \
  -p 9944:9944/tcp \
  --env HYPER_KZG_PUBLIC_SETUP_DIRECTORY=/data \
  "$DOCKER_IMAGE" \
  --base-path /data \
  --prometheus-port 9615 \
  --prometheus-external \
  --pool-limit 10240 \
  --pool-kbytes 1024000 \
  --chain /opt/chainspecs/mainnet-spec.json \
  --keystore-path /key \
  --node-key-file /node-key/subkey.key \
  --bootnodes "/dns/validator0.mainnet.sxt.network/tcp/30333/p2p/12D3KooWK4MUYTi\
z8H6gG98JwN3bT11keivvFLYjtwEv5sqhwkAt" \
  --bootnodes "/dns/validator1.mainnet.sxt.network/tcp/30333/p2p/12D3KooWF92asK\
6nd1DTo4Hng3ekGpV2UYW9mSXJaXqB9RKGtyFU" \
  --bootnodes "/dns/validator2.mainnet.sxt.network/tcp/30333/p2p/12D3KooWRdhvrm\
MziPGeLxB7jtbe7h5q54Qth8KWjoCPaLn9Hv4v" \
  --validator \
  --port 30333 \
  --log info \
  --telemetry-url 'wss://telemetry.polkadot.io/submit/ 5' \
  --no-private-ipv4 \
  --unsafe-rpc-external \
  --rpc-methods=unsafe \
  --rpc-cors all \
  --rpc-port 9944 \
  --name "$NODE_NAME"


# === 7. Mostrar logs ===
echo "📺 Logs del nodo (Ctrl+C para salir)..."
docker logs -f sxt-validator

Una vez copiado, pulso 'Ctrl + x' y confirma que quieres guardar el archivo ('y' + enter)

Paso 3 - Dar permisos de ejecución

sudo chmod +x sxt-docker-autoinstall.sh

Paso 4 - Ejecutar

./sxt-docker-autoinstall.sh

Una vez hayas finalizado la ejecución, te aparecerán los logs en vivo del validador. Ahí podrás ver si todo ha ido correctamente y se empezará a sincronizar.

Para seguir con la instalación, tienes que realizar las interacciones con los Smart Contracts. Sigue desde el Paso 3. Instrucciones de Staking en la Mainnet para los últimos pasos.

Last updated