在 docker-compose 构建上启动 mariaDB 时出错

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

在执行完 images rm、volumes rm 和 docker prune 之后,我在使用 docker-compose 启动 mariaDB 时遇到了此错误

这是数据库撰写部分(yml):

    mariaDB:
    image: 'mariadb:latest'
    environment:
        - MYSQL_ROOT_PASSWORD=root_password

错误日志:

mariaDB_1 | 2022-05-27 20:14:42+00:00 [注意] [入口点]:MariaDB Server 1:10.8.3+maria~jammy 的入口点脚本已启动。

mariaDB_1 | 2022-05-27 20:14:42+00:00 [错误] [入口点]:

mariadbd 尝试检查配置时失败

mariaDB_1 | 命令是:mariadbd --verbose --help --log-bin-index=/tmp/tmp.JMRNT5ajM6

mariaDB_1 | 无法初始化定时器 services_mariaDB_1 退出,代码为 1

提前致谢!

docker mariadb
2个回答
22
投票

MariaDB 的最新 docker 容器和最新标签也存在同样的问题。在 docker-compose 中固定到 10.8.2 (mariadb:10.8.2) 修复了这个问题。db:

这是我的新图像线,在 10.8.2 中它可以继续工作。在 mariadb 问题跟踪器中已经进行了讨论,因此他们正在研究这个问题。

图片:mariadb:10.8.2


13
投票

Dekyi 不幸地遗漏了一些重要的东西:10.8.2 在技术上并不安全。 10.8.2 是候选版本,10.8.3 是 10.8 系列中唯一的通用版本。 10.8.2 适合测试,并且可能适合生产,但 10.8.2 和 10.8.2 之间仍然存在一些错误修复。如果您需要有保证的稳定性,请保持在 10.7(10.7.4 是最新的稳定版),直到您可以升级 docker(见下文)。

现在讨论这个问题 - 更多信息在这里:https://github.com/MariaDB/mariadb-docker/issues/434。问题似乎在于 10.8.3 使用 Debian Jammy 作为基础镜像,而不是 Focal,并且在旧版本的 docker 上运行 Jammy 内容会出现一些问题。根据 GH 上的评论者的说法,需要 docker 版本 20.10.10+,因此运行

docker --version
并查看您正在运行的内容。

最好的解决方案是升级Docker。如果你不能这样做,有一个

10.8-focal
标签当前指向 10.8.2 - 不过在使用它之前请参阅上面的评论。 还有一些标志可能会使 10.8.3 成功启动,您必须覆盖入口点。

如果一切都失败了,就坚持使用 10.7,直到你可以升级 docker,或者直到他们发布 10.8.3-focal 镜像(应该会到来,Docker 只是需要一段时间来更新官方镜像)。

编辑:这是关于问题根本原因的文章,其中包括一些其他可能的解决方法https://medium.com/nttlabs/ubuntu-21-10-and-fedora-35-do-not-work- on-docker-20-10-9-1cd439d9921

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