待办事项列表应用程序Vikunja
杨浦区防控办昨天傍晚发布了『 告杨浦居民书(二十二) 』,本周一、三、五、日晚间开展全区全员核酸筛查。比上周少了 2
次,说明情况应该是有所好转。
什么是 Vikunja ?
Vikunja (/vɪˈkuːnjə/)
是一个开源的待办事项列表应用程序。你可以用Todo
应用程序来组织你的生活。Vikunja
前端采用Vue.js
,后端采用go
,基于AGPLv3
协议 。
安装
建数据库
官方提供的 docker-compose
安装方式,需要另外安装 Mariadb 10
镜像,还是老套路,直接使用群晖自带的 Mariadb 10
在 phpMyAdmin
中创建了名为 vikunja
的空数据库。
设置文件
在群晖上以 Docker Compose
方式安装。
即使采用了群晖本身的数据库,Vikunja
依然涉及到前、后端两个镜像。
之前遇到前后端分离的项目,例如在线辅导工具 Nettu Meet
、网易云播放器 YesPlayMusic
等,因为项目本身没有提供官方的镜像,当时为了容易安装,老苏把前、后端编到了一个镜像中,但这种方式并不符合微服务的软件架构,所以这次我们实践下官方提供的外部用 Nginx
做代理转发的方式,这种方式和老苏封装在里面的道理是一样的,好处是对外暴露的端口尽量的少。
原版的 nginx.conf
在这里:https://vikunja.io/docs/full-docker-example/#example-with-nginx-as-proxy
docker-compose.yml
老苏对官方的 docker-compose.yml
做了调整
1 | version: '3' |
关于卷的说明如下
文件夹 | 装载路径 | 说明 |
---|---|---|
docker/vikunja/files |
/app/vikunja/files |
存放上传文件,比如图片 |
环境变量参数的说明如下,需根据前面数据库设置做修改
范围 | 默认 |
---|---|
VIKUNJA_DATABASE_HOST |
数据库主机 IP + 端口 |
VIKUNJA_DATABASE_TYPE |
数据库类型,默认设为 mysql |
VIKUNJA_DATABASE_USER |
数据库用户,默认设为 vikunja |
VIKUNJA_DATABASE_PASSWORD |
数据库密码,对应用户 vikunja 的密码,上面的示例用了 123456 |
VIKUNJA_DATABASE_DATABASE |
数据库库名,默认设为 vikunja |
nginx.conf
nginx.conf
来自官方的示例:https://vikunja.io/docs/full-docker-example/#example-with-nginx-as-proxy
这种设置不支持
gzip
,官方有支持的版本,请自行修改
1 | server { |
开始安装
用 SSH
客户端登录群晖后,在命令行后执行下面的命令
1 | # 新建文件夹 vikunja 和 子目录 |
运行
在浏览器中输入 http://群晖IP:3480
就能看到登录界面
需要先注册一个账号,再用这个账号登录,登录成功后的主界面
一个具体的任务
多个任务组成的列表
支持不同的视图方式,看板模式
甘特图模式,默认只有添加了起始和结束时间的任务才会显示
勾选 Show tasks which don't have dates set
之后
回到 Overview
参考文档
Vikunja
地址:https://github.com/go-vikunjaFull docker example | Vikunja
地址:https://vikunja.io/docs/full-docker-example/#example-with-nginx-as-proxy