其他分享
首页 > 其他分享> > 测试开发CICD——Docker——如何修改 docker 容器的目录映射

测试开发CICD——Docker——如何修改 docker 容器的目录映射

作者:互联网

问题背景

 docker run -d -p 9999:8080 -i --name tomcat7 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat:7

 

删除原有容器,重新创建新的容器

删除容器

docker rm -f 容器ID/名字

 

重新创建容器

 docker run -d -p 9999:8080 -i --name tomcat7 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:7

重新指定需要映射的目录

 

优点

简单粗暴,在测试环境用的更多

 

缺点

如果是数据库、服务器相关的容器,创建新的容器,又得重新配置相关东西了

 

修改容器配置文件(重点)

暂停 Docker 服务

systemctl stop docker

 

进入 Docker 容器配置文件目录下

cd /var/lib/docker/containers/
ls

 

进入某个容器的配置文件目录下

容器ID 就是文件夹名称,可通过 docker ps -aq 来查看,不过这是缩写,对照起来看就行

cd c614b6db4aed0c8d0c742baa09ff4e2c24761703586460b68633d7b66e62c633
ls

 

修改 config.v2.json

vim config.v2.json

 

MountPoints 节点

其实是一个 json 结构的数据,下图

 

重新启动 Docker 服务

systemctl stop docker
docker start tomcat7
cd /usr/local/tomcat/webapps
ls

重新映射目录成功!!

 

注意

 

优点

直接操作配置文件没有副作用,算简单

 

缺点

需要暂停 Docker 服务,会影响其他正常运行的 Docker 容器

 

使用 docker commit 命令

停止 Docker 容器

docker stop tomcat7

 

使用 commit 构建新镜像

docker commit tomcat7 new_tomcat7
docker images

 

使用新镜像重新创建一个 Docker 容器

 docker run -d -p 9999:8080 -i --name tomcat77 -v /usr/local/tomcat/webapps:/usr/local/tomcat/webapps tomcat:7

 

修改新容器的名字

如果新容器想用回旧容器的名字,需要先删了旧容器,再改名

docker rm -f tomcat7
docker rename tomcat77 tomcat7
docker ps

 

优点

 

缺点

需要生成新的镜像和容器,管理镜像和容器的时间成本会上升

标签:容器,tomcat,CICD,tomcat7,webapps,Docker,docker
来源: https://www.cnblogs.com/xiaobaibailongma/p/15143287.html