缥缈墟同款文件站(GDA)部署教程

最后更新于 3 天前 24 次阅读


演示站:缥缈墟-文件站

环境准备

Nginx (本次使用1Panel演示,如果不需要绑定域名可以忽略)
Docker
Git
Mysql 8.x

域名解析

先把IP和域名进行绑定,这里使用cloudflare。
file
可以根据自己的需求觉得是否需要使用cloudflare的CDN

环境安装

这里不会过多的演示如何安装1Panel以及mysql。

1panel安装

使用ssh连接自己的云服务器,这里使用的是Ubuntu22.04的系统。

file
执行1panel官方脚本:

curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh

安装完成后使用输出的登陆信息进入后台
file
然后安装nginx和mysql,mysql也可以选择用docker compose装,看个人喜好,点击网站然后点击去应用商店安装
file
使用默认的配置直接安装就行
file
然后使用类似的步骤去安装mysql8.0
file
一样的使用默认配置安装
file
然后创建一个用于存储下载信息的数据库。来到数据库页面,单击创建数据库。
file

部署GDA

接下来就开始进入GDA的部署中了

获取源码

回到ssh中,创建/opt/gda并进入路径,然后使用git拉取源码

mkdir -p /opt/gda
cd /opt/gda/
git clone https://github.com/xiaoyaohanyue/gda.git .

file

修改配置文件

需要先获取两个重要数据。

数据库信息整理

首先去复制刚刚的数据库连接信息
file
最主要的就是这个信息以及刚刚你创建的数据库的账号以及密码。

生成Github Token

来到你的github账户设置页面,点击头像找到setting
file
找到左侧最后一个Developer Settings选项
file
然后到如图的地方生成一个token
file
记得选择第二个
file
只需要圈起来的这两个地方保持一致即可
file
然后滑到最下面点击创建
file
保存好这个token

基础配置修改

进入config文件夹,会有两个文件,分别是.env以及config.yaml,分别对这两个文件做出修改
首先是.env

vim /opt/gda/config/.env

修改其中的几个主要参数:

DATABASE_HOST=1Panel-mysql-18rK #数据库连接地址
DATABASE_PORT=3306 #数据库连接端口
DATABASE_NAME=gda #数据库名称
DATABASE_USER=gda #数据库用户名
DATABASE_PASSWORD=tskT6en3hBwZDbrw #数据库密码
BOT_TOKEN=7554634370:AAFEbsW87Uhfv2c21kBx-vhn1zzVv1xscL0 #这里填写机器人的token,用于发送版本更新通知
TG_NOTICES_CHAT_ID=-4765156793 #这里填写需要将tg消息发往的目的聊天ID
GITHUB_ACCESS_TOKEN=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 #这里填写github的token,自行在账号里申请,用于防止api限制读取版本信息
GITHUB_USERNAME=xiaoyaohanyue #写自己的github用户名

完整配置如下:

LOG_PATH=/gda/logs
FILE_ROOT_PATH=/gda/alist/app
FILE_ROOT_PATH_BACKUP=/gda/alist/backup/app
CONFIG_FILE=./config/config.yaml
DATABASE_HOST=1Panel-mysql-18rK
DATABASE_PORT=3306
DATABASE_NAME=gda
DATABASE_USER=gda
DATABASE_PASSWORD=tskT6en3hBwZDbrw
BOT_TOKEN=7554634370:AAFEbsW87Uhfv2c21kBx-vhn1zzVv1xscL0
TG_NOTICES_CHAT_ID=-4765156793
GITHUB_ACCESS_TOKEN=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
GITHUB_USERNAME=xiaoyaohanyue

然后是config.yaml文件,这个文件主要是用于指定你需要下载的github项目信息,比如我需要定期更新V2rayN和V2rayNG的最新发布

repositories:
  - name: "2dust/v2rayNG" #仓库地址
    config:
      sp: "browser_download_url" #保持不变
      flag: "v2rayng" #下载链接的标记,确保其在整个文件中的唯一性,不可重复
      folder: "v2rayNG" #下载后的保存文件夹名称,可在alist中看到
    enable: True #是否要启用该项目的下载

  - name: "2dust/v2rayN"
    config:
      sp: "browser_download_url"
      flag: "v2rayn"
      folder: "v2rayN"
    enable: True

可以根据自己的需要进行增改。
修改完上面的两个文件后再进入下一步

修改docker-compose文件

默认的docker compose文件并不是针对1panel的,因此需要做出一些修改。
下面是修改好的,直接照搬就行,没有一定基础不建议修改

services:
  alist:
    image: xhofe/alist:beta
    restart: always
    container_name: alist
    ports:
      - 5244:5244
    networks:
      - 1panel-network
    environment:
      - PUID=0
      - PGID=0
      - UMASK=022
      - TZ=Asia/Shanghai
    volumes:
      - GDA_DATA:/gda
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"
  gda:
    image: ghcr.io/xiaoyaohanyue/gda:latest
    restart: always
    container_name: gda
    networks:
      - 1panel-network
    volumes:
      - GDA_DATA:/gda
      - ./config:/app/config
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"
networks:
  1panel-network:
    external: true
volumes:
  GDA_DATA:
    external: true

启动GDA

这里直接用docker启动即可,不过在启动之前需要创建一个存储卷,用于持久化存储数据。直接执行下面的指令

docker volume create GDA_DATA
docker compose up -d

file
可以通过docker的日志命令查看下载日志

docker logs gda

file
正确运行的时候会在你配置好的群组中收到机器人的通知
file

配置alist

首先去配置一下反向代理

配置反向代理

回到1panel的网站选项,点击创建,选择反向代理,填上解析好的域名,代理地址写127.0.0.1:5244
file
然后去申请ssl证书,来到证书菜单,点击ACME账户点击创建,按照下图填写。
file
然后点击创建证书,选择刚刚创建好的acme账户,然后使用http方式创建证书
file
最后回到网站配置页面,打开https的配置,选择刚刚的证书保存
file
然后访问你的域名,看到下面的页面
file

配置alist

先回到ssh获取alist创建的默认密码

docker logs alist

file
图中圈起来的就是密码,复制这个密码到网页去登陆,账号是admin
file
然后点击下面的管理进入后台,来到存储点击添加
file
驱动选择本地存储,挂载路径随你写,也可以参考我的/软件收藏/科学上网/稳定版会在网页前端显示,根文件夹路径请严格按照我的写/gda/alist/app/releases,其他的都保持默认
file
接着再使用类似的操作创建一个预览版的路径,注意根文件夹路径变成了/gda/alist/app/prereleases
file
最后回到前端主页就可以看到创建的文件夹以及程序下载的文件了
file

至此大工搞成,其他需要自定义的东西可以参考alist的官方文档在alist后台进行设置,如需添加更多待下载的项目可以前往/opt/gda/config/config.yaml中添加后执行

docker restart gda

来更新。

此作者没有提供个人介绍
最后更新于 2025-03-30