我们将暂停推荐软件列表,解释一下什么是自托管程序以及如何安装它们。这类应用程序允许我们在多个设备上使用它们,方法是在每台设备上安装特定的应用程序来与服务器应用程序通信,或者使用 Web 浏览器。
当然,我们说的服务器并不是说你必须购买昂贵的硬件。一台旧电脑或者像树莓派这样的单板计算机就能很好地满足这个需求。
一些需要安装在服务器上的 GitHub 程序
在开始列举之前,我们需要先定义一些概念:
自托管程序
自托管程序(有时也称为自托管应用程序)是指用户自行安装并运行在自有服务器上的应用程序或服务。这与委托第三方进行安装和维护截然不同。需要注意的是,这类程序的独特之处在于,它提供的服务类似于 YouTube 或 Google Drive,但用户需要自行负责维护基础设施和更新。
这类软件的一些优点包括:
- 用户可以选择程序的安装位置。
- 不与第三方共享数据,就能更好地控制隐私和安全。
- 软件可定制性更强,更能满足用户需求。
- 独立性:使用此类程序的用户不受软件公司意愿的左右。
当然,它也存在一些缺点。
- 安装和维护需要更多的时间和专业知识。
- 根据用途和安装类型的不同,成本可能会更高。
服务器
服务器是利用本地网络或互联网向其他计算机提供服务或数据的计算机。当客户端计算机发出请求时,服务器会响应,发送请求的信息或提供错误消息。值得注意的是,服务器可以是物理服务器,也可以是虚拟服务器。
物理服务器是专用的计算机,运行程序以响应来自其他计算机的请求。它们可以是专门为此目的而设计的计算机、用于此目的的传统计算机,或者单板计算机。单板计算机是一种完全构建在单个印刷电路板上的计算机。这与所有组件都分离的传统计算机不同。
另一方面,虚拟服务器是对物理硬件的软件模拟。当然,它们运行在真实的硬件上,每个虚拟服务器都会获得一部分硬件资源。通常有两种类型:虚拟专用服务器 (VPS),其分配的资源是有限的;以及云服务器,其资源按需分配,实际上,即使用户没有察觉,云服务器也可以由多台物理机提供资源。
需要指出的是,普通的网络托管服务不符合这些标准,因为它需要一定程度的配置,而这些服务并不具备这些配置。
集装箱
容器是一种专用于运行单个应用程序的虚拟机,无需连接到宿主机操作系统。该虚拟机包含应用程序的代码、库、配置和必要的依赖项。
要创建、运行和管理容器,你需要一个应用程序。GitHub 开发者最常用的是 Docker。
Node.js
Node.js 是自托管程序使用的技术之一。它用于在服务器上运行 JavaScript 程序,允许多个连接同时运行而不会造成过载。它非常适合需要实时运行的应用程序。
本文的目的并非详尽介绍安装所需的一切步骤。安装确实需要一定的知识储备,但互联网上有大量教程讲解如何操作,而且 ChatGPT 和类似的程序通常也能提供相当准确的信息。下一篇文章中,我们将介绍一些值得尝试的程序。