本次使用轻量级开源系统Teedy,无需高端硬件,任意Linux云服务器(最低配置1核2G、40G系统盘)或本地Linux/Windows电脑均可,优先选Ubuntu 22.04 LTS,兼容性最好。
若用本地Ubuntu,跳过云服务器连接;若用云服务器,先用终端工具(Windows下用FinalShell/PowerShell,Mac/Linux用Terminal)通过SSH连接:
```bash SSH连接(替换为你的云服务器公网IP) ssh root@你的公网IP ```连接成功后,执行以下命令更新系统并安装Docker、Docker Compose:
```bash 更新系统软件源 sudo apt update && sudo apt upgrade -y 安装Docker依赖 sudo apt install -y apt-transport-https ca-certificates curl software-properties-common 添加Docker官方GPG密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg 设置Docker稳定版软件源 echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 再次更新并安装Docker、Docker Compose sudo apt update && sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin 验证安装是否成功 sudo docker --version sudo docker compose version ```若输出版本号,则安装完成。
为了方便管理,创建独立的存储目录,用于存放Teedy的配置、数据、上传文件:
```bash 创建主目录 sudo mkdir -p /opt/teedy 创建子目录(配置、数据、临时文件、附件预览缓存) sudo mkdir -p /opt/teedy/config /opt/teedy/data /opt/teedy/tmp /opt/teedy/previews 修改目录权限,避免权限报错 sudo chmod -R 777 /opt/teedy ```进入主目录,创建并编辑docker-compose.yml:
```bash cd /opt/teedy sudo nano docker-compose.yml ```将以下完整配置复制进去,注意修改TZ时区为Asia/Shanghai,DB_PASSWORD为自己设置的强密码:
```yaml version: '3.8' services: teedy: image: teedy/teedy:latest container_name: teedy restart: always ports: - "8080:8080" volumes: - ./config:/usr/local/tomcat/.teedy - ./data:/teedy-data - ./tmp:/tmp - ./previews:/teedy-previews environment: - TZ=Asia/Shanghai - DB_URL=jdbc:postgresql://db:5432/teedy - DB_USER=teedy - DB_PASSWORD=你的强密码 - TMP_DIR=/tmp - PREVIEW_DIR=/teedy-previews - JAVA_OPTS=-Xmx1024m depends_on: - db db: image: postgres:15-alpine container_name: teedy-db restart: always volumes: - ./data/db:/var/lib/postgresql/data environment: - TZ=Asia/Shanghai - POSTGRES_USER=teedy - POSTGRES_PASSWORD=你的强密码 - POSTGRES_DB=teedy ```编辑完成后,按Ctrl+O保存,按Enter确认文件名,最后按Ctrl+X退出nano。
执行以下命令拉取镜像并启动服务(首次启动需等待2-5分钟,因为要初始化数据库):
```bash sudo docker compose up -d ```查看服务状态,确认两个容器(teedy、teedy-db)均显示Up:
```bash sudo docker compose ps ```打开浏览器,输入http://你的公网IP:8080(本地部署输入http://localhost:8080),首次访问会跳转到初始化页面。
在初始化页面填写信息:管理员邮箱、管理员密码、系统名称(如“XX工作室档案库”),点击“Create”完成。
Teedy自带基础预览,但需配置Unoconv增强PDF、Word、Excel等格式的预览能力。进入Teedy容器安装:
```bash 进入Teedy容器 sudo docker exec -it teedy /bin/sh 安装Unoconv apt update && apt install -y unoconv 退出容器 exit ```
重启Teedy服务生效:
```bash sudo docker compose restart teedy ```单个归档:
批量归档(仅支持zip压缩包):
快速检索:在顶部搜索框输入关键词(支持文档标题、描述、标签、甚至OCR识别后的图片文字),按Enter即可。
高级检索:点击顶部搜索框右侧的放大镜图标,可按标签、创建日期、到期日期、作者、文件类型等多维度筛选。
编辑docker-compose.yml,将8080端口替换为非常用端口(如9527):
```yaml ports: - "9527:8080" ```保存后重启服务:
```bash sudo docker compose up -d ```注意:云服务器需在控制台安全组中开放9527端口。
创建备份脚本:
```bash sudo nano /opt/teedy/backup.sh ```复制以下内容,替换BACKUP_DIR=/opt/teedy/backups为你的备份目录(建议挂载云盘):
```bash !/bin/bash 备份目录 BACKUP_DIR=/opt/teedy/backups 备份文件名(包含日期时间) BACKUP_FILE=teedy_backup_$(date +%Y%m%d_%H%M%S).tar.gz 创建备份目录(若不存在) mkdir -p $BACKUP_DIR 备份数据库 sudo docker exec -t teedy-db pg_dump -U teedy teedy > $BACKUP_DIR/db_$(date +%Y%m%d_%H%M%S).sql 打包所有数据、配置、备份的数据库 sudo tar -zcvf $BACKUP_DIR/$BACKUP_FILE /opt/teedy/config /opt/teedy/data /opt/teedy/previews $BACKUP_DIR/db_$(date +%Y%m%d_%H%M%S).sql 删除临时的数据库备份文件 rm $BACKUP_DIR/db_$(date +%Y%m%d_%H%M%S).sql 删除7天前的备份 find $BACKUP_DIR -name "teedy_backup_.tar.gz" -mtime +7 -exec rm {} \; ```保存后修改脚本权限并测试:
```bash sudo chmod +x /opt/teedy/backup.sh sudo /opt/teedy/backup.sh ```添加定时任务(每日凌晨2点自动备份):
```bash sudo crontab -e ```选择1(nano编辑器),在最后一行添加:
```bash 0 2 /opt/teedy/backup.sh ```保存并退出即可。