docker部署springboot項目啟動時間與宿主機相差8小時的解決
問題描述:
docker部署springboot項目時明明指定了鏡像和啟動容器的時區(qū),但是進入docker系統(tǒng)時間還是不對。
Dockerfile:
# 基礎(chǔ)鏡像 FROM openjdk:8 #申明一個環(huán)境變量 #ENV HOME_PATH /home #指定容器啟動時,執(zhí)行命令會在該目錄下執(zhí)行 #WORKDIR $HOME_PATH #應用構(gòu)建成功后的jar復制到容器指定目錄下 ENV TZ="Asia/Shanghai" COPY . . ADD target/test.jar test.jar #容器啟動時執(zhí)行的命令 ENTRYPOINT ["java","-jar","-Xms512m","-Xmx512m","-Xss256k","test.jar"]
Docke-compose:
version: '3'
services:
test-service:
# 指定容器名稱
container_name: test
# 重啟機制
restart: always
image: test:v2.0.3
volumes:
# 掛載日志和時區(qū)
- ./log:/log
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
ports:
- "39084:39084"
environment:
# 指定時區(qū)
- TZ="Asia/Shanghai"宿主機時間:
ubuntu@VM-0-12-ubuntu:$ date -R Mon, 28 Nov 2022 17:55:52 +0800
進入docker機器看時間
docker exec -it 容器名 date -R Mon, 28 Nov 2022 09:58:08 +0000
發(fā)現(xiàn)相差了8小時。
解決方法:
在啟動java 項目時加上-Duser.timezone=GMT+08參數(shù),指定時間。
具體Dockerfile
# 基礎(chǔ)鏡像 FROM openjdk:8 #申明一個環(huán)境變量 #ENV HOME_PATH /home #指定容器啟動時,執(zhí)行命令會在該目錄下執(zhí)行 #WORKDIR $HOME_PATH #應用構(gòu)建成功后的jar復制到容器指定目錄下 ENV TZ="Asia/Shanghai" COPY . . ADD target/test.jar test.jar #容器啟動時執(zhí)行的命令 ENTRYPOINT ["java","-jar","-Xms512m","-Xmx512m","-Xss256k","-Duser.timezone=GMT+08","test.jar"]
docker logs -f 容器名 查看項目時間發(fā)現(xiàn)已經(jīng)正常。
2022-11-28 17:56:54.968 INFO 1 [http-nio-39084-exec-1]{magenta} --- [io-39084-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started
2022-11-28 17:56:54.987 INFO 1 [http-nio-39084-exec-1]{magenta} --- [io-39084-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 19 ms
2022-11-28 17:56:55.018 INFO 1 [http-nio-39084-exec-1]{magenta} --- [io-39084-exec-1] c.m.o.lims.service.filter.LoginFilter : --------------> request method : GET
2022-11-28 17:56:55.018 INFO 1 [http-nio-39084-exec-1]{magenta} --- [io-39084-exec-1] c.m.o.lims.service.filter.LoginFilter : --------------> request url : /api/cxmxv1/excel/downloadMasterExcel到此這篇關(guān)于docker部署springboot項目啟動時間與宿主機相差8小時的解決的文章就介紹到這了,更多相關(guān)docker部署springboot差8小時內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot多模塊打包部署Docker的項目實戰(zhàn)
- 使用docker部署springboot項目到服務(wù)器的詳細過程
- dockerfile的使用及使用dockerfile部署springboot項目的過程
- Jenkins+Docker?一鍵自動化部署?SpringBoot?項目的詳細步驟
- Gitlab-runner+Docker實現(xiàn)自動部署SpringBoot項目
- 如何利用Docker部署一個簡單的springboot項目
- idea快速實現(xiàn)將SpringBoot項目打包Docker鏡像并部署
- Docker部署SpringBoot應用的實現(xiàn)步驟
- Docker compose部署SpringBoot項目連接MySQL及遇到的坑
- 基于SpringBoot項目實現(xiàn)Docker容器化部署的主要步驟
相關(guān)文章
CentOS Stream 9 服務(wù)器 Docker 部署
本文詳細記錄了使用Docker部署KaiwuDB的過程,并包括模數(shù)據(jù)庫支持序表與關(guān)系表跨模查詢實戰(zhàn),本文結(jié)合實例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧2026-06-06
Docker搭建服務(wù)器監(jiān)控面板的實現(xiàn)示例
Docker服務(wù)器監(jiān)控面板是一種用于監(jiān)控容器運行情況的工具,本文主要介紹了Docker搭建服務(wù)器監(jiān)控面板的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下2024-01-01
使用docker輕松幾步打造個人專屬圖床的實現(xiàn)步驟
本文主要介紹了使用docker打造個人專屬圖床的實現(xiàn)步驟,可以快速搭建屬于您自己的圖床,文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧2025-02-02
docker容器出現(xiàn)Cannot allocate memory問題及解決過程
文章討論了Docker容器中出現(xiàn)內(nèi)存不足問題,通過查看`pid_max`和系統(tǒng)總進程數(shù)來定位問題,建議臨時增加`pid_max`值,并使用`psmisc`工具查看進程數(shù),如果命令執(zhí)行失敗,需要安裝該工具,永久生效的解決方案是修改配置文件,文章最后提醒讀者參考和支持腳本之家2026-01-01
刪除docker中沒有被使用的數(shù)據(jù)卷volume
發(fā)現(xiàn)docker占用宿主機的磁盤空間很大,這個時候如何來釋放這些數(shù)據(jù)卷占用的空間呢,通過執(zhí)行相關(guān)命令即可順利解決,下面小編給大家介紹下刪除docker中沒有被使用的數(shù)據(jù)卷volume,感興趣的朋友跟隨小編一起看看吧2023-01-01

