logo
当前位置:首 页 > 编程技术 >后端开发 >docker > 查看文章

玩坏了docker怎么恢复

docker, 后端开发, 编程技术 你是第2004个围观者 0条评论 供稿者: 标签:,

今天操作docker容器内的数据库经常提示too many connect之类的。想想,这个必须得改啊,然后输入命令

docker exec -it mysql /bin/bash

进入之后直接进入etc中的MySQL文件夹那就是一通配置修改啊。

改完后不忘wq退出保存。都快飘了,然后

docker restart mysql

改好了之后当然是看下日志有没有报这些了

docker logs -f mysql

然后,悲剧就被发现了,对的,确实是被发现,因为在重启MySQL的docker镜像的时候悲剧就发生了,MySQL没启起来。这没有启起来要恢复配置的文件也不会啊,这下可完犊子了。百度了下说是卸载重新装镜像就好了。想想也是,以前刚毕业工作弄坏了数据库不知道配置哪条不对不是就覆盖的default的配置嘛,现在想想几十万的数据。准备收拾下细软等着被炒。

 

整理好后,想想没事,就谷歌看看有啥办法。因为docker是弱隔离的容器,所以在本地应该可以访问到的,于是查了下命令。还真有

 docker inspect [CONTAINER ID]

这个就是看看需要知道的容器的位置,按照这个指示我就输入了我的:

docker inspect mysql

 

找到graphdriver这行,找到MergedDir 这个配置项。看到这里你就要进行操作了对不对。告诉你,太天真了

有的容器服务器使用的docker启动时用的root权限,现在打开这个路径直接报 的是你的层级太低了,这个目录不是你能来的。sudo我都试过了,无效,只能用root的权限开启,然后看到了进入镜像看到的一样的目录文件,进入etc的mysql文件夹还原了配置,然后docker run一下然后docker ps下发现服务成功跑起。高兴自己的饭碗暂时回到了手中。将打包的细软重新摆放好,高高兴兴的去食堂吃饭去了

 

说说梦想,谈谈感悟 ,聊聊技术,有啥要说的来github留言吧 https://github.com/cjx2328

—— 陈 建鑫

陈建鑫
footer logo
未经许可请勿自行使用、转载、修改、复制、发行、出售、发表或以其它方式利用本网站之内容。站长联系:cjx2328#126.com(修改#为@)
Copyright ©ziao Studio All Rights Reserved. E-mail:cjx2328#126.com(#号改成@) 沪ICP备14052271号-3