轻量级项目任务管理工具DooTask
昨天自己去做了 1
次核酸,这周还有 2
次
本文其实去年就想写了,但真正动手是今年
3
月份,老苏在CentOS 7
上安装非常顺利,但是在群晖上却遇到了一些问题,所以就搁置了。之后好几位网友跟老苏提到DooTask
,原本是想基于官方的cmd
脚本改一个适合在群晖上运行的版本,奈何水平太菜,所以直到今天也只能通过一次一次输入命令行来完成安装。 😂
前言
什么是 DooTask ?
DooTask
是一款轻量级的开源在线项目任务管理工具,提供各类文档协作工具、在线思维导图、在线流程图、项目管理、任务分发、即时IM,文件管理等工具。
官方提供了在线 demo
:https://www.dootask.com
可以先去体验,如果合适再考虑是否需要自己搭建。
准备
如果你不是在群晖上安装,建议使用官方的教程和脚本,简单高效,不容易出错。
老苏是在 DS3617xs
上安装的,其中
docker
的版本是20.10.3, build b35e731
docker-compose
的版本是1.28.5, build 1bbbad71
之所以要写版本是因为按照官方的教程,在使用 ./cmd install
一键安装时,会显示 docker-compose
版本过低
按照官方的要求,Docker Compose
需要 v2.0+
如果只是屏蔽版本检测又会出现其他一堆的错误,所以老苏有两个选择:
- 升级
docker-compose
,但老苏查了一下,似乎并没有满足要求的版本; - 尝试改用
docker-compose up -d
来一键启动,需要很多命令行操作,但似乎这是目前唯一的选择;
事实证明,并不需要
Docker Compose v2.0+
也是可以安装成功的
在你开始之前,老苏有必要提醒大家,后面均为命令行操作,如果遇到问题,没有点基础排查起来可能会比较困难,老苏本人也是一样,所以如果不是特别需要,不建议在群晖上安装。
安装 Git
-
套件中心
→设置
–>套件来源
–>新增
- 名称:随意;
- 位置:
http://packages.synocommunity.com/
-
套件中心
–>社群
,找到并安装套件Git
下载代码
用 SSH
客户端连到群晖,依次执行下面的命令
1 | # 进入 docker 目录 |
设置 .env
1 | # 创建 .env 文件 |
从 .env.docker
复制出 .env
,并按下面老苏给的示例进行修改,需要修改的参数不多,其中:
APP_URL
:为主机IP
,也就是群晖主机的IP
,如果反代,这里也不用修改;APP_PORT
:是应用访问的端口,默认为2222
,不冲突的话就保持默认好了;DB_PASSWORD
:数据库的密码;COMPOSE_HTTP_TIMEOUT
:这一行是老苏新增的,主要解决执行docker-compose up -d
可能存在的超时问题;
下图就是曾经出现过的超时错误
1 | APP_NAME=DooTask |
修改 docker-compose.yml
原本老苏并不打算修改 docker-compose.yml
,但发现不修改的话,在导入数据库表操作时会报错👇
因此还是需要修改 docker-compose.yml
中的 mariadb
部分,考虑到篇幅,老苏只贴了相关的部分:
- 老苏注释了端口,这主要是从安全性考虑,毕竟咱也不是做开发,当然不注释也没问题;
- 在环境变量中新增
MYSQL_ROOT_HOST: "0.0.0.0"
,解决不能远程访问,导致导入表出错的问题;
1 | mariadb: |
启动
准备工作完成后,就可以开始启动了
1 | # 创建数据库目录 |
先不要着急访问,因为现在访问肯定是返回错误页面的
还需要我们做最后的一些配置工作
配置
先检测所有的容器是否都已经正常启动
下图中数据库就有存在问题,正在不断重启,至于原因老苏也不知道
如果一切正常的话,就可以进行下面的操作了
1 | # 进入 PHP 容器 |
看到 Database seeding completed successfully.
,说明数据库导入成功了
运行
在浏览器中输入 http://群晖IP:2222
就能看到登录界面
第一次需要先注册账号
如果出现 System error
提示,很可能是数据库有问题
注册成功
自动跳转到主界面
接下来你就可以新建项目、添加人员,分发任务等等。
反向代理
DooTask
支持反代,但是不支持在非标端口运行,因为在 https://dt.laosu.ml:444/manage/dashboard
中你会发现,javascript
被截掉了端口
1 | <script src="//dt.laosu.ml/js/language.all.js"></script> |
老苏不是程序员,所以只能用 Cloudflared
来映射到公网。
结语
这个项目在其他 linux
平台上安装,最大的难度可能是安装支撑环境,比如 php
、docker
等,但是项目本身的安装很简单,官方提供了脚本,可以完成安装、删除、备份、改端口、重置密码、升级等操作。
而在群晖上,不需要考虑环境,但是没有了脚本的支持,安装起来比较麻烦,不细心的话比较容易出错,各种操作只能自己手动完成了。
等有空了再看看他们家的 WookTeam
,一款轻量级的在线团队协作工具,安装似乎更简单一些。
参考文档
kuaifan/dootask: DooTask是一款轻量级的开源在线项目任务管理工具,提供各类文档协作工具、在线思维导图、在线流程图、项目管理、任务分发、即时IM,文件管理等工具。
地址:https://github.com/kuaifan/dootaskDooTask
地址:https://www.dootask.com/How to Update Docker Compose on a Synology NAS - WunderTech
地址:https://www.wundertech.net/how-to-update-docker-compose-on-a-synology-nas/基于 Swoole 实现高性能 HTTP 服务器 | 快速入门 | Swoole 从入门到实战教程
地址:https://laravelacademy.org/post/9801?page=2Packagist / Composer 中国全量镜像
地址:https://pkg.xyz/Host ‘172.18.0.1’ is not allowed to connect to this MySQL server · Issue #275 · docker-library/mysql
地址:https://github.com/docker-library/mysql/issues/275#issuecomment-812897091