java - 如何同步在 docker 容器上运行的 java 应用程序的时间?

标签 java docker spring-boot dockerfile microservices

我是这样的 docker 文件:

FROM anapsix/alpine-java:jre8 
ADD service-god-sac-1.0.0-SNAPSHOT.jar app.jar 
ENTRYPOINT ["java", "-Xmx64m", "-XX:MaxMetaspaceSize=64m", "-jar", "/app.jar"]

当我编译和部署应用程序时,使用这个设置时间:

-v /etc/localtime:/etc/localtime:ro

我注意到主机时间和容器时间是同步的,但应用程序的日志显示不同的时间,UTC 时间。 如何同时同步主机、容器和 java 应用程序?

最佳答案

映射本地时间和时区非常有效。

例子:

docker run -d -v /var/lib/elasticsearch:/var/lib/elasticsearch -v /etc/localtime:/etc/localtime:ro -v /usr/share/zoneinfo/America/Buenos_Aires:/etc/timezone:ro -p 80:80/tcp -p 9200:9200/tcp -p 514:514/udp petergrace/elk

关于java - 如何同步在 docker 容器上运行的 java 应用程序的时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34534079/

相关文章:

java - java文件的大小有限制吗?

docker - ubuntu-core 作为基础镜像中的容器操作系统

java - docker 容器内的 Spring 启动抛出 java.net.ConnectException : Connection refused (Connection refused)

java - Junit:测试用例分离

java - 如何使用java将文件从sftp复制到亚马逊s3

java - 如何在 BlueJ 中为 ArrayList 输入参数?

docker - 如何将相同的本地文件夹结构复制到docker容器?

python - Docker Flask ModuleNotFoundError : No module named 'flask'

java - 为什么使用此 WSDL 时我的 SOAP 请求始终为空?

java - Mongo Java 驱动程序 ObjectId.getCounter() 已弃用