Docker修改容器内部文件的3种简单方法
下面三种均可修改,可自行选择
1、进入容器内部修改
使用下面的命令以命令行的形式可以进入容器的内部对文件进行修改。
docker exec -it 容器ID /bin/bash
不过里面没有vim,需要自行安装,安装代码如下所示。不过不推荐这种形式,因为里边的文件是临时的,容器被删除之后,配置就失效了,需要从新配置。
apt-get update apt-get install vim
2、通过docker cp拷贝进行修改
可以通过下面的代码将需要修改的文件拷贝出来,修改完成之后再拷贝回去。这种方式其实和第一种差不多,只是不用安装vim,但是容器被删除之后,修改过的内容也会失效。而且需要重启容器才能生效(好像)
#将容器中的文件拷贝出来 sudo docker cp 容器ID:/etc/mysql/my.cnf /home/tom/ #将容器中的文件拷贝回去 sudo docker cp /home/tom/my.cnf 容器ID:/etc/mysql/
3、使用-v挂载文件夹(推荐)
最后一种方法是在启动的时候使用-v将容器内部的文件夹挂载(映射)到本地的某个路径下,以后以后可以直接在本地修改,不需要进入容器内部.
#冒号前是本地路径(需要绝对路径),冒号后是容器中的路径 $ docker run --name mytomcat -v /home/www/webapps:/usr/local/tomcat/webapps -d tomcat
最后重启容器(必须要重启,才能生效)
docker restart 容器id
附:docker修改容器内部只读文件
要修改 Docker 容器内部的只读文件,可以使用以下步骤:
首先,使用
docker ps命令查看正在运行的容器列表,并找到要修改的容器的名称或 ID。使用
docker exec -it <容器名称或ID> bash命令进入容器的交互式终端。在容器内部,找到要修改的只读文件的位置,并使用适当的编辑器(如 vi、nano 等)打开该文件。
在编辑器中,进行所需的修改并保存文件。
退出容器的交互式终端,可以使用
exit命令。
注意:以上步骤只适用于在容器内部修改只读文件。如果需要在启动容器时就修改只读文件,可以通过构建自定义的 Docker 镜像来实现。
总结
您可能感兴趣的文章
- 01-12Docker部署rabbitmq遇到的两个问题
- 01-12最新虚拟机VMware 14安装教程
- 01-12使用docker compose安装harbor私有仓库的详细教程
- 01-12Windows下Docker安装各种软件的详细过程
- 01-12seata docker 高可用部署的详细介绍
- 01-12浅谈Tomcat多层容器的设计
- 01-12Gogs+Jenkins+Docker 自动化部署.NetCore的方法步骤
- 01-12解决vscode docker插件docker.socket权限问题
- 01-12Docker中运行PostgreSQL并推荐几款连接工具
- 01-12Docker核心原理之 Cgroup详解


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-23linux中ftp无法访问怎么办
- 12-11docker存储目录迁移示例教程
- 12-10docker start启动容器后仍然exit状态的解决
- 12-10Linux下如何安装Logstash
- 12-05Docker安装Jenkins全过程
- 01-05Shell脚本去重的几种方法实例
- 12-22kvm虚拟机配置NAT端口转发的实现方法
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法




