最近在學(xué)習(xí)canal相關(guān)知識(shí)港令,于是修改docker中mysql的配置文件mysqld.cnf
葵袭,修改后執(zhí)行docker restart mysql
后發(fā)現(xiàn)沒有起來暇唾,執(zhí)行docker logs -f --tail 10 mysql
条摸,出現(xiàn)如下的錯(cuò)誤:
file
既然配置文件出錯(cuò)了欠窒,那改過來就好了覆旭,但是執(zhí)行docker exec -it mysql /bin/bash
準(zhǔn)備先進(jìn)入容器再更改配置,發(fā)現(xiàn)進(jìn)不去aP徒!因?yàn)閑xec命令只適用于正在運(yùn)行的容器荐虐。
解決方式
方式一
在當(dāng)前主機(jī)中存放了docker容器中的配置信息(一般默認(rèn)目錄是:/var/lib/docker/overlay/
)七兜,那只要找到這個(gè)配置文件,修改后就可以重新啟動(dòng)了福扬。
方式二
使用docker cp
命令腕铸,把docker容器中的配置文件復(fù)制到主機(jī)中來,然后修改完后再復(fù)制到docker容器中去铛碑。
具體操作
經(jīng)過實(shí)操狠裹,方式一的方式會(huì)比較麻煩,這里只介紹方式二汽烦。
1涛菠、將docker容器內(nèi)的文件拷貝至宿主機(jī)中
docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf .
注:****
.
****代表是當(dāng)前目錄
2、vim修改配置文件中出錯(cuò)的地方,重新修改回來
3碗暗、復(fù)制修改后的配置文件到docker容器中去
docker cp my.cnf mysql:/etc/mysql/my.cnf
4颈将、重啟容器實(shí)例
docker restart mysql
最后成功啟動(dòng)!Q粤啤晴圾!
本文由博客一文多發(fā)平臺(tái) OpenWrite 發(fā)布!