概述
-dockerfile实现上述内容,生成一个新镜像
【【整理mysql目的+过程】】
-远程连接mysql
-拉取mysql镜像
-docker run 运行镜像并且暴露端口
-进入容器中并mysql -uroot -p 使用mysql
-在容器外用navicate与容器连接查看容器内与容器外的同步情况
-mysql容器日志的查看
-保证数据持久化 -v
-mysql存放信息目录
-dockerfile实操
-其他
--修改mysql字符集
--在容器外对容器内建库建表,能在容器中看到所创建的库和表
--与上述相反
--看容器日志的变化
-dockerfile编写实现mysql主题需求
-目的:拉取mysql镜像并且下载vim工具
-目的:在dockerhub上拉取mysql镜像,将host主机上的/home/volume与容器中/home/volume进行挂载,并且对暴露容器的端口,设置容器的工作目录默认就在/home/volume
-过程整理+问题输出:
-- 远程连接
-- mysql存放信息目录 ------> /etc/mysql/mysql.conf.d/mysqld.cnf 在这个文件中保存着存mysql数据/错误日志的目录,注意:默认没有日志显示默认日志存在的目录,是需要去自己更改?
-- 保证数据持久化 -v 这里只需要在docker run中加权限的要求即可--privileged=true,注意:在host主机中没有mysql软件
成功实例:
运行容器:
docker run -itd --name m2q -v /home/mysql/volum:/home/a --privileged=true -e MYSQL_ROOT_PASSWORD=root f26e21ddd20d
进入容器:docker exec -it d45 /bin/bash
-- 启动mysql docker run -dit -e MySQL_ROOT_PASSWROD=root mysql ----- > 这里要注意,启动mysql服务最后不能通过 /bin/bash启动 进入容器是通过 /bin/bash进入到容器中,在dockerfile中也是要这样,CMD不能是/bin/bash 当要在容器中启动mysql的时候
-- mysql -uroot -p 登录mysql ---> 可以实现
-- 更改mysql的字符集
-- -p参数 对容器中mysql的端口暴露到host主机上,与外面连接 ------> 若通过host主机与容器中的mysql连接 host主机上也要有mysql软件,容器中也要有 否者host主机无法远程登录到容器中的mysql 若存在上述说的方式 则命令 : mysql -uroot -p -P[host主机的端口] -h[host主机的IP地址] 若通过navitact与容器中的mysql连接,则通过在navitact中输入虚拟机中host主机的IP,端口,容器mysql的用户和密码
-- 数据信息目录 官方的mysql容器的信息目录是在 /etc/mysql/mysql.conf.d/mysqld.cnf 在这个文件中记录着数据/日志的存在的目录
--在容器外对容器内建库建表,能在容器中看到所创建的库和表 ---->无误 但是当在容器中创建库和表要在外面看时不会同时更新
--dockerfile中EXPOSE 暴露端口是无效的,将端口的暴露放到docker run中去设定是没有问题的
-缓存区:
1,--mysql存放信息目录 实践内容:验证数据库存放的内容是在mysql配置文件中指定的目录下存放着,答案:对
2,启动mysql docker run -dit -e MySQL_ROOT_PASSWROD=root mysql 这里提出的问题是 docker run 之后不用/bin/bash启动 容器启动后会自动退出,若出现这问题建议重启容器
最后
以上就是无心大船为你收集整理的docker容器安装mysql及注意事项的全部内容,希望文章能够帮你解决docker容器安装mysql及注意事项所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复