設置docker容器 時區


利用docker來部署服務,經常遇到的一個問題是如何解決容器內的時區問題.

假設現在啟動的鏡像是tomcat:8.0.35-jre8

 
/*直接用宿主機器上的時區默認覆蓋容器內的時區配置文件即可,也就是跟宿主機器同樣的時區配置 */ # docker run -v /etc/localtime:/etc/localtime:ro --name=tomcat tomcat:8.0.35-jre8

但是我相信如果寫過java的人仍然發現通過java 中new Date()獲取到的仍然是容器默認的時區,而是宿主機器上的時區配置,因為java是通過獲取timezone來設置時間的。不廢話,繼續看以下命令:

/* 這里配置的環境變量 Asia/Shanghai就是我所需要的時區 */ # docker run -e TZ="Asia/Shanghai" -v /etc/localtime:/etc/localtime:ro --name=tomcat tomcat:8.0.35-jre8


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM