部署 Go 語言 App 到 Now.sh

本篇要教大家如何部署 Go 語言的 App 到 now.sh 服務。now 服務是讓開發者可以透過 JavaScript 或用 Docker 方式直接部署到 now 雲端機器,也就是 now 所提供的服務可以在自己電腦透過 package.jsonDockerfile 來部署 app。原先剛出來時候,只有支援 node.js 部署,後來才增加 Docker。透過 Docker 就可以來部署各種不同語言的專案。

[Read More]

為什麼我用 Drone 取代 Jenkins 及 GitLab CI

Logo-DevOpsDays

終於有機會正式跟大家介紹為什麼我會捨棄 JenkinsGitLab CI,取而代之的是用 Go 語言寫的 Drone。今年很高興錄取台灣第一屆 DevOps Day 講師,在今年主題是『用 Drone 打造輕量級容器持續交付平台』,主要推廣這套 Drone CI/CD 工具,會議內容圍繞在 Jenkins, GitLab CI 跟 Drone 的比較。也提到為什麼我不用 Jenkins 及 GitLab CI 的幾個原因。底下整理議程大綱。


  • 為什麼選擇 Drone
  • Drone 基礎簡介
  • Drone 架構擴展
  • Drone 安裝方式
  • Drone 管理介面
  • Drone 測試部署
  • Drone 自訂套件
[Read More]

用 upx 壓縮 Go 語言執行擋

剛開始學 Go 語言的時候,跟學習其他語言一樣,寫了底下一個簡單的 Hello World 檔案

1
2
3
4
5
6
7
8
9
package main

import (
    "fmt"
)

func main() {
    fmt.Println("Hello World!")
}

這是一個最簡單的程式碼,接著透過 go build 的方式編譯出執行檔,這時候我們看看檔案大小:

[Read More]
Go  upx 

用 Go 語言打造微服務架構

今年在 ModernWeb 講『用 Go 語言打造微服務架構』,蠻開心看到底下很多 Go 開發者,希望未來能有更多公司導入 Go 語言,底下是會議大綱:


  • Microservices vs. Monolithic 差異
  • 微服務核心架構 (Go 工具專案)
  • Go 語言核心高並發
  • 為什麼選用 Go 語言
  • 微服務代價跟準備
[Read More]

2017 COSCUP 研討會: Gitea + Drone 介紹

gitea-lg

今年很高興可以到 COSCUP 分享『Gitea + Drone 介紹』,我是在第二天的最後一場來做分享,最後還被大會進來趕人,講超過時間了。這次是我第一次到台大社科院,太陽真的好大,兩天下來流的汗水,大概已經是一年份的了。由於今年 COSCUP 不供應午餐,在第一天中午到科技站出口,左轉第一個店面就坐下來吃麵,店面不大,賣傳統小吃,我點了麻醬麵大碗 55 元,燙青菜 35 元,真的很大碗,不知道是不是因為在學校附近的關係,所以特別大碗,我心裡想說,這裡不是台北嗎?

[Read More]

Drone 發佈 0.8.0-rc.1 版本

drone-logo_512

Drone 作者在昨天晚上發佈了 0.8.0-rc.1,此版本有兩個重大變更,第一是 Server 跟 Angent 之間溝通方式轉成 GRPC,另一個變更則是將原本單一執行擋 drone 拆成兩個,也就是之後會變成 drone-serverdrone-agent,拆成兩個好處是,通常 Server 端只會有一台,但是隨著專案越來越多,團隊越來越龐大,Agent 肯定不只有一台機器,所以把 Agent 拆出來可以讓維運人員架設新機器時更方便。

[Read More]

台灣第一屆 Laravel 研討會

laravelconftw_o

這次很高興擔任第一屆 Laravel 台灣研討會講者,會議當天中午才到現場,我是兩點分享的議程,在整天聽下來及最後的案例討論,聽到最多的都是原本從 CodeIgniter 架構換到 Laravel 上面,身為 CodeIgniter 的維護人員的我,聽到是蠻開心的,在 Laravel 還沒出來前,大家都是選用這輕量級的 CodeIgniter。

[Read More]

台灣第一屆 GoPher 大會

很高興可以擔任第一屆 GoPher Day 大會講者,每次參加聚會都是跟一堆網友見面,人在新竹很難得大家見到面。很感謝 iThome 大力幫忙舉辦,才可以讓整天議程順利完成。底下分享『用 Go 語言實戰 Push Notification 服務』投影片。

[Read More]