这个sqtracker比我之前介绍的那个torrust功能更完善,前端也好看许多。就目前而言,如果要我在这两个程序里面选一个建站的话,我个人推荐sqtracker。
项目地址:https://github.com/tdjsnelling/sqtracker,里面有各个界面的预览图。
在开始安装sqtracker前需要准备一个smtp服务器,因为程序强制用户验证邮箱。可以参考这篇文章自建一个。
安装docker:
apt -y update apt -y install curl git curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh
克隆项目代码,这里注意版本号,当前最新的版本是1.3.0:
cd /opt git clone -b 1.3.0 https://github.com/tdjsnelling/sqtracker.git cd sqtracker
编辑traefik配置文件:
nano traefik.yml
将域名pt.example.com修改成你自己的:
rule: "Host(`pt.example.com`) && PathPrefix(`/api`, `/sq`)" rule: "Host(`pt.example.com`) && PathPrefix(`/`)"
编辑compose文件:
nano docker-compose.yml
traefik申请ssl证书的时候需要一个有效的邮箱,将邮箱email@example.com修改成你自己的:
"--certificatesresolvers.tlsresolver.acme.email=email@example.com"
复制一份sqtracker配置文件:
cp config.example.js config.js
编辑config.js:
nano config.js
这个config.js包含了程序几乎所有的配置项,下面我只列出必须要改动的配置:
SQ_BASE_URL: "https://pt.example.com" // 网站地址 SQ_API_URL: "https://pt.example.com/api" // api地址 SQ_MAIL_FROM_ADDRESS: "smtp@example.com" // smtp发信时使用的邮箱地址 SQ_SMTP_HOST: "mx1.example.com" // smtp服务器地址 SQ_SMTP_PORT: 587 // smtp服务器端口,这里也可以用25或者465端口 SQ_SMTP_SECURE: false // 如果smtp服务器用465端口请将这里修改为true SQ_JWT_SECRET: "secret" // 随机字符串 SQ_SERVER_SECRET: "secret" // 随机字符串 SQ_ADMIN_EMAIL: "admin@example.com" // 你的邮箱地址,验证邮件将发送到这个邮箱。 SQ_SMTP_USER: "smtp@example.com" // smtp用户的邮箱地址 SQ_SMTP_PASS: "password" // smtp用户邮箱的密码
上面的secret你可以通过执行2次如下命令来生成:
openssl rand -base64 45
启动:
docker compose up -d
打开你的站点,默认的管理员账号密码均是admin。登录进去后,去你的邮箱查看验证邮件,验证完成后务必修改你的管理员密码。
测试了一下,可以正常工作:
这是目前开箱即用的搭建方法,但细心的人可能已经发现了反向代理用的是traefik,如果你的机器上还装了nginx,这会导致80、443端口冲突。后续我看看能不能按照我自己的使用习惯改一下,只用docker运行sqtracker,反向代理用本机的nginx。