👉Instalación y actualización
Pasos para instalar cardano-node, cardano-cli y pre-requisitos.
Creación de folder para ejecutables
Creamos el folder .local/bin
mkdir -p ~/.local/binVariables de sistema
A continuación vamos a definir algunas variables necesarias para el correcto funcionamiento de nuestro nodo. Para esto vamos a modificar nuestro archivo ~/.bashrc y agregamos estas líneas al final:
# Cardano node
export PATH="/home/ubuntu/.local/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"
export CARDANO_NODE_SOCKET_PATH=/home/ubuntu/cardano-node/db/block/node.socketLuego ejecutamos source ~/.bashrc para aplicar los cambios a nuestra sesión actual.
Instalar ghcup
Esta herramienta nos permitirá actualizar ghc y cabal muy fácilmente de ahora en adelante.
mkdir -p ~/src && cd ~/src
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | shDebemos dar ENTER por lo menos dos veces par aceptar la instalación de ghcup y de sus dependencias. Luego el programa consultará si deseas instalar el HLS, podemos contestar NO y continuar. Finalmente nos preguntará si deseamos que el instalador agregue la ruta de ghcup al $PATH de nuestro sistema. Se recomienda aceptar estos cambios automáticamente con YES, aunque podemos decirle que NO y copiar los ejecutables a mano o insertar nuestra propia ruta.
Instalación del compilador de Haskell GHC
Instalamosghc, configuramos la versión a usar por defecto y verificamos.
source ~/.bashrc
ghcup upgrade
ghcup list
ghcup install ghc 8.10.7
ghcup set ghc 8.10.7
ghc --versionInstalación de Cabal
ghcup install cabal 3.8.1.0
ghcup set cabal 3.8.1.0
cabal --version
cabal clean && cabal updateghcup install cabal 3.8.1.0
ghcup set cabal 3.8.1.0
; Con el siguiente comando eliminamos la version previa de Cabal
ghcup rm cabal 3.6.2.0
cabal --version
cabal clean && cabal updateInstalación de libsodium
Usamos el fork de libsodium mantenido por IOHK.
cd ~/src
git clone https://github.com/input-output-hk/libsodium
cd libsodium
git checkout dbb48cc
./autogen.sh
./configure
make
sudo make installInstalación de libsecp256k1
Descargamos e instalamos libsecp256k1
cd ~/src
git clone https://github.com/bitcoin-core/secp256k1
cd secp256k1
git checkout ac83be33
./autogen.sh
./configure --prefix=/usr --enable-module-schnorrsig --enable-experimental
make
sudo make installInstalación de blst
Primero ubicamos la versión correcta de blst:
BLST_VERSION=$(curl https://raw.githubusercontent.com/input-output-hk/iohk-nix/master/flake.lock | jq -r '.nodes.blst.original.ref')
echo "Using blst version: ${BLST_VERSION}"Una vez identificada la versión, la descargamos e instalamos.
cd ~/src
: ${BLST_VERSION:='v0.3.11'}
git clone --depth 1 --branch ${BLST_VERSION} https://github.com/supranational/blst
cd blst
./build.sh
cat > libblst.pc << EOF
prefix=/usr/local
exec_prefix=\${prefix}
libdir=\${exec_prefix}/lib
includedir=\${prefix}/include
Name: libblst
Description: Multilingual BLS12-381 signature library
URL: https://github.com/supranational/blst
Version: ${BLST_VERSION#v}
Cflags: -I\${includedir}
Libs: -L\${libdir} -lblst
EOF
sudo cp libblst.pc /usr/local/lib/pkgconfig/
sudo cp bindings/blst_aux.h bindings/blst.h bindings/blst.hpp /usr/local/include/
sudo cp libblst.a /usr/local/lib
sudo chmod u=rw,go=r /usr/local/{lib/{libblst.a,pkgconfig/libblst.pc},include/{blst.{h,hpp},blst_aux.h}}Clonar repositorio cardano-node
cd ~
git clone https://github.com/input-output-hk/cardano-node.git
cd cardano-nodeInstalar cardano-node y cardano-cli
cd ~/cardano-node
git fetch --all --recurse-submodules --tags
git checkout tags/8.9.0
echo "with-compiler: ghc-8.10.7" >> cabal.project.local
cabal update
cabal build allSi estas actualizando desde una versión anterior a 8.0.0, necesitarás ademas descargar el archivo conway-genesis.json y modificar tu config.json o descargarlo nuevamente.
Backup de los ejecutables
Este paso solo es necesario en ACTUALIZACIONES
Hacemos una copia de los ejecutables actuales por si llegase a fallar algo, así tenemos un rollback inmediato.
cd ~/.local/bin
cp cardano-node cardano-node.8.8.2
cp cardano-cli cardano-cli.8.8.2Copiar ejecutables a nuestro folder bin
Para actualizar los ejecutables es posible que tengas que detener tu nodo primero con:
sudo systemctl stop <NOMBRE-DE-SERVICIO>
cd ~/cardano-node
cp -p "$(./scripts/bin-path.sh cardano-node)" ~/.local/bin/
cp -p "$(./scripts/bin-path.sh cardano-cli)" ~/.local/bin/
# Opcional si deseamos instalar el cardano-submit-api
cp -p "$(./scripts/bin-path.sh cardano-submit-api)" ~/.local/bin/Podemos verificar que hemos realizado correctamente la instalación con:
cardano-cli --version && cardano-node --version
Reiniciar nodo
Dependiendo de como administres tus nodos éste método puede variar, por lo general un comando similar a:
sudo systemctl restart <NOMBRE-DE-SERVICIO>Última actualización
¿Te fue útil?