Docker 中的 MariaDB 10.8.3:无法初始化计时器

Arn*_*rno 6 mariadb docker ubuntu-18.04

即使清除 Docker 映像缓存后也会发生此错误:

$ docker run -it --rm mariadb:10.8.3
2022-06-15 11:28:14+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.8.3+maria~jammy started.
2022-06-15 11:28:14+00:00 [ERROR] [Entrypoint]: mariadbd failed while attempting to check config
        command was: mariadbd --verbose --help --log-bin-index=/tmp/tmp.EUcxIEz4Yz
        Can't initialize timers
Run Code Online (Sandbox Code Playgroud)

目前latestDocker Hub 上的镜像是 10.8.3。图像标签是ea81af801379. 这是在 64 位 Ubuntu 18.04 上。该服务器具有较低的 CPU 负载、100+GB 的可用 RAM 和 TB 的可用磁盘空间。

我有一个现有的数据库,该版本已经涉及该数据库,并且我不想冒降级的风险。

我已经看到这个问题,但 MariaDB 没有理由无法创建线程。

我该如何解决这个问题?

小智 5

解决方案是更改 MariaDB 版本以避免version 10.8.3,例如通过强制mariadb:10.8.2or mariadb:10.7、 or 设置--security-opt seccomp=unconfined

如果您的 Dockerfile 或 docker-compose 正在引用mariadb:latestmariadb:10in Summer 2022,则它指向mariadb:10.8.3.

与 @Arno 的帖子相反,Docker 版本不是问题。我正在运行 Docker 20.10.17,但问题仍然存在。

您还可以直接使用更新的安全配置文件运行:

docker run --security-opt seccomp=/etc/docker/profiles-seccomp-scmp-act-trace.json
Run Code Online (Sandbox Code Playgroud)

希望 MariaDB 版本中能够修复该问题10.8.3

https://github.com/MariaDB/mariadb-docker/issues/434


Arn*_*rno 3

该问题已在 GitHub 上报告。升级 Docker 似乎可以解决这个问题。