springboot2 jar docker upload file 静态文件目录

最近做的项目中有一个生成二维码的功能,jar包部署到服务器的docker中后,二维码访问不到,原因是在服务器的docker里二维码生成后存放的路径和本地有所不同,解决步骤如下:

1.配置application.yml

    static-locations: classpath:static/,file:${jar.fileUrl}
# file配置(jar和fileUrl自己随意定义)/Users/lihui/work_me/
jar:
  fileUrl: /root/fangkebao/

springboot2 jar docker upload file 静态文件目录_第1张图片

2.修改生成二维码图片路径

springboot2 jar docker upload file 静态文件目录_第2张图片

3.修改dockerfile,增加 VOLUME 属性

springboot2 jar docker upload file 静态文件目录_第3张图片

4.重新打包jar,jar和dockerfile都重新更新到服务器上

5.进入服务器,先stop掉之前jar的docker image,然后在重新运行dockerfile,在重新运行jar

springboot2 jar docker upload file 静态文件目录_第4张图片

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

你可能感兴趣的:(springboot2 jar docker upload file 静态文件目录)