2021年8月7日 星期六

Java應用程式在K8s中(Docker )的時區設定

 因為使用alpine的base image,要讓OS的時區改成自己設定就需要額外安裝tzdata套件,再加上公司環境根本不能連外進行安裝,所以想在docker file設定

ENV TZ=“Asia/Taipei”

或mount volumn使用host的時區 /etc/timezone 都沒辦法使用。

解法就是在k8s的yaml中指定AP image的環境變數就可以達到log符合預期的時間

- name : myApp 

  env : 

      -name :TZ 

        value : “Asia/Taipei”

PS. 預設Docker的標準時間是用UTC,但通常我們要用CST中原標準時間(UTC+8 hours)

Spring scheduler 也需要在annotation指定timezone

@Scheduled(cron=“0 0 1 * * ?” ,zone=“Asia/Taipei”)

2021年7月1日 星期四

不顯示列印視窗

 應用程式有直接列印或批次列印的需求時,以往使用IE都是透過vbScript來控制不顯示列印視窗,若在chrome就單純多了,AP端完全不用額外處理,只要在chrome 啟動程式按右鍵,目標的地方在最後面加上參數即可。

“…chrome.exe” - - kiosk-printing

2021年6月30日 星期三

如瑞士刀一樣好用Docker image-busybox

 K8s環境中有個需求是希望在container啟動前把PV(Persistent Volumn)內的檔案都清空,好讓container啟動時如全新般的狀態。Google後發現busybox這個精巧的image可以達到需求

YAML內

  ..containers:

  …

  ..initContainers:

   - name : clean folder

     Image:library/busybox

     Command:

      - /bin/sh

      - “-c”

      - “rm -rf /data/db/*”

     VolumnMounts:

      - name : my-data

        mountPath : /data/db

以上開頭字母須為小寫(編輯器自動轉換大寫真不方便)

COVID-19 確診經歷紀實

原本以為真的是天選之人,就算先前家裡兩個小孩都確診都逃過了(可能有中獎但無症狀吧),不過就在2023年六月18日破解自認為天選之人的"心態",為什麼可以確認就是這天中獎的呢?因為在前都是居家上班,到人多的室內場所都會戴口罩,就剛好這天傍晚原本只想說要去附近的國...