GOOGLE ADS

jueves, 14 de abril de 2022

La imagen acoplable de ibmcom/db2 falla en m1

Tengo problemas para configurar DB2 en macOS a través de Docker en mi M1-Max MacBook Pro (32 GB de RAM). Ya eché un vistazo a esta pregunta, que podría estar relacionada, sin embargo, no hay mucha información y no puedo decir exactamente si se trata exactamente de lo mismo. Configuré lo siguiente docker-compose.yml:

versión: '3.8'
servicios:
db2:
imagen: ibmcom/db2
plataforma: linux/amd64
nombre_contenedor: db2-test
privilegiado: cierto
medioambiente:
LICENCIA: "aceptar"
DB2INSTANCE: "db2dude"
DB2INST1_CONTRASEÑA: "db2pw"
NOMBRE DB: "RC1DBA"
BLU: "falso"
ENABLE_ORACLE_COMPATIBILITY: "falso"
ACTUALIZACIÓN VAIL: "NO"
TO_CREATE_SAMPLEDB: "falso"
REPODB: "falso"
IS_OSXFS: "verdadero"
PERSISTENT_HOME: "verdadero"
HADR_ENABLED: "falso"
ETCD_ENDPOINT: ""
ETCD_NOMBRE DE USUARIO: ""
ETCD_CONTRASEÑA: ""
volúmenes:
- ~/workspace/docker/db2-error/db2/database:/database
- ~/workspace/docker/db2-error/db2/db2_data:/db2_data
puertos:
- 50000:50000

en mi Intel-MacBook, esto gira sin ningún problema, en mi M1-MacBook, sin embargo, veo que después de Task #4terminar, veo la siguiente parte dentro de STDOUT:

DBI1446I El mandato db2icrt se está ejecutando. 
DBI1070I El programa db2icrt se completó satisfactoriamente.
(*) Arreglando el archivo /etc/services para DB2...
/bin/bash: db2stop: comando no encontrado

Por lo que pude deducir, la presencia de (*) Fixing /etc/services file for DB2... ya parece estar mal (ya que no aparece en mi registro de inteligencia y no parece que todo esté bien) y /bin/bash: db2stop: command not foundaparece debido a la línea 81 de /var/db2_setup/include/db2_common_functions, que dice su - ${DB2INSTANCE?} -c 'db2stop force'. Según tengo entendido, su -debería ejecutarse con la ruta del usuario de destino. En cada uno .profileo .bashrcen el directorio de inicio, ~/sqllib/db2profilese está obteniendo (a través de . /database/config/db2dude/sqllib/db2profile).

Sin embargo, cuando está como root dentro del contenedor ( docker exec -it db2-test bash), llamando su - db2dude -c 'echo $PATH'a, imprime /usr/local/bin:/bin:/usr/bin. Por lo tanto, el PATH obviamente no es el esperado.

Tal vez alguien pueda averiguar qué está pasando en este punto. También intenté ejecutar Docker con el "nuevo marco de virtualización", que no cambió nada. Supongo que la magia de compatibilidad de Dockers podría no ser perfecta, sin embargo, espero encontrar algún tipo de solución, tal vez construyendo una imagen sobre ibmcom/db2.

Agradezco mucho su tiempo y sus consejos. Muchas gracias por adelantado.


Solución del problema

db2 no es compatible con la arquitectura ARM, solo se admiten estas arquitecturas: amd64, ppc64le, s390x

https://hub.docker.com/r/ibmcom/db2

No hay comentarios:

Publicar un comentario

Regla de Firestore para acceder a la generación de subcolección Permisos faltantes o insuficientes

Tengo problemas con las reglas de Firestore para permitir el acceso a algunos recursos en una subcolección. Tengo algunos requests document...