AFFiNE 是一款开源的本地优先知识管理工具,融合文档、白板、数据库等多维功能,支持自由拖拽混搭内容模块。它将 Notion 的块编辑与 Miro 的无限画布结合,允许在同一页面无缝切换文档、思维导图和表格视图。同时支持云端实时协作与跨设备同步,并支持私有化部署。

准备服务器
这里我使用腾讯云来演示,搜索进入腾讯云官网,购买云服务器(新用户支持免费试用一个月),我使用的操作系统是Ubuntu24.04。购买完成之后进入控制台

进入云服务器

登录服务器
默认root无密码,直接点击登录
安装1Panel
粘贴这行命令(终端中粘贴快捷键为Ctrl+Shift+V)回车执行
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && sudo bash quick_start.sh
输入2回车选择中文
填写安装目录,我这里使用默认,直接回车
配置镜像加速,输入y回车
设置服务端口,这里我选择默认,直接回车
安全入口默认
设置1Panel用户名,不填的话就使用默认,我设置为了admin
设置密码
到这里就安装完成了,复制这里的外部地址,记住端口号
放行端口
来源选择全部IPV4地址,端口填入刚刚的端口,填完确定
部署服务
浏览器地址栏粘贴刚刚复制的外部地址,登录1Panel
安装PostgreSQL和Redis
选什么都可以
安装AFFiNE
填入管理员邮箱和管理员密码
这里最好勾选上允许外部访问,如果服务器开启了防火墙不勾选就无法访问服务
等待安装,过程可能比较长。
访问使用AFFiNE
回到腾讯云服务器的防火墙,放行3010端口
随后在浏览器地址栏输入 <你的IP>:3010 即可访问,填写管理员账户(之前在1Panel中填写的好像无效了,不过没影响)
你可以重新打开<你的IP>:3010 进入网页版的AFFiNE,可以直接在浏览器中使用。
在客户端添加服务器
填入服务器地址
填入邮箱密码登录。
启动云同步,这样本地文档就会同步在服务器了。
自定义云服务名
默认的名字是My Selfhosted AFFiNE Cloud,可以通过修改配置来修改名字
回到1Panel,打开配置文件路径
依次打开 data>config>affine.js
可以在这里修改名字,修改完之后保存并重启affine应用就好了
配置邮件服务(多人协作)
多人协作需要邀请用户加入工作区,被邀请的用户需要在你的服务器上注册(就是上面那个affine的网页),如果不配置邮件服务,被邀请的用户就无法收到同意链接。1Panel无法直接配置,需要手动修改容器的环境变量。这里的邮件服务以QQ邮箱为例
打开QQ邮箱的 账号与安全>安全设置 ,开启此服务,复制并保存好授权码
回到1Panel,打开容器,找到带有 affine 字样的容器,点击编辑
到最下方找到环境变量,粘贴一下内容,将邮箱替换为你的邮箱,密码为刚刚的授权码。
注意不要有空行,否则可能会出错
MAILER_HOST=smtp.qq.com
MAILER_PORT=465
MAILER_USER=<你的QQ邮箱>
MAILER_PASSWORD=<授权码>
MAILER_SENDER=<你的QQ邮箱>
MAILER_SECURE=true
点击确定之后容器会重建,重建完成之后需要重新登录。
随后在 设置>成员 中可以邀请成员加入。