编程 DooTask 自托管部署:./cmd install 起服务,升级 502 与迁移备份

2026-09-18 00:03:52

DooTask 自托管部署:./cmd install 起服务,升级 502 与迁移备份

DooTask 是一套开源的在线项目任务管理工具,包含文档协作、在线思维导图、在线流程图、项目管理、任务分发、即时 IM、文件管理等功能,消息部分使用非对称加密。技术栈为 PHP + Vue,AGPL-3.0,默认分支 pro,当前版本 v1.7.23。

  • GitHub:
  • Gitee 镜像:
  • 官网:

环境要求

  • Docker v20.10+ 与 Docker Compose v2.0+,必须安装。
  • 支持 CentOS / Debian / Ubuntu / macOS 等 Linux、Unix 系统。
  • 硬件建议 2 核 4G 以上。
  • 数据库为 MariaDB,对应默认 Docker Compose 里的 mariadb 服务。
  • Windows 环境先用 WSL2 装好 Linux 再部署。

Docker Compose 编排起来的服务包括 MariaDB、Redis、php-fpm、Nginx。

部署

一键脚本(推荐)

空目录执行会自动克隆并安装;在已安装目录执行则自动检查并升级:

curl -fsSL https://raw.githubusercontent.com/kuaifan/dootask/pro/bin/install | bash

手动部署

git clone --depth=1 https://github.com/kuaifan/dootask.git
# 或 git clone --depth=1 https://gitee.com/aipaw/dootask.git
cd dootask
./cmd install
./cmd install --port 80   # 自定义端口

常用命令

./cmd repassword      # 重置默认管理员密码
./cmd port 80         # 更换 HTTP 端口(HTTPS 端口需另配 SSL)
./cmd down / ./cmd up
./cmd dev / ./cmd prod   # 需 NodeJs 20+
./cmd update          # 升级,升级前务必备份数据
./cmd mysql backup / recovery
./cmd uninstall
./cmd help

./cmd mysql 是 CLI 子命令,实际操作的是 MariaDB 容器。

运行命令还有一组快捷方式:./cmd artisan ""./cmd php./cmd nginx./cmd redis./cmd composer./cmd supervisorctl./cmd test./cmd mysql

SSL 与反向代理

./cmd https    # 自动配置 SSL

如果用已有的 Nginx 做代理,加上这几个头:

proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

然后执行 ./cmd https agent,取消用 ./cmd https close

升级

在已安装目录执行一键脚本即可升级:

curl -fsSL https://raw.githubusercontent.com/kuaifan/dootask/pro/bin/install | bash

或本地执行 ./cmd update。升级前先备份数据。

升级后如果出现 502,运行下面这条把服务重启回来:

./cmd reup

迁移

  1. 旧项目执行备份,备份的是 MariaDB:
./cmd mysql backup
  1. 把旧项目的数据库备份文件、docker/appstorepublic/uploads 拷贝到新项目的同路径下。public/uploads 是上传的文件,docker/appstore 是应用商店目录,两个都不能漏。

  2. 在新项目还原:

./cmd mysql recovery

卸载与分支

./cmd uninstall

Pro 分支是默认分支,普通版可以这样克隆:

git clone -b v0.13.0 --depth=1

推荐文章

程序员茄子在线接单