最近做的项目中有一个生成二维码的功能,jar包部署到服务器的docker中后,二维码访问不到,原因是在服务器的docker里二维码生成后存放的路径和本地有所不同,解决步骤如下:
1.配置application.yml
static-locations: classpath:static/,file:${jar.fileUrl}
# file配置(jar和fileUrl自己随意定义)/Users/lihui/work_me/
jar:
fileUrl: /root/fangkebao/
2.修改生成二维码图片路径
3.修改dockerfile,增加 VOLUME 属性
4.重新打包jar,jar和dockerfile都重新更新到服务器上
5.进入服务器,先stop掉之前jar的docker image,然后在重新运行dockerfile,在重新运行jar
6.访问 http://127.0.0.1:8099/ 重新生成二维码即可
注:最好将目录挂载到宿主机上,这样方便之后更换容器时二维码统一保存
docker run -d --name fangkebao5 -p 8099:8080 -v ~/root/fangkebao/QRcode:/root/fangkebao/QRcode fangkebao:1.0.5