用 Jenkins 從 GCP 外部 Push Docker Image 到 GCR

因為上一篇提到的問題,加上測試 GCP 時間緊迫 (測試帳號的 300USD 額度,每分鐘都是錢啊),所以先選擇了 workaround 解決方案。

題目:從第三方 Jenkins server push docker image 到 GCR (Google Container Registry)

從現存在第三方的 Jenkins server,透過 packer 打包完 Docker image 後,push 到 GCP 上的 GCR。

方法一:Jenkins Plugin – Google Container Registry Auth Plugin

繼續閱讀

廣告

Jenkins+Packer build docker image trouble in Google Container Engine

tl;dr

本篇只是簡述採坑的過程,沒有最終解法,只是提醒看到這篇的朋友,在標準解決方案出來之前,先不要嘗試這個解決方案了。

目標:用 Jenkins + Packer 搭配 GKE 來建置 docker image

初衷

又到了每年一度的搬家盛事了(辛酸),今年,我們終於要從多災多難的某 S 平台搬到好像很潮的 Google Cloud Platform (GCP) 了。當然,第一件事就是要試著在由 Google 幫你管理的 kubernetes cluster 的 Google Container Engine (GKE) 上建製之前已經完全容器化的系統。

繼續閱讀

Kubernetes 純手作部署在 Ubuntu 16.04

大約半年前,花了不少時間正式將 swarm 導入我們家的 production,而過了整整六個月後,因為要將原本的 swarm cluster 遷移到新的資料中心,但由於在重建(順便升級)的過程中實在中了太多的 Docker 1.12 後才推出的 swarm mode(Swarmkit) 的招,加上半年前導入 swarm 時踩到太多的坑,太多的悲情記憶和不眠的夜,讓我毅然決然的跳槽到 Kubernetes 的擁抱。至於 swarm,就先讓他的子彈再飛一會兒吧~

下面是部署 Google Kubernetes(k8s) 的筆記,適用在 Ubuntu 16.04 LTSsystemd,由於我是部署在 bare metal 的 server 上,而 k8s 的官方文件在 bare metal 的部署部分並沒有提及整個部署的步驟和細節,再加上目前很少有 Ubuntu 16.04 + systemd 的部署方式(官方文件只有支援 Ubuntu 14.04,也沒有 systemd 的設定),希望這篇文章可以幫助到很多最近嘗試才踏入 k8s 領域的朋友。

繼續閱讀

[好用工具] 輕鬆建立臨時的安全連線 – ngrok


常常有開發網頁或相關網路程式的朋友們一定常常會遇到一件事情,那就是在自己的電腦中開發到一個階段以後,需要將目前的成果分享給別的人欣賞,又不希望把開發未完成的 source code 佈署到線上的主機(如: AWS, Google Cloud … 等)。

最常(ㄊㄨˇ)見(ㄆㄠˋ)的方式應該是使用 ssh 配合有 public ip 的主機,以建立 ssh tunnel 的方式,將連線從該主機導入到本端開發中的服務。
然而這方法雖然是最簡單而且隨處可以得到的,但是 ssh tunnel 的相關指令以及使用方式,對於許多不熟悉相關系統的使用者來說,真的是一個非常困難的動作,更何況也不是人人都有一台 public ip 的主機呢!

這就是今天要介紹的主角要上場的原因啦!ngrok!

繼續閱讀