OpenShift Web Console 連結 BitBucket

OpenShift 是可以用來執行 Node.Js 套件的伺服器,且有免費版本可以提供一個專案 1GB 的使用量,正好可以用來測試小規模 server。但是在設定 OpenShift 上遇到一些問題,google 到的資料有些也太舊了,不適用目前的 web console 3.3,所以這裡就我遇到的問題做個紀錄。

存取 BitBucket Git repo

首先在 OpenShift 建立新專案時,會要求設定 Git source,除了輸入 BitBucket 的 git url 以外,還需要新增 secret,加入存取 BitBucket repo 的帳密,才有權限 clone private repo。

設定 BitBucket Webhook

Webhook 是用來當你有新的 commit push 到 BitBucket 時,BitBucket 會自動告訴 OpenShift pull 下來此 commit。在 OpenShift 新增完專案時,他會告訴你 Webhook url,但是只適用於 Github。

如果要用於 BitBucket 必須使用 Generic url,在 webconsole 面板的 Builds 分頁 裡的 NodeJs service 下進入 Edit 頁面,在 Advanced \ Triggers 選項裡複製 Generic webhooks url,到 BitBucket \ Project \ Settings \ Webhooks 新增此 url 就可以使 OpenShift 同步。

Server.js 設定

由於 OpenShift 上的 NodeJs service 是使用 port 8080,所以 server.js 裡必須 listen port 8080,否則是無法連線到伺服器的。

複製檔案

Google 上有教學如何使用 OpenShift SSH git 來更新檔案,但是在目前的 online v3.3 找了很久都沒有找到。後來去翻 documentation 只有看到使用 rsync 去複製 pod 裡面的檔案夾,雖不滿意,但目前也沒其他方法。

首先在 windows 系統下需要先安裝 command line toolcwRsync,並增加 /bin 至系統 %PATH% 路徑。

oc login [URL] 後,就可以下指令 oc rsync [Pod Name]:/[directory] ./ 將資料夾複製至本機。

廣告

人造光譜的擬真度

你是否曾經想過自然光譜與人造光譜有什麼差別?或是看過人造光譜感覺不太自然?這篇文章要從受照物體的反射光來研究兩者光譜的差異。

所謂人造光譜譬如螢幕、LED 全彩裝飾燈,兩者都可以呈現出各種顏色,但是螢幕所呈現的顏色感覺比較自然柔和,而LED裝飾燈所呈現的顏色就比較鮮豔或不自然。我使用 NIST CQS simulation 7.4.xls 稍微改變一下程式碼,可以模擬自然光譜與人造光譜在相同的顏色下,照射到標準 CRI、CQS 色卡反射出來的顏色,從色卡顏色就可以看出兩者的差異。 繼續閱讀 “人造光譜的擬真度"