Recently, when I was using Docker to deploy a Java application, I found that the time zone was wrong. Using JDK to get the current time was 8 hours slower than the standard time zone. Solution:Solution 1. Modify DockerfileSet the time zone of the Alpine Linux system. Find the documentation of Alpine Linux and learn that the time zone can be set through the tzdata package. When building the Docker image, add this sentence to the Dockerfile: RUN apk --update add tzdata && \ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ echo "Asia/Shanghai" > /etc/timezone && \ apk del tzdata && \ rm -rf /var/cache/apk/* Complete Dockerfile FROM openjdk:8-jre-alpine3.9 RUN apk --update add tzdata && \ cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ echo "Asia/Shanghai" > /etc/timezone && \ apk del tzdata && \ rm -rf /var/cache/apk/* # copy the packaged jar file into our docker image COPY application.jar /application.jar Document link: wiki.alpinelinux.org/wiki/Setting… Solution 2. Set the JVM's system default time zoneWhen starting the Docker image, set the time zone by setting the user.timezone JVM environment variable java -jar -Duser.timezone=Asia/Shanghai app.jar Solution 3. Mount the host machine’s time zone file into the Docker containerThe cluster solution uses K8S. When deploying, mount the host's time zone file into the Docker container. apiVersion: apps/v1 kind: Deployment metadata: name: SERVICE_NAME spec: replicas: 1 selector: matchLabels: app: SERVICE_NAME template: metadata: labels: app: SERVICE_NAME spec: containers: - name: SERVICE_NAME image: IMAGE_TAG imagePullPolicy: Always ports: - containerPort: 80 volumeMounts: - name: tz-config mountPath: /etc/localtime volumes: - name: tz-config hostPath: path: /etc/localtime Check if it is running normally date -R Reference Documents: quaded.com/docker-apli… blog.csdn.net/jeikerxiao/… This is the end of this article about solving the time zone problem of Docker Alpine image. For more relevant content about Docker Alpine image time zone, please search 123WORDPRESS.COM’s previous articles or continue to browse the following related articles. I hope everyone will support 123WORDPRESS.COM in the future! You may also be interested in:
|
<<: An in-depth summary of MySQL time setting considerations
>>: Implementation code for adding slash to Vue element header
CSS naming conventions (rules) Commonly used CSS ...
Table of contents 1. Mini Program Subcontracting ...
Initialize Data DROP TABLE IF EXISTS `test_01`; C...
As more and more Docker images are used, there ne...
Table of contents Problem scenario: Solution: 1. ...
I searched online and found that many interviews ...
The party that creates a new connection is equiva...
Table of contents 1. What is Set 2. Set Construct...
Implement div wheel zooming in and out in Vue pro...
Say it in advance On a whim, I want to know what ...
Table of contents 1. Reference plugins in the uni...
Worms replicate, as the name implies, by themselv...
Table of contents How to rename MySQL database Th...
System tray icons are still a magical feature tod...
I have learned some basic selectors of CSS before...