在 Go 裡直接抓 Docker 容器 IP,連線 PostgreSQL

4 分鐘閱讀

前言

開發環境裡,我們常用 Docker Compose 來啟動資料庫。像是 PostgreSQL 這種服務,我們通常會這樣做:

1ports:
2  - "5432:5432"

這樣就能用 localhost:5432 直接連資料庫,簡單又方便。

最近在思考,如果我們不想把資料庫連接埠對外暴露,想完全在 Docker network 裡面連線。
但容器的 IP 每次重啟都不一樣,我們該怎麼辦?

答案是:別手動 docker inspect,直接在 Go 裡用 Docker API 查 IP 就好。
查完 IP,再用它去連 PostgreSQL,完全自動化,安全又乾淨。

go docker postgresql
繼續閱讀 →

OAuth 與授權流程詳解

2 分鐘閱讀

前言

在現代應用程式開發中,使用者身份驗證資源授權已成為必備功能。 傳統帳號密碼模式存在風險,也不利於跨平台整合,因此 OAuth(Open Authorization)被提出,成為最常見的 授權框架(authorization framework)

它的設計目標是:

  • 使用者不需交出帳號密碼
  • 第三方應用能安全存取有限的資源
  • 支援 Web、Mobile、Server、IoT 等不同場景
oauth authentication authorization
繼續閱讀 →