v0.2.1使用了golang作为服务端重写,目前已经基本实现了0.2.0版本的大部分功能.包体积更小了.
- 增加了多用户模式,后台可以自由开启是否运行注册多用户.
- 支持在Linux/MacOS/Windows平台双击本地启动.
- 标签的定义,以#号开头,空格/空行结尾的中间的部分会被认为是标签.
- 完善了tag标签的选择,在memo发言的输入框里点击右键可以选择标签来插入.
- 支持了完整的markdown,但是目前样式只适配了常用的几个标签,更多的待接下来完善.
- 默认用户名密码
admin/a123456
,登陆后后台可以修改. - 从0.2升级上来的注意音乐和本地音频会丢失,需要重新添加,其它的本地/远程图片/本地/远程视频/豆瓣相关都不会丢失,自动迁移.
环境变量
目前支持以下几个环境变量,环境变量的放置是:
- 在项目根目录新建.env文件,里面填入,格式是
KEY=VALUE
. - 或者自行设置环境变量,不同的操作系统设置环境变量不一致,自行搜索.
变量名 | 解释 | 默认值 |
---|---|---|
DB | sqlite数据库路径 | 当前目录下的db.sqlite,不存在会自动创建 |
PORT | 监听端口 | 默认3000 |
JWT_KEY | JWT密钥,加密登录token的 | 默认空,自动生成,不填写每次启动生成,每次启动镜像需要重新登录 |
UPLOAD_DIR | 上传文件本地目录 | 默认当前目录下的upload文件夹,不存在会自动创建 |
LOG_LEVEL | 日志级别 | 默认info,需要时可以改成debug输出更多日志 |
ENABLE_SWAGGER | 是否启用swagger文档 | 默认false,开启填true,启用之后访问路径/swagger/index.html 即可 |
启动方式
Docker启动
启动JWT_KEY记得自己修改
sh
basepath=$(cd `dirname $0`; pwd)
mkdir -p ${basepath}/moments
docker run --name moments -e JWT_KEY=cfqYVP6CZm9mSqLVGlmL -d -v ${basepath}/moments:/app/data -p 3000:3000 kingwrcy/moments:latest
Docker更新
sh
basepath=$(cd `dirname $0`; pwd)
mkdir -p ${basepath}/moments
docker stop moments && docker rm moments
docker pull kingwrcy/moments:latest
docker run --name moments -e JWT_KEY=cfqYVP6CZm9mSqLVGlmL -d -v ${basepath}/moments:/app/data -p 3000:3000 kingwrcy/moments:latest
Docker Compose启动
docker-compose.yml
文件
yml
version: '3'
services:
moments:
image: kingwrcy/moments:latest
environment:
JWT_KEY: "BbYS93dHHfIC1cQR8rI6"
ports:
- "3000:3000"
volumes:
- moments-data:/app/data
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone:ro
volumes:
moments-data:
一键启动 && 更新也是这个脚本
sh
docker-compose up -d --pull
本地启动
由于使用了go来开发,所以可以跨平台,支持在linux/windows/macos平台直接启动.
- 新建一个空目录,下载好对应平台的可执行文件.
- 双击启动.
- 需要配置环境变量的,根目录下新建
.env
文件,自行配置.
本地开发
前置条件,node/go/pnpm环境,没有这些环境的先自行安装.
启动前端
默认监听在3000端口
sh
cd front
pnpm i
pnpm dev
启动后端
默认监听在37829端口
sh
cd backend
go mod download
go mod tidy
go run .
本地打包
前置条件-> gcc/make/upx(可选),需要gcc是因为gorm的sqlite驱动使用了cgo,没有gcc无法跨平台编译,upx是用来压缩windows的可执行文件的(可选)
执行命令
sh
cd backend && make build
以上命令会在backend/dist
目录生成windows/linux/macos三个平台的可执行文件.
- 填入图片链接后迟迟不回显,需要最后手打一个回车(链接地址过长?)
- 本地上传多个图片时,在不清空原有图片链接地址的情况下再次上传(分次上传),只会保留原有地址最后的逗号,而原有地址消失
已有的事后必再有,已行的事后必再行
#12
– 貌似还缺收起和全文