对运行中的服务做tomcat版本升级
创作者:吴仔汕
步骤
一、选择更新的目标服务,可以先检查它们容器中挂载的目录情况,若有映射目录,记录挂载出来的目录----Mount
# docker inspect ***
并检查该服务是否有 Link 其他服务
二、(若未映射) 将容器中tomcat下的webapps/ROOT目录拷贝到宿主机(未映射时)
#docker cp service_name:/usr/local/tomcat/webapps/ROOT /mnt
三、 镜像迁移:
①将需要升级的tomcat版本 镜像包进行打包
#docker save -o ***.tar 镜像名
② 将准备好的tomcat版本镜像上传到目标机器中(内网)
③ 导入目标镜像,并查看导入的镜像
#docker load < tomcat9.tar && docker images
四、当备份工作都准备好之后,开始升级
①停掉并删除目标容器,
#docker stop *** && docker rm ***
②以新的镜像运行目标服务,并将未挂载出来的目录(webapps/)挂载出来----
docker run -d --restart=on-failure:5 -p 8080:8080 --name dfl --link=mysql:mysql --link=stun:stun --link=minio:minio --link=redis:redis -v /opt/dfl/log:/usr/local/tomcat/logs -v /opt/dfl/webapps:/usr/local/tomcat/webapps -v /etc/localtime:/etc/localtime:ro tomcat:tomcat9-20210309
③ 将刚刚容器中拷贝出来的目录移至webapps/下,并改名为ROOT
五、重启服务,查看日志是否启动
六、升级成功!!!
原创作品,转载请标明出处!