2025年9月28日 星期日

npm 反向代理 http 服務 portainer (私簽SSL)

npm 反向代理 http 服務 portainer (私簽SSL)

這是連續的關於架設網站的系列

  1. 在 ubuntu 使用 docker 架設 nginx 靜態網站伺服器
  2. 使用 duckdns 轉發自建的靜態網頁伺服器
  3. npm 反向代理 nginx 靜態網站 (自動更新SSL)
  4. npm 反向代理 http 服務 portainer (私簽SSL)
  5. npm 反向代理 http 服務 cockpit (自動更新SSL)


繼上一篇 CHG: 使用 duckdns 轉發自建的靜態網頁伺服器

已經介紹了如何使用 duckdns + npm 架設靜態網站,這次實際來跑一個服務測試
這篇跑的是自簽SSL來做,由於是自簽無法公開出去需要自行加入到信任區



安裝 portainer

安裝請參考這篇文章
CHG: 在 docker 中安裝 Portainer 管理介面

非企業環境本地間的通訊就不多架一層 https 直接用 http 當作範例

只需要做到可以使用 http://localhost:9000 能看到管理介面即可


自簽SSL

建立專屬的 CA(Certificate Authority)
CHG: 利用同一個CA自簽SSL憑證

在這一步你必須產出屬於你自己的域名的簽證

例如 portainer.chg


這個只是要在內網跑的私有域名沒有要公開出去,可以完全自定義的


npm載入自簽證書

參考自上一篇
CHG: 使用 npm 反向代理內部 nginx 的靜態網站為 https


架設好 npm 之後,再來進入它的SSL管理介面


載入剛剛創建的金鑰後存檔



再來新增一個反向代理


填上剛剛創建的域名與 portainer 的連接埠 9000


在SSL分頁頁選擇剛剛建造的憑證


然後存檔就設定完畢了


瀏覽自簽網址的 portainer

再來還需要搞定兩件事情就是 dns 與 信任自簽憑證

使用管理員打開 powershell 輸入以下命令編輯 host 檔案

notepad C:\Windows\System32\drivers\etc\hosts

在最底下新增一行

127.0.0.1   portainer.chg

這裡網址改成你自己的區網IP,如果是同一臺基器用 127.0.0.1 即可

存檔之後再來找到你的憑證,對他按右鍵安裝憑證


然後選擇本機


然後選擇 “授信任的憑證授權單位”


下一步即可安裝好了

然後需要你重啟一下瀏覽器,這樣才能重新載入剛剛安裝好的憑證

再來使用 https://portainer.chg 就可以打開 portainer 管理介面了



打不開的話檢查清單看一下

  • npm 是否設置正確
    • proxy設置
    • ssl設置
  • SSL憑證是否安裝到指定位置
  • 安裝後是否重啟瀏覽器
  • 系統 Host 網域是否設置正確



沒有留言:

張貼留言