banner
moeyy

moeyy

一条有远大理想的咸鱼。
github
mastodon
email

使用 Fly.io 部署 Alist

介紹#

Fly.io 有一定限額的免費使用額度的,他們的目標就是讓小型的應用可以免費運行,而在需要擴展的時候支付一定的費用。Fly.io 的應用會根據使用情況單獨計費。

Fly.io 會根據單個用戶或者組織計費,如果想要更多免費的應用,那麼你可以創建多個組織。

產品免費額度說明
VM: shared-cpu每個月 2340 小時全天候運行 3 個 256 MB 內存的共享 CPU 的 VM
Volumes3GB提供 3GB 永久存儲
Bandwidth160GB / 月亞洲和印度免費流量是 30G,美國和歐洲是 100G

搭建準備#

本次部署是採用數據持久層來存檔 Alist 的 Sqlite3 數據庫,雖然 Fly.io 提供 PostgreSQL 但是那得多用一個 VM 資源,並且免費用戶一旦創建了 PostgreSQL 就消耗掉了免費的 1G 空間,如果用 Sqlite3 則只消耗 1G 永久空間。

安裝 FlyCTL#

macOS

curl -L https://fly.io/install.sh | sh

Linux

curl -L https://fly.io/install.sh | sh

Windows

powershell -Command "iwr https://fly.io/install.ps1 -useb | iex"

註冊登入#

fly.io 需要綁定信用卡

# 註冊
flyctl auth signup
# 登入
flyctl auth login

image

登入完成後,就可以正式開始部署應用。

創建應用#

git clone https://github.com/moeyy01/alist-fly
cd alist-fly
flyctl launch

image

先不要部署,創建一個 1GB 永久存儲:

# 創建一個 1G 的持久存儲空間(最小單位 1)
flyctl volumes create data --size 1 --app APP_NAME

APP_NAME 替換為你剛才創建的 APP 名字。
創建完成後在 fly.toml 配置文件底部添加:

[mounts]
destination = "/opt/alist/data"
source = "data"

添加完成後檢查配置文件中的 internal_port 是否為 5244,檢查後即可部署,輸入 flyctl deploy 進行部署。

等待部署完成即可,部署完成後可以前往官網控制面板查看,也可以輸入 flyctl open 來打開網址。

進階#

如果你想修改配置文件,請在項目目錄下輸入 flyctl ssh console 即可鏈接 SSH,找到配置文件修改後輸入 fly vm restart <instance-id> -a <app-name> 重啟實例即可。
instance-i為你應用運行的 ID,可以在控制面板上看到,app-name為你的應用名字。

官方文檔:

演示地址:

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