mariadb的Dockerfile-容器停止运行

1qczuiv0  于 12个月前  发布在  Docker
关注(0)|答案(1)|浏览(137)

我试图基于Debian镜像为Mariadb构建一个自定义镜像,但问题是在我运行容器后,它开始运行并在1秒后停止。
我想使用docker exec -it ...与它交互,但我无法访问容器。
这就是Dockerfile。我知道这并不完整:

**`FROM debian

RUN apt-get update && apt-get install mariadb-server -y

COPY ./conf/50-server.cnf /etc/mysql/mariadb.conf.d

CMD ["mysqld"]
`**

我只是更改了与0.0.0.0的绑定
我做了很多测试,

w6mmgewl

w6mmgewl1#

有什么特殊的原因需要自己构建一个mariadb镜像,而不是使用Dockerhub的官方镜像吗?
官方版本提供了更好的兼容性,更少的不需要的软件,可配置的ENV和更好的安全性。
对于您的问题:在构建容器并以交互式终端模式运行时,您可以看到容器的输出:docker build -t my-mariadb. && docker run --rm -it my-mariadb
在我的机器上,它输出:

mysqld: Please consult the Knowledge Base to find out how to run mysqld as root!
2023-10-19 17:06:22 0 [ERROR] Aborting

docs说如果你绝对需要的话可以使用--user=root选项--这是不推荐的。
此外,每次容器被重新创建时,您都会丢失所有数据。也许如果你必须使用你自己的mariadb的docker镜像,你可能需要在你的Dockerfile中添加一个卷行VOLUME [ "/var/lib/mysql" ]

相关问题