輕鬆部署 Laravel 應用 | 《01. 寶塔皮膚》

Wi1dcard發表於2019-03-04

:clap: 本系列持續更新中,歡迎關注:https://github.com/wi1dcard/laravel-deployment

由於課程上下文關聯比較緊密,在開始前請先閱讀 本文

你的支援是我寫作的動力;關注我的客官們,請在右上角點個贊,將會讓文章在首頁展示,幫助更多人。

感謝 :clap: !

和許多國內 PHP 程式設計師一樣,最早接觸伺服器部署就是依靠 一鍵 Web 管理皮膚

常見 Web 皮膚

目前市面上流行的皮膚很多,例如:

前前後後幾年開發過程中,以上四款皮膚我均有過深度使用,個人比較喜歡 AMH 和 AppNode。

寶塔是這個圈子裡的後起之秀,16 年才開始做皮膚。不過憑藉著相對美觀的 UI,以及長期免費、簡單易用等優勢,搶佔了不少零基礎使用者。

安裝寶塔

注意:由於相容性原因,建議需要使用寶塔皮膚的使用者採用 CentOS 7 系統。本小節將基於該系統進行部署。

登入伺服器,執行以下命令即可:

$ wget -O install.sh http://download.bt.cn/install/install.sh
$ bash install.sh

其中,第一條命令是下載一鍵安裝指令碼;第二條命令則是執行指令碼。

稍等片刻,出現以下提示:

Do you want to install Bt-Panel to the /www directory now?(y/n):

意為詢問你是否現在安裝寶塔皮膚到 /www 目錄?請輸入 y 繼續。

隨後大概需要 2 分鐘左右安裝,會有一大堆輸出,我們不必關注。

注意:安裝過程中,請保證優良的網路環境,若 SSH 連線斷開則需要重新來過。

若安裝成功,你將會看到如下輸出:

==================================================================
Congratulations! Installed successfully!
==================================================================
Bt-Panel: [管理皮膚 URL]
username: [寶塔皮膚使用者名稱]
password: [寶塔皮膚密碼]
Warning:
If you cannot access the panel,
release the following port (8888|888|80|443|20|21) in the security group

請記住此處的皮膚 URL、使用者名稱和密碼,稍後我們會用到。

注意:這裡的使用者名稱是寶塔皮膚的專用使用者名稱,並非 root;密碼也與 SSH 連線伺服器時使用的密碼不同,請勿混淆。

注意:若出現無法安裝、報錯等問題,請到寶塔官方論壇進行提問,或聯絡其官方尋求技術支援。由於閉源,我無法提供任何幫助。

安全組

為了能夠開啟 Web 皮膚的管理頁面,需在雲服務商管理頁面配置安全組,放行 8888 埠,這裡有幾篇來自寶塔的官方說明可供參考:

你也可以檢視雲服務商的幫助文件,或是尋求技術支援。

登入管理頁

好了,現在你可以開啟先前安裝成功後展示的皮膚 URL(通常為 http://<伺服器公網IP>:8888),輸入使用者名稱、密碼並登入。

安裝執行環境

登入成功後,將出現預設提示:

這類似於國產安卓機首次開啟應用市場時推薦的「裝機必備」,你可以根據需要快速選擇需要安裝的元件。作為演示,我採用 LNMP,並安裝以下元件的指定版本:

LNMP = Linux + Nginx + MySQL + PHP

確認無誤後,點選 一鍵安裝 即可。

可以看到,寶塔皮膚已開始自動排程並在後臺執行安裝任務了:

你可能會發現 CPU 使用率、系統負載迅速飆高,不必擔心,這是正常現象。

由於安裝過程是完全後臺的,所以可以隨意關閉這個視窗甚至瀏覽器,斷網也沒關係。重新登入後,點選左上角的數字(例如 3⃣️)即可回到安裝進度:

安裝耗時可能在數分鐘到數小時不等,以日常經驗來看,喝杯咖啡是足夠的。

當你發現左上角的橙底數字變為 0⃣️,或是看到類似下圖的頁面:

即說明執行環境已經安裝完成了。

配置執行環境

首先,請在寶塔管理頁面單擊左側選單內的 網站

點選 新增站點

輸入域名等資訊,若沒有域名可使用伺服器公網 IP 代替:

注意:如果你的伺服器位於國內,則必須備案後才可通過域名訪問;詳情請自行搜尋「網站備案」。

確認無誤後點選 提交,站點即可建立成功:

接下來,請在瀏覽器內輸入伺服器的公網 IP(或域名)並開啟:

出現類似以上頁面,說明執行環境配置成功,接下來可以上傳程式碼、部署專案了。

部署專案

我們首先來嘗試最直接的方式 —— 將程式碼打包成壓縮包並上傳至伺服器解壓。

注意:在生產環境中這樣做很危險!請關注後續章節。

在開始之前,請在你本地的系統中將示例 Laravel 應用打包為 .zip 壓縮包。

隨後,在剛剛的列表內,點選新站點的對應目錄:

跳轉至檔案管理後,請點選左上角的 上傳 按鈕:

選擇剛剛打包的 Zip 檔案,上傳;稍等片刻即可上傳成功:

回到檔案列表,找到該壓縮包並解壓:

在彈出視窗內點選 解壓 即可。解壓成功後,點選解壓後的資料夾,全選檔案並點選右上角的 剪下

回到上層目錄點選右上角的 貼上所有,將所有檔案移動到網站根目錄。

最後,我們還需要進行一些特殊配置,點選左側選單內的 網站,找到我們的站點,點選右側的 設定 按鈕。

選擇設定視窗左側的 網站目錄,執行目錄一項請選擇 /public 並儲存:

偽靜態 內,選擇 Laravel 5 並儲存:

最終效果

在瀏覽器內重新整理執行環境配置成功的頁面,你將會看到 Laravel 應用的預設主頁:

恭喜你,部署成功。

為什麼是寶塔?

上文說到,我個人並不十分喜歡寶塔。相比它,AMH 和 AppNode 程式碼更加規範可靠,擴充套件性也更好。但使用一鍵 Web 皮膚就是圖個簡單易用,後續文章介紹的方案將會比 AMH 具有更大的優勢,如果你覺得寶塔不夠好,說明 Web 皮膚已經不適合你了,請繼續閱讀吧。

我感謝自己平凡,敢愛敢恨沒負擔。
我感謝自己不凡,可愛可恨都包攬。

相關文章