只需三步,技术小白也能用macOS实现开源AI知识管理系统

你是否想拥有一套私人的知识管理和创作系统,既有AI助手支持,又能自动处理日常工作,还能记录和组织知识?本文专为Mac用户(尤其是技术小白)打造,介绍两种超简单的方法,帮你三步搭建一套包含AI聊天、自动化工作流、笔记系统和内容管理的全能知识中心。
这套系统能为你做什么
这套系统由四个强大的开源工具组成,它们协同工作,构建你的知识管理生态系统:
- OpenWebUI:✨ 私人AI助手平台,可连接ChatGPT等大模型,帮你解答问题、生成内容
- n8n:🔄 智能工作流工具,自动收集信息、处理数据,节省大量重复工作
- Trilium:📝 强大的个人知识库,记录笔记、整理资料,支持知识图谱
- WordPress:🌐 世界上最流行的知识管理系统,轻松发布和分享你的见解
你还需要在浏览器上安装Trilium Web Clipper,从而方便地把任何网页收藏到Trilium知识库。Brave还会在后续的文章/课程中,提供将n8n与OpenWebUI、Trilium、WordPress连接的方法,如何使用Trilium WP插件在WordPress中策展Trilium知识库,以及如何使用WordPress的AI辅助编辑插件。这是一套完全开源、所有功能用户自主可控的个人知识管理系统。
方法一:简单直接版(推荐小白用户)
第一步:安装Orbstack
你可以直接访问 https://orbstack.dev/download 下载Orbstack的安装包,如果你是苹果芯片,选择Apple Silicon版本。
安装完成后,双击安装即可。在应用程序文件夹中找到并点击Orbstack图标启动。
第二步:创建服务配置文件
这一步我们只需创建一个文本文件,里面包含所有服务的设置。别担心,只需复制粘贴即可!
- 打开终端,创建一个新文件夹:
mkdir -p ~/我的知识系统
cd ~/我的知识系统
- 使用文本编辑器创建配置文件:
nano docker-compose.yml
- 复制粘贴以下内容(这是各个服务的配置信息,可以按需配置,DYOR):
# 项目名称
name: my-ai-stack
# 服务定义
services:
# Open WebUI服务
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
ports:
- "3000:8080"
volumes:
- ./data/open-webui:/app/backend/data
extra_hosts:
- "host.docker.internal:host-gateway"
restart: always
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- app_network
# Trilium笔记应用
trilium:
image: zadam/trilium
container_name: trilium
ports:
- "8080:8080"
volumes:
- /home/knight/app/trilium:/home/node/trilium-data
environment:
- TRILIUM_DATA_DIR=/home/node/trilium-data
restart: always
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- app_network
# MariaDB数据库(用于WordPress)
db:
image: mariadb:10.6.4-focal
container_name: wordpress-db
command: --default-authentication-plugin=mysql_native_password
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
- MYSQL_ROOT_PASSWORD=somewordpress
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=wordpress
expose:
- 3306
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "root", "-p${MYSQL_ROOT_PASSWORD}"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
networks:
- wordpress_network
# WordPress网站
wordpress:
image: wordpress:latest
container_name: wordpress
depends_on:
- db
volumes:
- wp_data:/var/www/html
ports:
- "80:80"
restart: always
environment:
- WORDPRESS_DB_HOST=db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=wordpress
- WORDPRESS_DB_NAME=wordpress
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- wordpress_network
- app_network
# n8n自动化工具
n8n:
image: n8nio/n8n:latest
container_name: n8n
ports:
- "5678:5678"
volumes:
- n8n_data:/home/node/.n8n
environment:
- N8N_PORT=5678
- N8N_PROTOCOL=http
- NODE_ENV=production
- WEBHOOK_URL=https://your-domain.com # 替换为您的实际域名
- GENERIC_TIMEZONE=Asia/Shanghai # 根据需要调整时区
restart: always
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:5678/healthz"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
- app_network
# 卷定义
volumes:
db_data:
name: wordpress_db_data
wp_data:
name: wordpress_files
n8n_data:
name: n8n_data
# 网络定义
networks:
app_network:
name: app_network
driver: bridge
wordpress_network:
name: wordpress_network
driver: bridge
- 保存并退出:按
Ctrl+X
,然后按Y
确认,最后按Enter
第三步:一键启动所有服务
- 在终端中执行以下命令:
cd ~/我的知识系统
docker compose up -d
- 首次运行时,系统会自动下载所需的程序(这可能需要几分钟,取决于你的网速)
- 下载完成后,打开Orbstack,点击左侧Containers菜单,即可看到并通过链接访问你的知识系统各个组件。你现在使用的是Orbstack自定义的本地域名。
🎉 恭喜! 你已成功搭建了自己的AI赋能知识管理系统!接下来,你需要进一步学习如何配置和使用各个软件。
方法二:进阶版(使用Utunbtu虚拟机)
这个方法使用了专门的Ubuntu虚拟机来管理相关服务,并使用Dockge直观地管理所有服务。略微复杂一点,但理解了这种方法后,你可以进一步探索如何用专门的本地服务器来部署,体验Linux之美。
第一步:安装Orbstack并创建Ubuntu系统
- 安装Orbstack(同方法一)
- 启动Orbstack后,点击界面上的”新建”按钮
- 选择”Ubuntu”选项并点击创建
- 等待Ubuntu系统创建完成(约1-2分钟)
- 双击进入Ubuntu的命令行工具
第二步:在Ubuntu中安装必要工具
1. 在Ubuntu终端中,复制粘贴以下命令一次性安装Docker:
sudo apt install apt-transport-https ca-certificates curl software-properties-common -y
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo docker --version
2. 安装Dockge(可视化管理工具):
# Create directories that store your stacks and stores Dockge's stack
sudo mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge
# Download the compose.yaml
sudo curl https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml --output compose.yaml
# Start the server
sudo docker compose up -d
# If you are using docker-compose V1 or Podman
# sudo docker-compose up -d
3. 访问Dockge Web界面
Dockge部署完成后,可以通过以下URL访问Web界面:
http://localhost:5001
第三步:使用Dockge进行服务部署和管理
- 打开浏览器访问:http://localhost:5001 (这是Dockge管理界面)
- 完成初始设置后,点击”添加新Stack”按钮
- 填写:
- 名称:我的知识系统
- 路径:/opt/stacks/my-knowledge-system
4. 在编辑器中粘贴以下配置代码:
version: "3.8"
services:
open-webui:
image: ghcr.io/open-webui/open-webui:main
ports:
- 3000:8080
volumes:
- ./data/open-webui:/app/backend/data
extra_hosts:
- host.docker.internal:host-gateway
restart: always
trilium:
restart: always
image: zadam/trilium
ports:
- 8080:8080
volumes:
- /home/knight/app/trilium:/home/node/trilium-data
environment:
- TRILIUM_DATA_DIR=/home/node/trilium-data
db:
image: mariadb:10.6.4-focal
command: --default-authentication-plugin=mysql_native_password
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
- MYSQL_ROOT_PASSWORD=somewordpress
- MYSQL_DATABASE=wordpress
- MYSQL_USER=wordpress
- MYSQL_PASSWORD=wordpress
expose:
- 3306
- 33060
wordpress:
image: wordpress:latest
volumes:
- wp_data:/var/www/html
ports:
- 80:80
restart: always
environment:
- WORDPRESS_DB_HOST=db
- WORDPRESS_DB_USER=wordpress
- WORDPRESS_DB_PASSWORD=wordpress
- WORDPRESS_DB_NAME=wordpress
n8n:
image: n8nio/n8n:latest
restart: always
ports:
- 5678:5678
volumes:
- n8n_data:/home/node/.n8n
environment:
- N8N_PORT=5678
- N8N_PROTOCOL=http
- NODE_ENV=production
- WEBHOOK_URL=https://your-domain.com # 替换为您的实际域名
- GENERIC_TIMEZONE=Asia/Shanghai # 根据需要调整时区
volumes:
db_data:
wp_data:
n8n_data:
networks:
default:
5. 现在可以通过浏览器访问所有服务:
- AI助手界面: http://localhost:8080
- 自动化工作流: http://localhost:5678
- 笔记知识库: http://localhost:8000
- WordPress知识管理: http://localhost (直接访问,无需输入端口号)
- 服务管理界面: http://localhost:5001
使用指南:打造你的知识管理工作流
搭建完成后,如何将这些工具组合使用,构建一个完整的知识管理系统?
🧠 知识获取流程
- 使用OpenWebUI向AI提问,获取信息和创意
- 将有价值的AI回答保存到Trilium笔记中
- 使用n8n创建自动化工作流,定期从网站、RSS等收集信息
- 将收集到的信息自动存入笔记或发布到WordPress
📚 知识整理流程
- 在Trilium中建立知识结构,整理笔记和想法
- 使用n8n自动处理和分类信息
- 用AI助手(OpenWebUI)帮助总结和提炼知识点
📣 知识分享流程
- 将成熟的知识从Trilium转移到WordPress
- 用OpenWebUI帮助优化内容和排版
- 通过n8n自动在社交媒体分享新发布的内容
常见问题解答
基础问题
问:我完全没有技术基础,能搭建成功吗?
答:能!我们设计的方法一特别适合技术小白,只需复制粘贴几个命令即可。
问:这套系统会占用我多少电脑资源?
答:相比传统虚拟机,Orbstack非常轻量。一般8GB内存的Mac就能流畅运行。不用时可以一键关闭所有服务。
问:我的数据安全吗?会不会丢失?
答:所有数据都存储在你的Mac上,不会上传到云端。数据存在Docker卷中,即使重启电脑也不会丢失。
问:80端口无法访问怎么办?
答:如果无法使用80端口(比如显示”权限被拒绝”或”端口已被占用”),可以修改配置文件中WordPress的端口映射为”8888:80″,这样就可以通过http://localhost:8888访问WordPress了。
使用问题
问:如何启动和关闭系统?
答:
- 启动:
cd ~/我的知识系统 && docker compose up -d
- 关闭:
cd ~/我的知识系统 && docker compose down
问:如何更新各个服务?
答:
- 方法一:
cd ~/我的知识系统 && docker compose pull && docker compose up -d
- 方法二:在Dockge界面点击”拉取&更新”按钮
问:如何查看某个服务的日志?
答:docker logs 服务名称
例如:docker logs openwebui
两种方法如何选择?
👶 适合纯小白:方法一
- 更简单直接,只需复制粘贴几个命令
- 使用Orbstack进行管理,简单且轻量
- 适合直接使用服务,不需要频繁调整配置的用户
👨💻 适合进阶小白:方法二
- 使用Ubuntu系统,便于进行进阶拓展
- 更接近真实服务器环境,便于学习
- 适合喜欢尝试不同设置、享受探索过程的用户
无论你选择哪种方法,这套知识管理系统都能帮你将想法、资料和知识整合起来,借助AI的力量提升工作和学习效率。最重要的是,所有数据都存储在你自己的电脑上,完全掌握在你手中!
开始行动吧! 只需三步,打造属于你的AI赋能知识管理系统!
回复