# 從 0.5.X 升級至 0.6.X

此軟體已遭棄用

本文件適用於已遭棄用的軟體,不再提供任何安全性更新或社群支援。 基於歷史原因,本文件仍保留供查閱。

在正式環境中,你應搭配 Pterodactyl Panel 1.0 安裝並使用 Wings

需要重新啟動伺服器

升級 Daemon 之後,必須重新啟動伺服器,才能在 Panel 中看到預期的記錄輸出,這一步不要跳過。

# 不相容變更

在開始升級前,先了解一下這個版本改了什麼:這次對 Daemon 的運作方式引入了幾項不相容變更,不過仍與 Panel v0.7.X 相容,所以不需要跟著更新 Panel。

其中最重要的一項變更,是從自訂記錄功能改用 Docker 原生的記錄功能。這麼做的好處是,能更完整地輸出附加至容器前發生的事件、把處理邏輯集中起來,並讓 Docker 去做它本來就很擅長的記錄管理工作。換句話說,現在伺服器如果拒絕啟動,你看到的不會再是一句沒頭沒尾的「Server has crashed」,而是能看到容器在那之前發生的_所有_輸出內容,除錯起來會方便許多。

# 下載檔案

了解變更內容後,若要從 v0.5.X 升級,先切換至 Daemon 的安裝目錄;如果你是依照安裝指南操作的,Daemon 通常會位於 /srv/daemon。 接著使用下方命令下載並解壓縮壓縮檔。

危險

在繼續之前,記得先停止 Daemon 程序,這樣才能避免升級過程中出問題,確保所有內容都能正常更新。

systemctl stop wings
curl -L https://github.com/pterodactyl/daemon/releases/download/v0.6.13/daemon.tar.gz | tar --strip-components=1 -xzv

解壓完成後,接著使用以下命令更新 Daemon 的核心相依套件。

npm update --only=production

# 啟動 Daemon

最後啟動 Daemon,一般來說可以用下方命令完成。

systemctl start wings

# 重建容器

Daemon 啟動之後還沒結束,因為我們對伺服器輸出的顯示方式做了底層變更,所以你還需要重建並重新啟動所有伺服器。重建這一步是必要的,重新啟動則算是選擇性,但還是強烈建議一併執行,否則你可能會完全看不到任何主控台輸出。

請_在 Panel 伺服器上_執行以下命令,進行大量重建與重新啟動。記得把 ### 替換為剛升級節點的 ID, 或者也可以完全移除 --node 旗標,一次在所有節點上重建。

php artisan p:server:rebuild --node=###

重建完成後,再用以下命令重新啟動所有伺服器;如果你比較放心手動操作,也可以在 Panel 中逐一手動重新啟動。

php artisan p:server:bulk-power restart --nodes=###