Linux安装AppFlowy分三类:普通用户用预编译版(.deb/AppImage),5分钟启动但禁用AI;开发者需源码编译(flutter build linux + cargo build)以启用appflowy_ai插件和自定义Rust后端;企业用户可Docker自托管AppFlowy-Cloud实现私有化部署。

Linux 上安装 AppFlowy 不是「下载一个包点两下就行」的事——你得先想清楚:要的是开箱即用的本地笔记,还是可多人访问的私有 Notion 服务?选错路径,后面全卡在依赖或权限上。
直接运行预编译版(.deb / AppImage)
适合只想快速试用、不碰 AI 功能、不改源码的普通用户。官方 release 页面提供 appflowy_*.deb 和 AppFlowy-x86_64.AppImage 两种格式,Ubuntu/Debian 推荐用 .deb:
- 下载后执行
sudo apt install ./appflowy_*.deb;若报依赖缺失(如libasound2或libgtk-3-0),补一句sudo apt --fix-broken install - AppImage 需先加执行权限:
chmod +x AppFlowy-x86_64.AppImage,再运行;但部分桌面环境(如 GNOME Wayland)可能无法调出系统托盘或中文输入法 - 数据默认存于
$HOME/.local/share/AppFlowy,UI 里不能改路径;如需迁移,手动编辑~/.config/AppFlowy/settings.json中的data_dir字段 - 预编译版默认禁用
appflowy_ai插件——AI 总结、智能模板等功能不可用,且无法切换本地 Rust 后端
从源码构建桌面版(启用 AI + 自定义后端)
只有走这一步,才能用上 AI 功能、连接自己编译的 rust-lib 服务、修改主题或插件逻辑。关键不是“能不能编”,而是“编完能不能跑”:
- Flutter 必须用
stable渠道:flutter channel stable && flutter upgrade;master或beta会因platform_views缺失直接构建失败 - 先跑
flutter pub get(在frontend/appflowy_flutter目录),再flutter build linux;flutter run只起开发服务器,不生成可执行文件 - 生成的二进制在
build/linux/x64/release/bundle/appflowy,直接运行可能报libayatana-appindicator3-1或libgtk-3-0找不到——用ldd ./appflowy | grep "not found"检查,Ubuntu/Debian 补装:sudo apt install libayatana-appindicator3-1 libgtk-3-0 - Rust 后端需提前启动:
cargo build(在frontend/rust-lib),默认监听localhost:8000;如需换地址,改frontend/appflowy_flutter/.env里的API_BASE_URL
Docker 自托管(AppFlowy-Cloud)
这不是“装个 App”,而是部署一套带 PostgreSQL、Nginx、SMTP 的完整 Web 服务,适合团队或需要多端同步的场景。别跳过内存和反向代理配置:
- 宿主机内存必须 ≥4GB;PostgreSQL 容器在 2GB 下极易 OOM 崩溃,建议在
docker-compose.yml里显式限制内存:mem_limit: 1.5g -
env.dev.secret必须复制并编辑:确认DATABASE_URL端口没被宿主机 PostgreSQL 占用(默认 5432);APPFLOWY_FRONTEND_URL必须写成完整 URL,例如http://your-domain.com:8080,少协议或端口都会导致登录后跳转 404 - Nginx 反向代理必须支持 WebSocket:
proxy_set_header Upgrade $http_upgrade;和proxy_set_header Connection "upgrade";缺一不可,否则协作文档光标不同步 - SMTP 配置为空 → 注册邮箱收不到验证邮件;测试阶段可用
mailhog容器替代,启动后访问http://localhost:8025查收信
最容易被忽略的点:AppFlowy 在 Linux 桌面环境下对 GTK 主题、音视频后端、Wayland/X11 切换非常敏感——比如中文输入法失效、托盘图标不显示、录音按钮灰掉,往往不是 AppFlowy 本身的问题,而是系统级依赖没对齐。先跑 flutter doctor -v 和 ldd ./appflowy,比反复重装更省时间。











