MySQL容器的Docker运行失败,使用卷时出现权限错误-Catalina MacOS X



我正在从mac os x Catalina终端运行以下命令:

docker run -p 13306:3306 --name mysqltest -e MYSQL_ROOT_PASSWORD="password12" --volume /usr/local/mysql_data:/var/lib/mysql -d mysql:latest 

我在控制台屏幕上得到以下错误:

docker:来自守护进程的错误响应:拒绝对运行的拉取访问,存储库不存在或可能需要"docker登录":拒绝:拒绝请求对资源的访问
请参阅"docker run--help"。

如果我在不带--volume或-v选项的情况下运行该命令,则该命令将运行并工作。

此外,如果我在设置了卷选项的情况下从Docker面板运行,我会在日志屏幕上看到以下错误:

2022-04-12 19:44:03+00:00〔注意〕〔入口点〕:MySQL Server 8.0.28-1debian10的入口点脚本已启动
chown:更改"/var/lib/mysql/"的所有权:不允许操作**

这似乎表明权限问题,但我确实将此路径添加到了资源中->docker面板中的文件共享。我看到一些文章表明Catalina和Docker存在问题,但没有找到解决问题的方法。

因此,根据文档,默认情况下,所有连接的卷都将使用:rw,经过几次测试,我可以在mac中看到情况并非如此,因此将:rw添加到卷中,它将在中工作

docker run -p 13306:3306 --name mysqltest -e MYSQL_ROOT_PASSWORD="password12" --volume /usr/local/mysql_data:/var/lib/mysql:rw -d mysql:latest

也适用于命名卷:

docker run -p 13306:3306 --name mysqltest -e MYSQL_ROOT_PASSWORD="password12" --volume mysql_data:/var/lib/mysql -d mysql:latest

最新更新