本文提供了一个逐步指南,介绍如何自建Capgo,以及自建的利弊和挑战。
介绍
自建主机是一种通过设置服务器和网络来运行自己的网站或应用程序的形式。相比于使用平台作为服务或公共云提供商,自建主机的用户将负责维护和保证网络的可用性,除了构建网站或应用程序外。
自建Capgo的最简单方法是使用我们的 在云端的官方托管服务但如果您愿意自行管理,您也可以在您的服务器上自行托管 Capgo。
什么是自主托管
在数字领域,自主托管是指在自己的服务器或托管基础设施上运行自己的服务器、网站、应用程序和数据存储,以管理和控制在线存在和服务。
为什么选择自主托管
选择自主托管的原因有很多。一些最常见的好处包括:
-
隐私和控制 自主托管可以让您完全控制自己的数据和隐私。您不必担心第三方提供商监控您的活动或出售您的数据。
-
成本节约 自主托管在长期来看可以更具成本效益,尤其是当您使用大量资源或运行多个服务时。
-
定制化 自主托管可以让您根据自己的需求来定制应用程序和服务。
-
学习和实验: 自主托管可以成为学习Linux、系统管理和其他技术主题的好方法。它也可以成为尝试新软件和服务的有趣方式。
-
独立性: 自主托管可以减少对外部提供商的依赖。您不受他们服务条款、价格变化或潜在服务中断的影响。这方面的独立性对于依赖在线存在的企业和个人来说至关重要。
什么是Capgo Cloud 和 Capgo Self-Hosted 的区别?
Capgo 只有一种版本。我的Cloud和Self-Hosted产品完全相同。没有优质和专有的商业版本具有更好的或更完整的功能集。
您可以获得相同的仪表板、相同的可操作指标和相同的承诺, 尊严地保护您的访问者隐私 与两者相同。
我从2018年12月开始开发Capgo,并于2019年5月推出SaaS订阅业务。该项目非常活跃,正在快速发展。它也很强大,经过了多次测试。
以下是Capgo Cloud 和 Capgo Self-Hosted 的区别:
| Cloud | 自建主机 | |
|---|---|---|
| 托管 | 轻松方便。只需2分钟即可开始发送第一个更新,高可用性、备份、安全性和维护均由我负责。您不需要担心任何事情,我会为您处理所有事情。 | 您自己来。您需要获取服务器,并需要管理您的基础设施。您负责安装、维护、升级、服务器容量、运行时间、备份、安全性、稳定性、一致性、加载时间等。 |
| 存储 | 所有访客数据仅在欧盟拥有的云基础设施上处理。您的网站数据存储在德国的安全、加密的服务器上。这确保了您的网站数据受到欧洲联盟严格的数据隐私法规的保护,并确保了GDPR的遵守。您的网站数据永远不会离开欧盟。 | 您有完全的控制权,可以将您的Capgo在您希望的任何服务器上托管。您可以将其托管在您的地下室中,也可以将其托管在您选择的任何云提供商处,甚至是非GDPR合规的。 |
| 原始数据 | 您可以在我的现代、简洁、快速的仪表板上看到所有网站统计和指标。您只能在仪表板上看到聚合的统计数据。 | 您是分析师,想要访问原始数据吗?托管Capgo自己给您提供了这个选项。您可以直接从数据库中获取数据,并将其导入您选择的数据分析工具。 |
| 费用 | 提供更新服务需要付费,因此我会收取订阅费 | 您只需要为您的服务器支付费用以及与运行服务器相关的任何费用。您永远不需要为此支付任何费用,只需向您的云提供商支付费用。 |
| 高级支持 | 由真正的人类开发者和维护者提供的真正支持,他们构建和维护Capgo。 | 高级支持不包括。自主托管版本仅由社区支持。 |
| 发布 | 持续开发和改进,多次每周发布新功能和更新。 | 这是一个长期发布版本,发布两次每年,所以最新的功能不会立即可用,因为它们首先在云中经过了测试。 |
如何自主托管Capgo
我们主要使用 Supabase 在Capgo 中,我们要自主托管,只需遵循 Supabase 自主托管文档.
使用自主托管capgo 的CLI
要使用CLI 与自主托管capgo,请编辑您的应用程序目录中的capacitor.config.ts 并设置如下:
const config: CapacitorConfig = {
appId: 'com.demo.app',
appName: 'demoApp',
webDir: 'dist',
bundledWebRuntime: false,
plugins: {
CapacitorUpdater : {
localHost: "http://localhost:5173",
localWebHost: "http://localhost:5173",
localSupa: "http://localhost:54321",
localSupaAnon: "see_notes",
},
},
};
注意:要获取 localSupaAnon,请遵循这个 教程 并将 anon 密钥复制到 localSupaAnon
使用自托管的 capgo 的 capacitor 更新器
要求
克隆 capgo
要使用自托管的 capgo 的 capacitor 更新器,请编辑您的应用程序目录中的文件并将其设置为以下内容: capacitor.config.ts 这将使您能够在开发中使用本地 __CAPGO_KEEP_0__。然而,出于安全考虑,
const config: CapacitorConfig = {
appId: 'com.demo.app',
appName: 'demoApp',
webDir: 'dist',
bundledWebRuntime: false,
plugins: {
CapacitorUpdater : {
statsUrl: "https://localhost:54321/functions/v1/stats",
channelUrl: "https://localhost:54321/functions/v1/channel_self",
updateUrl: "https://localhost:54321/functions/v1/updates"
},
},
};
This will enable you to use local capgo in development. However, by default, this is not enough.
结论
克隆 Both os 并配置 HTTPS 后,您就可以使用自托管的 __CAPGO_KEEP_1__ 的 __CAPGO_KEEP_0__ 更新器了
In Capgo 自行托管可以成为资源充足并具备相应专业知识的组织的合理选择。它提供了多项优势,包括对更新过程的控制、安全性和合规性。然而,在决定是否自行托管之前,需要仔细权衡其利弊和挑战。
如果您正在考虑自行托管 Capgo,我建议您先阅读 Capgo 自行托管文档。这样您就能对自行托管的要求和风险有一个基本的了解。
继续自行托管 Capgo
如果您正在使用 自行托管 Capgo 来规划CI/CD自动化,建议将其与 Capgo CI/CD 集成到Capgo CI/CD中的产品流程中 Capgo 原生构建 集成到Capgo 原生构建中的产品流程中 Capgo 集成 为产品工作流程在 Capgo 集成中 CI/CD 集成 为 CI/CD 集成的实现细节 GitHub 动作集成 为 GitHub 动作集成的实现细节