396 字
2 分鐘
沒有Public IP也能架站(1) — ngrok
2023-04-03
無標籤

當我們用家裡的網路設備進行開發與架站,才發現沒有Public IP,別人根本連不進來,就算有Public IP還是浮動IP,還需要另外申請固定IP,真的很麻煩,今天來講講當沒有Public IP的時候該如何架站。


ngrok#

ngrok是個知名的內網穿透雲端服務,意思是說你的設備不需要Public IP,透過他的Agent建立Tunnel將服務暴露到外網上,可說是非常方便呢。官網的資料也很齊全,可以上去看看。


流程#

我們透過以下步驟,將我筆電80 port的服務暴露在網路上。

  1. 建置服務
  2. 註冊ngrok
  3. 安裝ngrok agent
  4. 執行ngrok agent

1. 建置服務#

我在筆電的環境使用NGINX的80 port當作範例,下圖看出我的服務監聽在127.0.0.1:80上。

使用Docker建置NGINX指令:docker run -p 80:80 -d nginx


2. 註冊ngrok#

註冊ngrok,登入後到dashboard,會提示你如何註冊服務,先記著這邊的指令。


3. 安裝ngrok agent#

官網可以找到各種OS的安裝方法,Linux、macOS、Windows都支援,就按照官網流程進行安裝。


4. 執行ngrok agent#

在command line貼上上面的connect指令,並執行ngrok http 80

就會跳出一個網址,可以訪問到你的服務。


結語#

透過ngrok可以快速簡單地將沒有public IP的服務暴露到外網,如果要使用自己的domain,則需要加入付費方案。下一篇將說明使用Cloudflare Tunnel可以免費達到一樣的效果。