Docker 修改无法启动的docker容器的配置
问题描述在运行的docker修改了一些配置信息,因为配置写错,导致docker容器无法重新启动解决思路由于docker无法通过命令行的方式进入容器,所以想通过命令行修改的想法失败。那怎么修改呢?如果你用的是linux系统,linux一些皆文件,给我们提供了一个思路,docker 的容器目录一般是在/var/lib/docker/overlay下面,相关的配置信息也在此目录下...
·
问题描述
在运行的docker修改了一些配置信息,因为配置写错,导致docker容器无法重新启动
解决思路
由于docker无法通过命令行的方式进入容器,所以想通过命令行修改的想法失败。
那怎么修改呢?
如果你用的是linux系统,linux一些皆文件,给我们提供了一个思路,docker 的容器目录一般是在/var/lib/docker/overlay下面,相关的配置信息也在此目录下面,如果这里的配置改对了,启动也就OK了。
解决步骤
- 查看报错信息,命令docker logs CONTAINER_ID
[root@ytx187 ~]# docker logs efaccf6eb84c
ERROR: mysqld failed while attempting to check config
command was: "mysqld --verbose --help --log-bin-index=/tmp/tmp.1whPbDshUV"
2018-03-23 17:26:46 0 [Note] mysqld (mysqld 5.6.36-log) starting as process 10 ...
2018-03-23 17:26:46 10 [Note] Plugin 'FEDERATED' is disabled.
2018-03-23 17:26:46 10 [ERROR] mysqld: unknown variable 'erver_id=111'
2018-03-23 17:26:46 10 [ERROR] Aborting
- 因为我的报错跟my.cnf有关,所有我全局查找了以下
[root@ytx187 ~]# find / -name my.cnf |grep '/etc/mysql/my.cnf'
/var/lib/docker/overlay/32cf05fc36034eb78b6c458085df4e537fecb9e39117a4bd24fb7fd18ff79f97/upper/etc/mysql/my.cnf
/var/lib/docker/overlay/85eb2094b681326d4a203ad88a1715c1cb224575123eb417170101500f263b79/root/etc/mysql/my.cnf
查到两条记录,打开这两条数据,发现配置信息错误的地方,通过vim修改之后,重新启动容器,就好了
总结
其实,直接进入容器修改配置文件,出错了也可以在宿主主机上修改,这个和指定配置文件是一样的道理,只不过,在没有指定的情况下,配置是默认的,是docker自动生成的
更多推荐
已为社区贡献2条内容
所有评论(0)