• Guias
  • Correr nodo de Bolivarcoin/Bolicoin en Docker Toolbox Windows 7 - W10

Para esto se ha ocupado una pc con Windows 7 PRO x64 con virtualizacion activada desde la BIOS (es obligatorio), el mismo método ya ha sido probado igualmente en Windows 10 y seguramente funcione en Windows 11. Porque hacerlo en Windows 7? R: porque Docker Desktop para Windows utiliza Hyper V y Windows 7 utiliza solamente VirtualBox. 😃

El repositorio del Docker de Boli:

https://github.com/Visionario/DockerBoli.git

Se ha utilizado Docker Toolbox version 19.03.12 (que instala automáticamente todo lo necesario: VirtualBox, Git for Windows y Docker compose) desde aqui:

https://github.com/docker-archive/toolbox/releases

Puede ver un video explicativo de ayuda 👉 Video de instalación Docker Toolbox en Windows

Windows ofrece la oportunidad de modificar archivos y carpetas utilizadas por Docker sin necesidad de utilizar la linea de comandos 🙂

PREPARACION:

La ruta de los archivos para Docker Toolbox en Windows luego de la instalacion por defecto es:

c:\Archivos de programa\Docker toolbox\

  • Desde Windows o por linea de comandos se crea una carpeta llamada "boli" con la intención de tener todo separado en la siguiente ruta:

c:\Archivos de programa\Docker toolbox\boli\

  • También se crea una carpeta que será compartida entre Windows y la Máquina Virtual (VM), la cual se debe agregar desde el administrador de configuración de VirtualBox, seleccionando la máquina creada "default" > configuración > carpetas compartidas. VirtualBox utiliza por defecto la ruta c/Users allí se creará la carpeta mydocker y debe quedar así:

C:\Users\mydocker\

A esa carpeta creada, se le pueden otorgar permisos de control total o como le parezca más seguro, se puede hacer desde Windows > propiedades > seguridad

  • Desde la terminal Docker Toolbox se clona el repositorio que genera la carpeta DockerBoli con el siguiente comando:

git clone https://github.com/Visionario/DockerBoli.git

  • Desde Windows o por linea de comandos se copian los archivos Dockerfile y daemon_boli_start.sh del git descargado que se encuentra en la ruta por defecto:

c:\Archivos de programa\Docker toolbox\DockerBoli\

a la carpeta creada:

c:\Archivos de programa\Docker toolbox\boli\

  • Con un editor de texto se debe comentar (#) la linea 2 del archivo daemon_boli_start.sh

  • Desde Windows o por linea de comandos se debe crear la carpeta "bolidata" en la ruta c:\Archivos de programa\Docker toolbox\boli\ quedando así:

c:\Archivos de programa\Docker toolbox\boli\bolidata\

  • Se Copia el archivo Generic_Bolivarcoin.conf que se encuentra en la carpeta c:\Archivos de programa\Docker toolbox\DockerBoli\ a la carpeta \bolidata\ y se le cambia el nombre a Bolivarcoin.conf

  • Se cambia los valores del archivo Bolivarcoin.conf automaticamente desde la terminal Docker Toolbox con los siguientes comandos, desde de la ruta \Docker toolbox\boli:

sed -i "s/rpcuser=CHANGE_THIS/rpcuser=$(openssl rand -hex 16)/g" Bolivarcoin.conf
sed -i "s/rpcpassword=CHANGE_THIS/rpcpassword=$(openssl rand -hex 16)/g" Bolivarcoin.conf

CONSTRUCCIÓN/BUILD:

Se construye la imagen boli usando parámetros predeterminados, desde la terminal de Docker Toolbox, dentro de la ruta c:\Archivos de programa\Docker toolbox\boli\ con el siguiente comando:

docker build . --build-arg UID=$(id -u) --build-arg GID=$(id -g) -t bolicoin-core-alpine:v2.0.0.2

Dependiendo de la capacidad de la máquina se toma algo de tiempo y finaliza indicando:

successfully built (image ID) que en mi caso fué 7a6c22883bf4
successfully tagged bolicoin-core-alpine:v2.0.0.2

  • Para visualizar la imagen construida puede escribir el comando:

docker images

En REPOSITORY se observa la imagen bolicoin-core-alpine con TAG v2.0.0.2

EJECUCIÓN/RUN

Desde la terminal de docker Toolbox se ejecuta el siguiente comando:

docker run -dit --name boli -p 3893:3893 -v "/c/users/mydocker:/opt/boli/bolidata" bolicoin-core-alpine:v2.0.0.2

Desde la terminal de docker Toolbox se ejecuta el siguiente comando, para comprobar que el contenedor está corriendo:

docker ps EUREKA! 😍

Para salir del contenedor debe ejecutar el siguiente comando en la terminal de Docker Toolbox:

docker rm $(docker ps -aq) -f ó docker rm -f boli

Si gusta entrar al contenedor en ejecución (usuario 'boli') ejecutar en la terminal de Docker Toolbox:

docker exec -it boli /bin/sh

Ejecutar comandos (user 'boli')

docker exec boli bolivarcoin-cli getinfo

Entrar al contenedor con credenciales root

docker exec -it -u 0 boli /bin/sh

Enjoy! 😊


Nota 1:
Durante la construcción, para las Ip de Venezuela ocurre el error 403 forbidden cuando está haciendo la descarga del motor de Oracle.com pensé que era temporal, sin embargo, lo siguió haciendo y casi desintalo todo y vuelvo a empezar de "0", sino es por que @Visionario indica en telegram que existe el error 😵 (me has salvado) ahora voy a probar con un VPN a ver como sale.

Nota 2:
Se instaló un VPN en Windows 7 para poder pasar el error de Oracle.com, también se configuró en VirtualBox en el menu: Archivo > Preferencias > Proxy > "Autodetectar preferencias del proxy del anfitrion"

@Visionario me indica hacer un pequeño cambio para evitar el uso del VPN:

Antes de hacer el "build"...

En linea 61 que dice:
RUN wget https://download.oracle.com/berkeley-db/${BERKELEYDB_VERSION}.tar.gz

Cambialo por:
RUN wget https://labs.bolivarcoin.tech:2908/${BERKELEYDB_VERSION}.tar.gz

En linea 169 que dice:
COPY daemon_boli_start.sh /opt/boli/daemon_boli_start.sh

Cambialo por:
COPY ./daemon_boli_start.sh /opt/boli/daemon_boli_start.sh

Nota 3:
El error:

Copy failed en el Step 52/60 Copy daemon_boli_start.sh /opt/boli/daemon_boli_start.sh

Se resuelve como se ha indicado arriba, copiando en archivo daemon_boli_start.sh en la carpeta:

c:\Archivos de programa\Docker toolbox\boli\

Nota 4:
El error:

Invalid reference format: repository name must be lowercase

No aparece más cuando se ejecuta el siguiente comando:

docker run -dit --name boli -p 3893:3893 -v "/c/users/mydocker:/opt/boli/bolidata" bolicoin-core-alpine:v2.0.0.2

Brother, muy buena la publicación, detalles al máximo, gracias 👍

Me parece tan extraño que de el error justo en la construcción de la imagen. Tal vez sea algo dentro del archivo Dockerfile? Ese es el constructor de la imagen.

Aunque por lo que observo, te estás saltando el lado de construcción de la imagen, especificamente en https://github.com/Visionario/DockerBoli#build-image-using-defaults

Eso debe hacerse antes de poder hacer un run ya que sin la imagen creada nunca conseguirá el repositorio local.

Saludos

    Hughtunn3l cambió el título a Creando una imagen de Docker para Nodo de Bolivarcoin/Bolicoin.
    13 días más tarde

    Visionario Gracias por su respuesta Miyagi 🙂

    Siempre procuro mantener actualizado el post principal y dejo notas importantes con cambios realizados, cada vez que tengo tiempo leo la documentación y trato de encontrar algo, porque actualmente existen contenedores que corren sin problemas en docker toolbox de Windows 7, quizás en algún momento podamos decir: ¡Eureka!

    Hughtunn3l cambió el título a Correr nodo de Bolivarcoin/Bolicoin en Docker Toolbox Windows 7 - W10.
    Escriba una respuesta...