哦吼
之前剛說了嘗試了使用docker來部署AspNetCore應用,結果這才剛上班就遇到問題了= =…
我這項目用的數據庫是Oracle,之前直接運行沒啥問題,但放在docker里運行就報了這個錯誤:
ORA-01882: timezone region not found
看這錯誤信息是在說時區不對,分別在服務器和docker里看一下時間:
[root@localhost ~]# date -R
Mon, 29 Nov 2021 17:07:30 +0800
root@9abab841b6b4:/app# date -R
Mon, 29 Nov 2021 09:08:22 +0000
嗯,果然是時區設置不對…
經過搜索引擎的努力,我找到了簡單的解決方法:
在項目的Dockerfile
里最后加上兩行代碼就行~
#設置時區
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
重新docker-compose up
,問題果然解決了~
參考資料
- https://blog.csdn.net/LIKEGAKKI/article/details/120758276
- 解決netcore在docker容器中連接oracle報錯(timezone region not found):https://www.cnblogs.com/xtjatswc/p/11350262.html