LWT 是一个阅读分词软件,上传阅读材料后可以标记其中的生词并制卡复习,全称叫 Learning with Texts,不过我还没有怎么用过,详细的介绍可以看下面这几篇文章:
- 英语学习软件推荐——Learning with text (LWT) | 软通达
- Learning With Text 使用全解(也许) - 知乎
- LWT(learning With Text) 本地化安装 - 知乎
- Demo: Learning With Texts (LWT)
LWT 可以在本地安装也可以在 VPS 上安装,鉴于买了就要用的原则,我决定在 VPS 上安装看看。
我安装的 docker image 来源于:GitHub - jsz4n/lwt-docker: Learning With Texts with Docker,还有试过一些其他的 docker image ,都不太顺利,这安装介绍也写得不太清楚,几番周折之后,我修改了docker-compose.yml
中的部分内容后部署成功了,下面是我的搭建过程。
0. 准备
前提:安装好 docker 和 docker composer、nginx
如果还没安装的话,可以这样安装(Ubuntu):
bash
sudo apt updatesudo apt install docker docker-composesudo apt install nginx
准备一个解析好了的域名,如在 Cloudflare 里面配置域名n.example.org
:添加一个 A 记录,名称为n
,内容为 VPS 的 IP 地址,如123.123.123.14
我之前安装了比较新的 docker composer 版本(1.27.4),如果没有装新版的话,下面操作的docker compose
请全部替换为docker-compose
1. 下载仓库源码
我决定在/opt/
文件夹下面安装,首先进入 opt 文件夹
bash
cd /opt
复制 git 仓库并进入文件夹
bash
sudo git clone https://github.com/jsz4n/lwt-docker.gitcd lwt-docker
原 README 有讲需要本地 build 一下 image,但是感觉不是很必要?我直接用了 suzanje/lwt:latest
中的 image
2. 修改配置
打开docker-compose.yml
文件:
bash
sudo nano docker-compose.yml
修改密码:
docker-compose.ymlyaml
version: '3'services:mariadb:image: mariadb:10.6restart: alwaysenvironment:- 'MARIADB_ROOT_PASSWORD=密码' #改这里volumes:- ./media/:/var/lib/mysqllwt:image: suzanje/lwt:latestrestart: alwaysenvironment:- 'MARIADB_SERVER=mariadb'- 'MARIADB_ROOT_PASSWORD=密码' #和上面的一样ports:- '8080:80' #如果需要改端口的话改8080的地方depends_on:- mariadb
3. 上线容器
bash
sudo docker compose up -d
然后 sudo docker compose ps
一下看lwt-docker-lwt-1
和lwt-docker-mariadb-1
这两项的情况。
如果有错误的话,可以sudo docker logs lwt-docker-lwt-1
看下日志
或者试着在/opt/lwt-docker
文件夹下创建一个 media 文件夹:
bash
sudo mkdir media
然后再重新上线容器
4. 配置反代和 SSL
我比较懒,设置还是跟之前的配置 Cloudflare 的免费 SSL 证书里面一样配置,如果不想按照这个方法来配置反代的话可以参考:利用 Nginx 进行反代中的配置
bash
sudo nano /etc/nginx/conf.d/lwt.conf
写入
/etc/nginx/conf.d/lwt.confbash
server {listen 443 ssl;server_name 域名;location / {proxy_pass http://127.0.0.1:8080;proxy_set_header HOST $host;proxy_set_header X-Forwarded-Proto $scheme;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}
接着sudo nginx -t
之后 sudo systemctl reload nginx
重启 nginx 之后就可以在配置好的域名看到 LWT 啦
后续
如果我有继续使用的话后面可能会更新阅读配置和使用细节等内容(不确定)