最近公司有项目,需要部署在linux系统上,采用docker部署了一套。
结果之前在windows系统上运行没问题的程序在linux系统上有问题,查看日志发现;
系统采用了一套外部模板,需要java内部读取,其中,路径是动态配置在yml文件中,yml配置的路径没问题,但是linux系统上在该文件中读取不到。
问题解决:
docker中有路径映射,在docker-compose.yml文件中相应的服务下添加路径映射即可。
afservice:
image: af
container_name: afservice
restart: always
depends_on:
- mysql
- consul
- redis
- rabbitmq
- configservice
ports:
- '9698:9698'
volumes:
- "./data/af:/ut/af"
- "./data/py:/ut/py"
volumes中为路径映射,最后一句为添加的路径映射,添加完成以后重启即可,问题解决。
在将Windows上的程序迁移到Linux系统并使用Docker部署时,遇到读取外部模板路径的问题。尽管yml配置文件路径正确,但程序无法在Linux环境下识别。通过在docker-compose.yml文件中添加路径映射解决该问题,具体做法是在服务配置中增加对./data/af和./data/py目录的映射,映射到容器内的/ut/af和/ut/py目录,重启服务后问题得到解决。
9581

被折叠的 条评论
为什么被折叠?



