Skip to content

Latest commit

 

History

History
193 lines (139 loc) · 16.9 KB

README_CN.md

File metadata and controls

193 lines (139 loc) · 16.9 KB

Olares - 为本地 AI 打造的开源私有云操作系统

Mission
Last Commit Build Status GitHub release (latest by date) GitHub Repo stars Discord License

Readme in English Readme in Chinese Readme in Japanese

olares_intro.mp4

Olares 让你体验更多可能:构建个人 AI 助理、随时随地同步数据、自托管团队协作空间、打造私人影视厅——无缝整合你的数字生活。

网站 · 文档 · 下载 LarePass · Olares 应用 · Olares Space

介绍

Olares 是为本地端侧 AI 打造的开源私有云操作系统,可轻松将您的硬件转变为 AI 家庭服务器。

  • 运行领先 AI 模型:在您的硬件上轻松部署并掌控 LLaMA、Stable Diffusion、Whisper 和 Flux.1 等顶尖开源 AI 模型。
  • 轻松部署 AI 应用:通过 Olares 应用市场,轻松部署丰富多样的开源 AI 应用。无需复杂繁琐的配置。
  • 随心访问:通过浏览器随时随地访问你的 AI 应用。
  • 更智能的专属 AI 体验:通过类似模型上下文协议(Model Context Protocol, MCP)的机制,Olares 可让 AI 模型无缝连接 AI 应用与您的私人数据集,提供基于任务场景的个性化 AI 体验。

为 Olares 点亮 🌟 以及时获取新版本和更新的通知。

为什么选择 Olares?

在以下场景中,Olares 为您带来私密、强大且安全的私有云体验:

🤖本地 AI 助手:在本地部署运行顶级开源 AI 模型,涵盖语言处理、图像生成和语音识别等领域。根据个人需求定制 AI 助手,确保数据隐私和控制权均处于自己手中。

💻个人数据仓库:所有个人文件,包括照片、文档和重要资料,都可以在这个安全的统一平台上存储和同步,随时随地都能方便地访问。

🛠️自托管工作空间:利用开源 SaaS 平替方案,无需成本即可为家庭或工作团队搭建一个功能强大的工作空间。

🎥私人媒体服务器:用自己的视频和音乐库搭建一个私人流媒体服务,随时享受个性化的娱乐体验。

🏡智能家居中心:将所有智能设备和自动化系统集中在一个易于管理的控制中心,实现家庭智能化的简便操作。

🤝独立的社交媒体平台:在 Olares 上部署去中心化社交媒体应用,如 Mastodon、Ghost 和 WordPress,自由建立和扩展个人品牌,无需担忧封号或支付额外费用。

📚学习探索:深入学习自托管服务、容器技术和云计算,并上手实践。

快速开始

系统兼容性

Olares 已在以下 Linux 平台完成测试与验证:

  • Ubuntu 20.04 LTS 及以上版本
  • Debian 11 及以上版本

其他安装方式 Olares 也支持在 macOS、Windows、PVE、树莓派等平台上运行,或通过 Docker Compose 在 Linux 上部署。但请注意,这些方式仅适用于开发和测试环境。详细安装指南请参阅其他安装方式

安装 Olares

参考快速上手指南安装并激活 Olares。

系统架构

Olares 的架构设计遵循两个核心原则:

  • 参考 Android 模式,控制软件权限和交互性,确保系统的流畅性和安全性。

  • 借鉴云原生技术,高效管理硬件和中间件服务。

    架构

详细描述请参考 Olares 架构文档。

功能特性

Olares 提供了一系列功能,旨在提升安全性、使用便捷性以及开发的灵活性:

  • 企业级安全:使用 Tailscale、Headscale、Cloudflare Tunnel 和 FRP 简化网络配置,确保安全连接。
  • 安全且无需许可的应用生态系统:应用通过沙箱化技术实现隔离,保障应用运行的安全性。
  • 统一文件系统和数据库:提供自动扩展、数据备份和高可用性功能,确保数据的持久安全。
  • 单点登录:用户仅需一次登录,即可访问 Olares 中所有应用的共享认证服务。
  • AI 功能:包括全面的 GPU 管理、本地 AI 模型托管及私有知识库,同时严格保护数据隐私。
  • 内置应用程序:涵盖文件管理器、同步驱动器、密钥管理器、阅读器、应用市场、设置和面板等,提供全面的应用支持。
  • 无缝访问:通过移动端、桌面端和网页浏览器客户端,从全球任何地方访问设备。
  • 开发工具:提供全面的工具支持,便于开发和移植应用,加速开发进程。

项目目录

Olares 包含多个在 GitHub 上公开可用的代码仓库。当前仓库负责操作系统的最终编译、打包、安装和升级,而特定的更改主要在各自对应的仓库中进行。

以下表格列出了 Olares 下的项目目录及其对应的仓库。

框架组件
路径 仓库 说明
frameworks/app-service https://github.com/beclab/app-service 系统框架组件,负责提供全系统应用的生命周期管理及多种安全控制。
frameworks/backup-server https://github.com/beclab/backup-server 系统框架组件,提供定时的全量或增量集群备份服务。
frameworks/bfl https://github.com/beclab/bfl 启动器后端(Backend For Launcher, BFL),作为用户访问点的系统框架组件,整合并代理各种后端服务的接口。
frameworks/GPU https://github.com/grgalex/nvshare GPU共享机制,允许多个进程(或运行在 Kubernetes 上的容器)安全地同时在同一物理 GPU 上运行,每个进程都可访问全部 GPU 内存。
frameworks/l4-bfl-proxy https://github.com/beclab/l4-bfl-proxy 针对 BFL 的第4层网络代理。通过预读服务器名称指示(SNI),提供一条动态路由至用户的 Ingress。
frameworks/osnode-init https://github.com/beclab/osnode-init 系统框架组件,用于初始化新节点加入集群时的节点数据。
frameworks/system-server https://github.com/beclab/system-server 作为系统运行时框架的一部分,提供应用间安全通信的机制。
frameworks/tapr https://github.com/beclab/tapr Olares 应用运行时组件。
系统级应用程序和服务
路径 仓库 说明
apps/analytic https://github.com/beclab/analytic 基于 Umami 开发的 Analytic,是一个简单、快速、注重隐私的 Google Analytics 替代品。
apps/market https://github.com/beclab/market 此代码库部署了 Olares 应用市场的前端部分。
apps/market-server https://github.com/beclab/market 此代码库部署了 Olares 应用市场的后端部分。
apps/argo https://github.com/argoproj/argo-workflows 用于协调本地推荐算法容器执行的工作流引擎。
apps/desktop https://github.com/beclab/desktop 系统内置的桌面应用程序。
apps/devbox https://github.com/beclab/devbox 为开发者提供的 IDE,用于移植和开发 Olares 应用。
apps/vault https://github.com/beclab/termipass 基于 Padloc 开发的团队和企业的免费 1Password 和 Bitwarden 替代品,作为客户端帮助您管理 DID、Olares ID和 Olares 设备。
apps/files https://github.com/beclab/files 基于 Filebrowser 修改的内置文件管理器,管理 Drive、Sync 和各种 Olares 物理节点上的文件。
apps/notifications https://github.com/beclab/notifications Olares 的通知系统。
apps/profile https://github.com/beclab/profile Olares 中的 Linktree 替代品。
apps/rsshub https://github.com/beclab/rsshub 基于 RssHub 的 RSS 订阅管理器。
apps/settings https://github.com/beclab/settings 内置系统设置。
apps/system-apps https://github.com/beclab/system-apps 基于 kubesphere/console 项目构建的 system-service 提供一个自托管的云平台,通过视觉仪表板和功能丰富的 ControlHub 帮助用户了解和控制系统的运行状态和资源使用。
apps/wizard https://github.com/beclab/wizard 向用户介绍系统激活过程的向导应用程序。
第三方组件和服务
路径 仓库 说明
third-party/authelia https://github.com/beclab/authelia 一个开源的认证和授权服务器,通过网络门户为应用程序提供双因素认证和单点登录(SSO)。
third-party/headscale https://github.com/beclab/headscale 在 Olares 中的 Tailscale 控制服务器的开源自托管实现,用于管理 LarePass 中不同设备上的 Tailscale。
third-party/infisical https://github.com/beclab/infisical 一个开源的密钥管理平台,可以在团队/基础设施之间同步密钥并防止泄露。
third-party/juicefs https://github.com/beclab/juicefs-ext 基于 Redis 和 S3 之上构建的分布式 POSIX 文件系统,允许不同节点上的应用通过 POSIX 接口访问同一数据。
third-party/ks-console https://github.com/kubesphere/console Kubesphere 控制台,允许通过 Web GUI 进行集群管理。
third-party/ks-installer https://github.com/beclab/ks-installer-ext Kubesphere 安装组件,根据集群资源定义自动创建 Kubesphere 集群。
third-party/kube-state-metrics https://github.com/beclab/kube-state-metrics kube-state-metrics(KSM)是一个简单的服务,监听 Kubernetes API 服务器并生成关于对象状态的指标。
third-party/notification-manager https://github.com/beclab/notification-manager-ext Kubesphere 的通知管理组件,用于统一管理多个通知渠道和自定义聚合通知内容。
third-party/predixy https://github.com/beclab/predixy Redis 集群代理服务,自动识别可用节点并添加命名空间隔离。
third-party/redis-cluster-operator https://github.com/beclab/redis-cluster-operator 一个基于 Kubernetes 的云原生工具,用于创建和管理 Redis 集群。
third-party/seafile-server https://github.com/beclab/seafile-server Seafile(同步驱动器)的后端服务,用于处理数据存储。
third-party/seahub https://github.com/beclab/seahub Seafile(同步驱动器)的前端和中间件服务,用于处理文件共享、数据同步等。
third-party/tailscale https://github.com/tailscale/tailscale Tailscale 已在所有平台的 LarePass 中集成。
其他库和组件
路径 仓库 说明
build/installer 用于生成安装程序构建的模板。
build/manifest 安装构建镜像列表模板。
libs/fs-lib https://github.com/beclab/fs-lib 基于 JuiceFS 实现的 iNotify 兼容接口的SDK库。
scripts 生成安装程序构建的辅助脚本。

社区贡献

我们欢迎任何形式的贡献!

社区支持

  • GitHub Discussion - 讨论 Olares 使用过程中的疑问。
  • GitHub Issues - 报告 Olares 的遇到的问题或提出功能改进建议。
  • Discord - 日常交流,分享经验,或讨论与 Olares 相关的任何主题。

特别感谢

Olares 项目整合了许多第三方开源项目,包括:KubernetesKubespherePadlocK3SJuiceFSMinIOEnvoyAutheliaInfisicalDifySeafileHeadScaletailscaleRedis OperatorNitroRssHubpredixynvshareLangChainQuasarTrustWalletResticZincSearchfilebrowserlegoVeleros3rverCitusdata