db2start:加载共享库时出错:libicudatadb2.so.32:无法启用共享对象所需的可执行堆栈:参数无效

问题描述 投票:0回答:1

当我尝试在 docker 容器上运行 db2 时,出现此错误。无论如何,我正在使用 macbook m2。在我的笔记本电脑从 macos sonoma 14.2 更新到 14.3 之前,它工作得很好。现在当我想运行容器时出现此错误。

DB2 State : Operable
DB2 has not been started
Starting DB2...

db2start: error while loading shared libraries: libicudatadb2.so.32: cannot enable executable stack as shared object requires: Invalid argument
ssh-keygen: generating new host keys: RSA DSA ECDSA ED25519 
(*) All databases are now active. 
(*) Setup has completed.
HOSTNAME: 54f62d87e0cf
FUNCTION: DB2 UDB, config/install, sqlfLogUpdateCfgParam, probe:30
CHANGE  : CFG DBM: "Dftdbpath" From: ""  To: "/database/data" 

2024-01-24-06.05.46.957009+000 I5190E318             LEVEL: Event
PID     : 70332                TID : 140737382190592 PROC : db2flacc
INSTANCE: db2inst1             NODE : 000
HOSTNAME: 54f62d87e0cf
FUNCTION: DB2 UDB, config/install, sqlfLogUpdateCfgParam, probe:30
CHANGE  : CFG DBM: "Federated" From: "0"  To: "1" 
(*) Ending DB2 with db2stop force and db2ts "stop for text"
db2stop: error while loading shared libraries: libicudatadb2.so.32: cannot enable executable stack as shared object requires: Invalid argument
(*) Done

这是我的运行命令。

docker run --rm -ti --platform linux/amd64 -itd --name db2 --privileged=true -p 50000:50000 -e LICENSE=accept -e DB2INST1_PASSWORD=root -v db2-volume:/database ibmcom/db2 uname -m x86_64

希望有人能帮助解决我的问题。

docker db2 arm virtual-machine apple-m1
1个回答
0
投票

在 Docker Desktop 设置中打开 Rosetta 可解决该问题。为了正确使用 Rosetta,我们必须等待苹果或 docker 本身的修复。

显然这会影响数据库性能,但对于我们本地的开发来说这是可以的。

© www.soinside.com 2019 - 2024. All rights reserved.