全世界都是你的工作室:GCP 的雲端開發環境

最近看到 Heron 的 Medium 在討論使用 iPad 來開發程式,深深被 Thin Client 給感動了。如果能從硬體裝置中解放,不用開發程式前還需要花費大把時間精力來架設環境,那我們就能更快驗證,更快學習,更快迭代,把時間花在重要而有價值的事上。

Thin Client 的概念說來單純,我們可以將所有能連上網路的介面都可以當成終端,在傳統開發環境中,終端跟運算是放在同一台機器上,輸入完成後,使用機器的資源來進行運算,像是編譯程式、執行與提供服務;但自從有了雲端後,可以將這類運算都交由雲端處理,只要有個合用的終端介面能輸入與呈現資訊,就能得到運算結果。

Apply GCP free plan

既然運算資源放在雲端,首先要申請一個雲端帳戶,這邊以 GCP 的免費方案為例,首先點選 GCP 的免費試用

GCP 的免費方案提供 $300 刀的額度,還有 12 個月的使用時間,可以使用 GCP 上所有服務,如果是小型或低成本的運算,甚至不用動到 $300 的費用。

選擇國家/地區後,按[繼續]進入第二頁

第二頁要填入個人資訊,還需要一張信用卡卡號。依照 Google 的說法,信用卡是為了驗證身分。要注意 GCP 不支援 JCB,請用 Visa/Master Card 來申請。

Create Project

進入 GCP 首頁後,可以先創建一個新的 Project,來放置要測試的東西,點選 Google Cloud Platform 旁的 Project 名稱,再點選跳出視窗右上角的 New Project

填入 Project name 跟要放置的 Folder,例如 Linux VM,完成 Project 的建置。

Create VM instance

有了 Project 後,可以在裡面創建需要的雲端服務,因為主要目的是驗證 Thin Client 是否可行,選擇創建一個 VM 實例來進行登入。要創建 VM 實例可以點選 Menu 中的 Compute Engine > VM Instances,選擇 Create

Create 的選項有很多,參照 GCP 的免費方案說明,使用 Region 為 us-central1 (Iowa),Machine Type 為 f1-micro

Boot Disk 看個人習慣,我平常用的環境是 Ubuntu 18.04 LTS,這邊選同樣的,如果有習慣 Debian 或其他 Distribution 的人,也可以自行選擇

點選[Create],完成 VM 創建。

Setup SSH

在終端安裝 SSH 的 Client,例如 Windows 常用的 putty,或者 Termius 這款 App。沒有 SSH Key 的人需要使用程式產生出 SSH Key,再將 Private Key 指定給 SSH Client,同時將 Public Key 放置到雲端。產生 Key 的步驟就不多說了,Windows 下的使用者可以用 PuTTYgen 來產生,Linux 使用者可以用 ssh-keygen。

有 Public Key 後,要將它放到雲端,方便以後登入。選擇 Compute Engine 中的 Metadata,點選 SSH Keys,可以管理金鑰。點選 Add SSH keys 來加入自己的 Public Key

加入後回到 VM instances,查看對應的 External IP,使用 SSH Client 輸入 user@address,登入 VM instance,記得 user 是要 key 對應的 user,address 是要 External IP。驗證看看能否登入。

小結

自從雲端的商業模式建立起來後,許多做法都會跟著改變,這是一個思維上的轉換,以前需要的東西有可能被淘汰掉,而新的需求會被創造出來。如果可以用 GCP 處理掉伺服器,我沒必要再去購買伺服器的硬體來自行架設網站,不但比較便宜,也省掉 Maintain 的 Effort。同時,高效能對 Laptop 也不會再是議題,取而代之的,應該是穩定而快速的網路服務配上輕便的終端顯示器。

最後放張完成圖,紀念一下。

Reference

Read more

Weekly Issue 第 17 期:n8n 在 C 輪募得 180m

現在新創企業已經離不開 AI 了。像 n8n 這樣的自動化工具,重新用 AI 話題包裝後,可以在自由市場上募得鉅款;Postman 也需要在它的口號中,強調對 AI 的重要性。 我相信 AI 讓生活變得更方便,我剛到新國家,對任何事情都不熟時,AI 給了我很多幫助。但市場的話題像一場無差別的風暴,每個公司都面對一支麥克風,麥克風傳出的經 AI 編輯過的聲音。 🗞️ 熱門新聞 n8n raises $180m to get AI closer to value with orchestration n8n C 輪募了 180M 美元,沒想到它可以這麼值錢。 基於 zapier 只有 5B 的估值,

By Ken Chen

Weekly Issue 第 16 期:Anduril 的 MVP

近期嘗試降低 AI 相關選文,主要是因為我在閱讀時,不容易判斷內容是正確還是錯誤。本次選的「AI Evals 大辯論」在這點上就做得很棒,正反意見並陳,讓讀者知道自己哪些論點也有人支持,哪些論點具有爭議。 🗞️ 熱門新聞 The Amusement Park for Engineers 原本看是 Anduril 嘀咕幾聲(我對國防工業沒興趣),但看到一半覺得太讚了,推薦所有做產品的人閱讀。 這句話開始點亮我的眼睛:「那座臨時搭建的塔,是我們自掏腰包、為了驗證可行性而做的,幫助攔截了近一千磅的大麻,並導致數十起毒品走私逮捕 」 業界都說要做 MVP,但到底什麼是 viable?沒有 viable 的 MVP 只能稱為 prototype 而已。合作的 PM 有次說的傳神:「別人要樣品屋,但我們只有沒屋頂的牆壁。」 這篇雖然沒有講到 agile,卻做到

By Ken Chen

Weekly Issue 第 15 期:Go 語言從 1.25 支援 Flight Recorder

最近安排旅遊計畫,會到 Brisbane 居住三個月,突然跟熟悉的環境分開,用陌生眼光看待周圍一切,真是個特別的體驗。 世界依然在轉動,只是用了不同速度,反映在每週週報上,是項目變少了,可是內容變長了。 🗞️ 熱門新聞 Flight Recorder in Go 1.25 Go 1.25 開始支援 Flight Recorder。 以前要抓 trace,都是要等到事發後才能抓,有沒有可能事發前抓呢?有,原理很簡單,配置一塊記憶體存放臨時的 trace,如果符合條件,輸出持久化,否則丟棄,這就是 Flight Recorder。 官方給的範例很讚,像 slow request 這類例子,常常是處理 request 時遇到問題,在沒有 Flight Recorder

By Ken Chen

Weekly Issue 第 14 期:Product Hunt 已死

近期台灣技術圈新聞應該要算 Vibe Coding,無獨有偶的是,HN 上也談到類似的議題:行銷跟技術的界線在哪?哪些東西可以包裝成商品販售,哪些則是應該要有基本的自我審核? 🗞️ 熱門新聞 Product Hunt is Dead 有位產品創辦人寫了篇 Blog,標題比較聳動:Product Hunt 已死。 我沒特別 Follow Product Hunt,只有偶爾看看,但看完還是五味雜陳。依照文中所說,當你在 Product Hunt 發布產品後,會有一堆人來跟你說需不需要買讚,這讓我想到以前書市買榜的例子。 有人可能會覺得這是行銷,只是對我來說,行銷跟欺騙還是兩回事。我比較不確定的是,假設今天換個場景,改為無傷大雅的善意謊言,我會同意嗎? ✨ 科技觀點 How to Lead in a Room Full of Experts

By Ken Chen