我们部署了clklog作为系统访问行为分析,其它工作的不错,但我发现地域分析页面里,地图上的数据一直为空,旁边的表格里有数据,但都是拼音,这怎么回事呢?

Deepseek, 百度各种搜索,都没找到根源,不得已,查看源码才发现,这个实现还挺绕的,
clk-manage模块负责周期性的把setting/目录下的中英文对照文件加载到redis中去,而process模块每次分析再从redis中读取进行映射。但manage模块是从{user.dir}/setting/目录下去读取的,这个文件根本就没有打进docker镜像里去,估计是它期待我们给它从外部mount上去的,但我不想这么麻烦,于是改dockerfile重新打包,把相关文件放进去镜像里,问题就解决了。
修改后的Dockerfile:
···
FROM docker.m.daocloud.io/eclipse-temurin:8-jre
WORKDIR /app #这里指定目录
VOLUME /tmp
ARG JAR_FILE=target/clklog-manage-.jar
ENV JAVA_OPTS=
ENTRYPOINT "entrypoint.sh"
EXPOSE 8080
COPY docker-entrypoint.sh /usr/local/bin/entrypoint.sh
COPY ${JAR_FILE} /app.jar
#复制进去
RUN mkdir -p /app/setting
COPY setting/ /app/setting/
···
重新部署后,过一会儿再去看:

美丽的中文来了!!!