linux安装mysql没有可用镜像

linux安装mysql没有可用镜像,第1张

linux安装mysql没有可用镜像可以这样 *** 作

1、查看可用的MySQL版本

2、拉取MySQL镜像

3、查看本地镜像

4、运行容器

5、连接MySql,访问MySQL服务安装成功。

在docker中有一个mysql服务,其数据文件是挂在在主机外面的文件,在docker中的root有访问该数据文件的权限,但是docker中mysql访问数据文件的时候提示权限不足,于是只有以root用户来启动mysql了。

数据初始化:

mysql_install_db --user=root --explicit_defaults_for_timestamp=111

初始化后以root用户启动

mysqld --user=root --explicit_defaults_for_timestamp=111

mysql启动正常。

启动方式主要有以下三种:

1、使用systemctl 启动 systemctl start mysqld

2、使用脚本启动 /etc/inint.d/mysqld start

3、使用safe_mysqld或mysqld --user=mysql启动

关闭方式也有以下三种:

1、使用systemctl 关闭 systemctl stop mysqld

2、使用脚本关闭 /etc/inint.d/mysqld stop

3、mysqladmin shutdown

注意:使用safe_mysqld或mysqld --user=mysql启动的服务,只能通过mysqladmin shutdown关闭,不能通过systemctl 或脚本关闭。

mysqladmin shutdown可关闭以上三种服务。脚本可关闭systemctl开启的服务,同样systemctl也可关闭脚本开

本次安装,没有选择现成的镜像,从docker的github上,把dockerfile搞到本地,然后build镜像。如果不出意外的话,步骤很简单。

dockerfile文件在此: https://github.com/docker-library/mysql/blob/master/8.0/Dockerfile.debian

把dockerfile:Dockerfile.debian复制也好,wget也好,搞到本地,然后执行:

经过漫长的等待,期待,docker给我报了个错误。截图如下:

可见,报错内容为:目录不存在,不过/var/lib/docker/tmp/docker-builderxxxxx这个目录,是build在运行时的临时目录,build完成后,就会被删掉。所以,在build的时候,这里有没有docker-builderxxxxx这个目录,目录下有没有config,我也不知道。

但是问题还是要解决的,看一下dockerfile的内容

这样,把dockerfile里需要的内容,都手动的放到当前目录里,在此build。就可以通过了。

为什么直接执行build,会提示在tmp目录下找config呢?我觉得是build的时候,tmp目录下的docker-builderxxxxx目录会映射到当前目录。报的这个错误其实就是从当前目录找config文件,当前目录没有,就去映射的docker-builderxxxxx目录下找,而docker-builderxxxxx目录下因为我不知道的原因也没有,所以就报错了。只需要确保当前目录下有dockerfile里需要的文件就可以解决了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8593723.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-18
下一篇 2023-04-18

发表评论

登录后才能评论

评论列表(0条)

保存