docker容器修改了配置后,容器启动失败,想要再去修改配置文件,发现容器没启动,就不能访问里面的文件,这该怎么办?
我这里演示的是容器中多了一个文件导致启动失败,需要删除那个文件才能启动,如果你们是修改配置文件,在删除操作那里改用编辑即可。
1、首先找到目标容器的名称或 ID:
docker ps -a
我这里的容器名称是 investigate_es2,
2、使用 docker cp 将文件复制到宿主机:
docker cp investigate_es2:/usr/share/elasticsearch/plugins/ik_Z3G3dD.tar.gz /tmp/ik_Z3G3dD.tar.gz
3、创建临时容器并挂载文件系统:
docker run --rm -it --entrypoint /bin/bash -v $(docker inspect --format '{{ .GraphDriver.Data.UpperDir }}' investigate_es2):/mnt elasticsearch:7.17.15
4、在这里删除或修改对应的文件
rm /mnt/usr/share/elasticsearch/plugins/ik_Z3G3dD.tar.gz
5、退出临时容器:
exit
6、启动目标容器:
docker start investigate_es2