文章目錄
- 前言
- 1. 安裝Portainer
- 1.1 訪問Portainer Web界面
- 2. 使用Portainer創建Nginx容器
- 3. 將Web靜態站點實現公網訪問
- 4. 配置Web站點公網訪問地址
- 4.1公網訪問Web站點
- 5. 固定Web靜態站點公網地址
- 6. 固定公網地址訪問Web靜態站點
前言
Portainer是一個開源的Docker輕量級可視化工具,它提供了一個直觀的Web界面,讓你輕松管理和監控Docker容器、鏡像和網絡等。之前在文章《Linux Docker 圖形化工具 Portainer遠程訪問》中我們講了如何使用Docker部署一個Portainer,并結合cpolar內網穿透實現了公網訪問成功。本篇文章教大家如何在Portainer創建Nginx容器,并且部署一個靜態站點實現公網訪問。
1. 安裝Portainer
使用docker部署一個Portainer,首先拉取Portainer鏡像
docker pull portainer/portainer
然后運行容器,其中: 8098端口是我們要訪問的Portainer Web界面
docker run -d -p 8098:9000 --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
1.1 訪問Portainer Web界面
在瀏覽器中輸入http://localhost:8098 或 http://服務器IP+8098端口號,即可看到Portainer管理界面。
第一次訪問時,你需要創建一個管理員賬號。填寫所需的信息,并設置一個強密碼。然后點擊"Create user"按鈕繼續。
2. 使用Portainer創建Nginx容器
登錄成功后,你將看到Portainer的控制面板。
本篇文章舉例: 這里部署的Web站點是我制作的一個三維立體圖像web頁面。
在左側導航欄中,選擇 Home , 點擊 local
然后選中 Containers,再點擊右上角的 Add container
進入新界面:
Name輸入three(可以自定義填寫)
Image輸入nginx
外網端口自定義,不能有沖突,容器端口可以重復
點擊下方 Volumes ,填寫 container (nginx路徑/usr/share/nginx/html)和 host(部署站點文件路徑),點擊Deploy the container拉取鏡像
創建成功,并且打開一個新的瀏覽器輸入127.0.0.1:8089,可以看到制作完成的三維立體圖像了。
3. 將Web靜態站點實現公網訪問
上面我們在Portainer中創建了Nginx容器,并部署了Web靜態站點,在局域網訪問成功。下面我們安裝Cpolar內網穿透工具,通過cpolar 轉發本地端口映射的http公網地址,我們可以很容易實現遠程訪問,而無需自己注冊域名購買云服務器.下面是安裝cpolar步驟
cpolar官網地址: https://www.cpolar.com
- 使用一鍵腳本安裝命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
- 向系統添加服務
sudo systemctl enable cpolar
- 啟動cpolar服務
sudo systemctl start cpolar
cpolar安裝成功后,在外部瀏覽器上訪問Linux 的9200端口 即:【http://局域網ip:9200】,使用cpolar賬號登錄(如沒有賬號,可以點擊下面免費注冊),登錄后即可看到cpolar web 配置界面,結下來在web 管理界面配置即可
4. 配置Web站點公網訪問地址
點擊左側儀表盤的隧道管理——創建隧道,創建一個Web三維立體圖形站點的的cpolar公網地址隧道。
- 隧道名稱:可自定義命名,注意不要與已有的隧道名稱重復
- 協議:選擇http
- 本地地址:8089(本地訪問時的端口)
- 域名類型:免費選擇隨機域名
- 地區:選擇China Top
點擊創建
隧道創建成功后,點擊左側的狀態——在線隧道列表,查看所生成的公網訪問地址,有兩種訪問方式,一種是http 和https
4.1公網訪問Web站點
復制cpolar生成的兩個公網地址中的任意一個,然后打開一個新的瀏覽器并粘貼地址,可以看到用cpolar生成的公網地址,成功的實現公網訪問web站點。
為了更好地演示,我們在前述過程中使用了cpolar生成的隧道,其公網地址是隨機生成的。
這種隨機地址的優勢在于建立速度快,可以立即使用。然而,它的缺點是網址由隨機字符生成,不太容易記憶(例如:234b53d8.r1.cpolar.top),制作網頁發布公網分享給別人看起來不太美觀。另外,這個地址在24小時內會發生隨機變化,更適合于臨時使用。
我一般會使用固定二級子域名,原因是我希望制作好web網頁分享給別人看時,它是一個固定、易記的公網地址(例如:three.cpolar.cn),這樣更顯正式,便于交流協作。
5. 固定Web靜態站點公網地址
由于以上使用cpolar所創建的隧道使用的是隨機公網地址,24小時內會隨機變化,不利于長期遠程訪問。因此我們可以為其配置二級子域名,該地址為固定地址,不會隨機變化【ps:cpolar.cn已備案】
注意需要將cpolar套餐升級至基礎套餐或以上,且每個套餐對應的帶寬不一樣。
登錄cpolar官網,點擊左側的預留,選擇保留二級子域名,設置一個二級子域名名稱,點擊保留,保留成功后復制保留的二級子域名名稱
保留成功后復制保留成功的二級子域名的名稱
返回登錄Cpolar web UI管理界面,點擊左側儀表盤的隧道管理——隧道列表,找到所要配置的隧道,點擊右側的編輯
修改隧道信息,將保留成功的二級子域名配置到隧道中
- 域名類型:選擇二級子域名
- Sub Domain:填寫保留成功的二級子域名
- 地區:China VIP
點擊更新
(注意,點擊一次更新即可,不需要重復提交)
更新完成后,打開在線隧道列表,此時可以看到公網地址已經發生變化,地址名稱也變成了固定的二級子域名名稱的域名
6. 固定公網地址訪問Web靜態站點
最后,我們使用固定的公網地址可以看到訪問成功,這樣一個固定且永久不變的公網地址就設置好了,隨時隨地都可以自定義域名并且分享給其他人訪問你制作的web站點了!