chown:更改“/var/lib/mysql/”的所有权:不允许操作

Lae*_*eeq 5 mariadb openshift docker openshift-origin dockerfile

我正在尝试在 openshift 源上部署一个 mariadb 映像。我在我的 docker 文件中使用 mariadb:10.2.12。它在本地工作正常,但是当我尝试在 openshift 源上部署时出现以下错误。

正在初始化数据库 chown:更改“/var/lib/mysql/”的所有权:不允许操作无法将数据库目录的所有权更改为“mysql”用户。检查您是否具有必要的权限,然后重试。

chown 命令来自 mariadb:10.2.12 Docker 文件。

最初我遇到了 openshift origin 不允许的 root 用户问题,所以现在我正在使用

用户 mysql

在 docker 文件中。现在我没有收到以 root 身份运行的警告,但仍然 openshift origin 不喜欢 chown。请记住,我不是原始管理员,只是用户。我的docker文件如下:

FROM mariadb:10.2.12

ENV MYSQL_DATABASE="db_profile"

COPY ./my.cnf /etc/mysql/my.cnf
COPY ./db_profile.sql /docker-entrypoint-initdb.d/

USER mysql

EXPOSE 3306
Run Code Online (Sandbox Code Playgroud)

在本地我按如下方式运行它:

码头工人建造。-t laeeq/ligandprofiledb:0.0.1

docker run --name test-mysql -e MYSQL_ROOT_PASSWORD=mypassword -d laeeq/ligandprofiledb:0.0.1

是否有解决此 chown 问题的解决方法?

Gra*_*ton 2

DockerHub 上的 MariaDB 镜像没有遵循不需要以root用户身份运行的良好实践。

您应该使用 OpenShift 提供的 MariaDB 映像。例如:

centos/mariadb-102-centos7
Run Code Online (Sandbox Code Playgroud)

看:

应该能够从 OpenShift Web 控制台的服务目录浏览器中选择 MariaDB,或者mariadb从命令行使用模板。