A8DOG

A8DOG

随便写写,记录折腾过程!
telegram

安裝多個Docker容器中的宝塔面板+商業思路

事情起因,我在 b 站看見一個視頻:

視頻中提到了【我們是使用了容器技術運行了一個完整的寶塔】,於是我想到了之前出現了一個 bthost 虛擬主機銷售系統,但是視頻中的銷售地址我打不開,並沒有去體驗,但是看見視頻中綁定域名還是虛擬主機的模式,並沒有演示其他功能。

思路:#

我也沒有辦法去深度研究它是怎麼運行的,我是個不懂技術的人,下面是我個人設想 我想的是使用 docker 容器安裝多個寶塔,只把寶塔登陸端口映射出來,方便用戶使用,如果總服務器有多個 IP,給每一個容器單獨分配一個 IP,或者單獨銷售內網服務器,用戶需要使用外網需搭配內網穿透服務。再或者拿出一台服務器反向代理,每一個容器都需要使用 80 端口,把 80 端口映射給服務器一個固定端口,再反向代理 80 端口去代理這個固定端口實現每一個的容器都能使用 80 端口,如果容器使用其他的端口也是同道理,畢竟 Linux 可以開放 6w + 的端口。

按照我的這個反向代理思路就是,服務器 a 是開通容器的,服務器 b 就是反向代理,容器 1 需要使用 80 端口,把 80 端口映射給服務器 a 的 801 端口,服務器 b 反向代理服務器 a 的 801 端口對外就是 80 端口。如果容器 1 需要使用 7788 端口,把 7788 映射給 8010 端口,服務器 b 反向代理服務器 a 的 8010 端口,對外就是 7788 端口。

使用教程:#

首先安裝 Docker 和 Docker-Compose:https://a8dog.com/NVEpVnWHFmd

然後安裝一個Dockge:一個美觀、易用的 Docker Compose 管理平台

打開 IP+5001 端口,創建管理員用戶並且登陸,右上角點擊 Compose 創建一個容器模板。

compose.yaml 填寫下面的內容,因為寶塔的 docker 鏡像默認端口是 8888,如果外面映射是 8881,那麼下面的 ports 就要填寫 8881:8888。

version: "3.8"
services:
  baota:
    image: btpanel/baota
    restart: unless-stopped
    ports:
      - 8888:8888
networks: {}

容器運行起來了,可以使用 IP + 端口訪問寶塔了,默認安裝的好像是 7.9.4 正式版,登陸需要寶塔官方帳號密碼才能使用,我直接安裝了破解版。點擊 bash 進入終端。

Snipaste_2024-02-12_17-15-22

輸入下面的命令把寶塔更新到最新破解版:

curl http://io.bt.sy/install/update6.sh|bash

貌似默認生成的密碼是個錯的,並且這個 Dockge 的終端不能粘貼,命令只能手動輸入,執行bt 5修改密碼,再執行bt 14查看寶塔默認信息,再重啟一下容器(不重啟容器寶塔無法軟件)教程就到這裡結束了!

折騰計劃:#

我用 vultr 開了個高性能的 4h16g 服務器 120 刀一個月,目前我要折騰一下下面的計劃並且寫出後續:

  1. 單獨的容器使用內網穿透能否正常訪問外網。👌
  2. 寶塔容器功能能否正常使用。👌
  3. 測試部署 PHP,java,node,go 等項目。👌
  4. 容器之間是否會影響。👌
  5. 性能使用情況如何。👌
  6. 使用我上面所說的反向代理模式做代理測試。

至於我為什麼折騰,主要是最開始接觸互聯網的時候,當時有特別多大佬免費分享優質的資源並且提供免費的虛擬主機給我們這些小白玩,並且有很多好玩的開源項目,玩著玩著也想著為互聯網出一份微薄之力。如果我說的東西行的通剛好我有一些年費的空閒服務器可以給大家免費使用去玩耍。

折騰後續:#

後續一:#

目前折騰了 1. 單獨的容器使用內網穿透能否正常訪問外網。和 5. 性能使用情況如何。

我根據教程:https://www.ywbj.cc/?p=985搭建了一個簡單的內網穿透,穿透成功,但是我的域名都是添加了 cf 的 cdn,使用了完全加密協議,瀏覽器 - cf 服務器 - 源服務器都要 ssl 證書,瀏覽器 - cf 服務器這一部分是 cf 負責,cf 服務器 - 源服務器的證書需要我自己負責,我在容器裡面添加了證書但是不起效果。這目前是一個需要解決的問題。

然後就是性能情況,這個不算測試成功了吧,我的宿主機就安裝了 docker,開通了三個容器,每個容器都安裝了 nginx 和 mysql,並且把 mysql 的優化方案設置了 8-16G,目前使用了 2.5g 左右的內存,儲存空間使用了 22.5g 左右。內存還是吃的比較嚴重的,我的私人服務器安裝了 nginx 和 mysql 還跑了 Cloudreve 網盤和好幾個 docker 容器都只用了 1.5g 左右。

等下一次折騰我就測試我上面說的反向代理模式是否可行。

後續二:#

大晚上碎不著,然後開了一台 8h16g 的服務器繼續測試,目前測試的是 3. 測試部署 PHP,java,node,go 等項目。

搭建了一個 Cloudreve 的網盤項目,目前執行起來沒問題,就是第一次在使用容器寶塔終端的時候會卡頓幾分鐘,後面再使用就好了。

然後搭建了一個 WordPress 博客,測試也是沒問題的,目前來看其他的 java 項目 go 項目部署起來都是沒問題的。(我還安裝了 docker 想著套娃結果 docker 跑不起來。)

目前來看容器寶塔的大部分功能都是沒問題的,除了使用小部分的系統功能會報錯,畢竟我使用的是破解版的寶塔面板。然後就是容器之間是否會影響,目前我是沒有遇到過這樣的情況,我最擔心的會出現文件亂窜的情況並沒有發生。唯一的缺點就是內存使用的比較多,其他的都是還好,後續我打算設置一個腳本可以自動開通容器寶塔並且升級到破解版。

目前我是空閒的比較多的服務器,但是都是 4h4g 的比較垃圾的服務器,我測試使用高配並且計算型的服務器。於是我想到了我之前寫的一篇文章沒錢還想玩高配服務器,Linodes 的 100 美金真的超爽! 到時候我可以去花一點小錢購買一些白嫖帳號開通服務器,再來執行容器寶塔,再研究一下愛 frp 內網穿透的管理面板,淘一個線路比較好的服務器或者收集一些免費的穿透服務,免費給大家使用,又滿足了服務器可玩的擴張性,又能像正常機器一樣公網使用,只不過玩起來麻煩一點,畢竟是免費的嘛!

後面我發現了我的反向代理思路和內網穿透的效果一樣,只不過可以解決掉我測試中證書的問題,其他的我就不測試了。目前這篇文章就寫到這裡了,也折騰到這裡了,接下來就是去折騰怎麼自助開通容器寶塔給大家使用了。不會寫代碼到時候只能讓 chatgpt 代勞了,如果我弄不出來估計這個計劃就會棄坑了。等待我的後續操作!!!

載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。