雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

Puter 基于jQuery编写的开源WebOS浏览器桌面环境

2024-07-23 64

Puter 简介

Puter 是一款开源的、自托管的互联网操作系统,旨在功能丰富、运行速度快且高度可扩展。它基于 jQuery 构建,并提供类似于传统桌面操作系统的用户界面。Puter 可以用于构建远程桌面环境、访问云存储服务、管理远程服务器、托管 Web 应用程序等等。

借助于 Puter,开发者无需编写一行后端代码即可构建强大的 Web 应用程序。 Puter 提供直接从前端代码对各种云和人工智能服务的完整、免费访问,同时将云存储、键值存储、GPT-3.5 Turbo、DALL·E、托管等引入前端代码。

Puter 官网地址:https://puter.com

Puter GitHub地址:https://github.com/HeyPuter/puter

打开Puter的官网就可以直接使用WebOS桌面。可以看到它有点像Windows11,点击右上角可以看到已经自动注册了一个匿名账户。我们也可以点击Add Existing Account注册或者登录一个新的账户。这样我们在任何地方任何设备登录账号就能访问到之前保存的数据了。

Puter 使用场景

Puter 的使用可以覆盖以下核心场景:

Dropbox、Google Drive、OneDrive 等的替代品,具有新颖的界面和强大的功能 服务器和工作站的远程桌面环境 用于构建和托管网站、网络应用程序和游戏的平台 一个友好的开源项目和社区,用于了解 Web 开发、云计算、分布式系统等

开发者如何在在 Puter 上赚钱?

目前Puter鼓励开发展在Puter上发布应用程序,但有用户打开你开发的应用程序时,你都能赚钱。

请按照以下步骤开始在 Puter 上赚钱:

在 Puter 上发布任意数量的应用程序。

我们会自动持续审查每个应用程序。合格的应用程序会自动添加到我们的激励计划中以赚取收入。

每次用户打开您批准的应用程序时,您都会赚钱。

Puter 为什么使用 jQuery

出于性能方面的考虑,Puter 是使用普通 JavaScript 和 jQuery 构建的,而不是采用 React, Angular, Vue 等主流前端框架。 此外,Puter 希望避免复杂的抽象并尽可能保持对整个堆栈的控制。当然,部分灵感也来自一些非框架构建的项目,比如:VSCode、Photopea 和 OnlyOffice。

Puter 选择直接与 DOM 交互,而 jQuery 提供了一个优雅而强大的 API 来操作 DOM、处理事件等等。同时还非常快速、成熟且经过实战考验。

如何安装使用Puter?

本地开发

git clone https://github.com/HeyPuter/puter
cd puter
npm install
npm start

这将在 http://localhost:4000(或下一个可用端口)启动 Puter。

使用 Docker

注意:没有必要在此存储库的克隆中运行它。 对于贡献者,建议使用本地开发说明。

mkdir puter && cd puter && mkdir -p puter/config puter/data && sudo chown -R 1000:1000 puter && docker run --rm -p 4100:4100 -v `pwd`/puter/config:/etc/puter -v `pwd`/puter/data:/var/puter  ghcr.io/heyputer/puter

使用 Docker 组合

注意:没有必要在此存储库的克隆中运行它。 对于贡献者,建议使用本地开发说明。

mkdir -p puter/config puter/data
sudo chown -R 1000:1000 puter
wget https://raw.githubusercontent.com/HeyPuter/puter/main/docker-compose.yml
docker compose up

如何配置Puter

运行服务器将在以下位置之一生成配置文件:

使用 Docker 时的 config/config.json 本地开发中的 volatile/config/config.json 服务器上(或 Docker 容器内)的 /etc/puter/config.json

域名

要在你的设备上访问 Puter,只需转到服务器控制台中打印的地址(通常为 puter.localhost:4100)即可。

要从其他设备访问Puter,必须配置域名以及api子域。 例如,example.local可能是指向运行puter的服务器IP地址的域名,而api.example.com也必须指向该地址。 该域也必须在配置文件(通常是 volatile/config/config.json)中指定。

有关详细信息,请参阅域配置。https://github.com/HeyPuter/puter/blob/main/doc/self-hosters/domains.md

配置端口

你可以通过将 http_port 设置为所需的值来指定自定义端口

如果使用反向代理(例如 nginx 或 cloudflare),还应该将 pub_port 设置为公共(外部)端口(通常为 443)

如果反向代理启用了 HTTPS,请确保 config.json 中的协议已相应设置

默认用户

默认情况下,Puter 将创建一个名为default_user 的用户。 该用户将有一个随机生成的密码,该密码将打印在开发控制台中。 在更改该用户的密码之前,开发控制台中将持续显示警告。 请登录该用户并更改密码作为第一步。

更新于:4个月前
赞一波!

文章评论

评论问答