服务器java容器升级记
jfatty
2020年11月14日 · 阅读 2,334
1.首先查看服务器现有容器镜像列表
docker images
2.删除不使用的镜像,清理出更多可用磁盘空间
[root@iZm5e1a7ffsihemjcwtke5Z ~]# docker rmi rabbitmq
Error response from daemon: conflict: unable to remove repository reference "rabbitmq" (must force) - container 4ff41a93bf69 is using its referenced image 72469b528c2d
[root@iZm5e1a7ffsihemjcwtke5Z ~]# docker rm -f 4ff41a93bf69
4ff41a93bf69
[root@iZm5e1a7ffsihemjcwtke5Z ~]# docker rmi rabbitmq
[root@iZm5e1a7ffsihemjcwtke5Z ~]# docker rmi consul
[root@iZm5e1a7ffsihemjcwtke5Z ~]# docker rmi 17c2bb09f482
Error response from daemon: conflict: unable to delete 17c2bb09f482 (must be forced) - image is referenced in multiple repositories
[root@iZm5e1a7ffsihemjcwtke5Z ~]# docker rmi -f 17c2bb09f482
原java容器装有tomcat8.5.49(jdk8)的环境先要升级到Apache Tomcat/9.0.39(java11)
拷贝出原有的项目以及tomcat中配置的ssl有关配置文件
从docker容器中拷贝数据与从外部拷贝数据到docker容器
docker cp 4b3f8de49dff:/usr/local/tomcat/logs/* /data/tomcat/
[root@iZm5e1a7ffsihemjcwtke5Z tmp]# docker cp tomcat8.5.49:/usr/local/tomcat/webapps/ /data/tmp/webapps/
[root@iZm5e1a7ffsihemjcwtke5Z tmp]# ls
apps webapps
[root@iZm5e1a7ffsihemjcwtke5Z tmp]# docker cp tomcat8.5.49:/usr/local/tomcat/conf/ /data/tmp/
[root@iZm5e1a7ffsihemjcwtke5Z tmp]# ls
apps conf webapps
3.拉取tomcat9镜像
tomcat9 配置ssl
keystore.jks是需要生成并上传到conf目录下的
<Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol"
maxThreads="150" SSLEnabled="true"
scheme="https" secure="true"
keystoreFile="/usr/local/tomcat/conf/keystore.jks"
keystorePass="12345678" clientAuth="false">
</Connector>
4.启动容器,非war包程序,若想容器开机项目自启动,可以转化为war包程序
docker run --privileged --name tomcat9 -p 943:943 -p 1000:8080 -p 1443:8443 \
-e TZ="Asia/Shanghai" -e JAVA_OPTS='-server -Dfile.encoding=UTF-8 -Xms2g -Xmx2g -Xmn512m -Xss512K' \
-v /data/tomcat9/apps:/usr/local/tomcat/apps \
-v /data/tomcat9/logs:/usr/local/tomcat/logs \
-v /data/tomcat9/conf:/usr/local/tomcat/conf \
-v /data/tomcat9/webapps:/usr/local/tomcat/webapps \
-d tomcat:latest
5.最后确保升级成功,访问一下应用做测试
https://subdomin.example.com.cn:1443/
本文作者:jfatty