如何在浏览器中搭建开源Web操作系统Puter的本地与远程环境

embedded/2025/2/11 13:04:17/

文章目录

    • 前言
    • 1.关于Puter
    • 2.本地部署Puter
    • 3.Puter简单使用
    • 4. 安装内网穿透
    • 5.配置puter公网地址
    • 6. 配置固定公网地址

前言

嘿,小伙伴们!是不是每次开机都要像打地鼠一样不停地点击各种网盘和应用程序的登录按钮,感觉超级麻烦?更让人头疼的是,这些科技巨头们有没有在偷偷窥探我们的隐私数据呢?别担心,今天我要给大家安利一个超炫酷的新工具——Puter!它不仅能让你的数据安全归你所有,还能帮你轻松搭建强大的Web应用。

接下来,就让我们一起探索如何在Linux系统上用Docker部署这款神器,并通过cpolar内网穿透实现随时随地的便捷访问吧!无论你是在家里的沙发上、办公室的小隔间里,还是在外旅行的路上,只需打开浏览器就能搞定一切,是不是很酷?

截图

1.关于Puter

Puter 是一个先进的开源互联网操作系统,设计为功能丰富、速度极快且高度可扩展。Puter 可用作:

  • 一个以隐私为优先的个人云,将所有文件、应用程序和游戏保存在一个安全的地方,随时随地可访问。
  • 构建和发布网站、Web 应用程序和游戏的平台。
  • Dropbox、Google Drive、OneDrive 等的替代品,具有全新的界面和强大的功能。
  • 服务器和工作站的远程桌面环境。
  • 一个友好的开源项目和社区,学习 Web 开发、云计算、分布式系统等更多内容!

简单来说,Puter 就是你的私人数据中心+网盘+远程桌面+开发者乐园!你不仅可以把所有重要文件放在一个地方管理,还能轻松构建和发布自己的网站、Web应用甚至游戏。是不是听起来就超有科技感?而且最关键的是——这一切都在你自己的服务器上运行,安全又可靠!

2.本地部署Puter

本例使用Docker Compose部署,如果没有安装Docker,可以查看这篇教程进行安装:《Docker安装教程——Linux、Windows、MacOS》

打开终端执行下方命令 :

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

image-20241209162814183

启动:

sudo docker compose up

image-20241209162842610

和我一样使用虚拟机部署的小伙伴看到鲜红的ERRO别担心,是内存不太足了,不过对puter来说还是够用的。

接下来我们打开浏览器输入puter.localhost:4100即可在线访问puter了。

image-20241209163020101

3.Puter简单使用

右上角菜单,选择Save Session来创建新的账号。

image-20241209163143179

创建账号是为了保存会话和存储数据,这个账号是可以直接在 https://puter.com 上登录的

image-20241209163242748

Start 会看到自带的应用:

image-20241209163342209

对于开发人员来说,可以基于Puter.js 构建强大的 Web 应用程序,因为 Puter.js 可以让您的前端代码直接免费访问各种云端和人工智能服务。它将云存储、键值存储、GPT-3.5 TurboDALL·E、托管等功能带到您的前端代码中。

4. 安装内网穿透

不过我们目前只能在本地局域网内使用电脑等设备访问刚刚使用docker部署的使用puter。使用puter + Cpolar的组合可以完美解决这个问题,安装一个cpolar内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,接下来介绍一下如何安装cpolar内网穿透。

下面是安装cpolar步骤:

Cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

sudo curl https://get.cpolar.sh | sh

img

安装完成后,执行下方命令查看cpolar服务状态:(如图所示running即为正常启动)

sudo systemctl status cpolar

img

Cpolar安装和成功启动服务后,在浏览器上输入ubuntu主机IP加9200端口即:【http://localhost:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:

image-20240801133735424

5.配置puter公网地址

登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了:puter 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:4100
  • 域名类型:随机域名
  • 地区:选择China Top

image-20241209165642669

由于头域原因我们需要点击高级,添加host头域信息,点击创建。

image-20241209165749934

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,接下来就可以在其他电脑(异地)上,使用任意一个地址在浏览器中访问即可。

image-20241209164819104

如下图所示,成功实现使用公网地址异地远程访问本地部署的puter

image-20241209165837891

小结

为了方便演示,我们在上边的操作过程中使用cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。

如果有长期使用puter,或者异地访问与使用其他本地部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

6. 配置固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化。

点击左侧的预留,选择保留二级子域名,地区选择China TOP,然后设置一个二级子域名名称,填写备注信息,点击保留。

image-20241209170038897

保留成功后复制保留的二级子域名地址:puter

登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道puter,点击右侧的编辑

image-20241209170118098

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名
  • 地区: China TOP

点击更新

image-20241209170145848

现在一个永久不会变化的网址就设置好了。

image-20241209170229178

我们复制下来打开浏览器粘贴,现在我们使用固定的公网地址访问puter可以看到访问成功。

image-20241209170323131

怎么样,是不是觉得Puter真的很不错?今天的学习不仅让你对这款神器有了全面的认识,还掌握了如何在本地Linux系统上用Docker部署它的技巧。从此以后,数据管理不再是烦恼,而是变得轻松又安全。赶紧动手试试吧,你会发现生活因此变得更加美好!


http://www.ppmy.cn/embedded/161332.html

相关文章

uniapp中使用uCharts折线图X轴数据间隔显示

1、先看官网 https://www.ucharts.cn/ 2、设置代码 "xAxisDemo3":function(val, index, opts){if(index % 2 0){return val}else {return }}, 再在数据中引入设置好样式

03-DevOps-安装并初始化Gitlab

Gitlab可以理解为是自己搭建的GitHub,也就是自己的代码仓库。 开启macvlan 在192.168.1.10服务器上,构建Macvlan网络,这种网络模式可以为每个容器独立分配ip。 docker network create -d macvlan \--subnet192.168.1.0/24 \--ip-range192.16…

Java高频面试之SE-21

hello啊,各位观众姥爷们!!!本baby今天又来了!哈哈哈哈哈嗝🐶 Java中的反射是什么? 反射(Reflection)是 Java 提供的一种强大的特性,允许程序在运行时获取类…

比亚迪发布智能化战略,天神之眼开创全民智驾

2月10日,比亚迪在深圳隆重召开智能化战略发布会,正式向全球发布了其最新的智驾技术——“天神之眼”。这一技术的发布,标志着比亚迪在智能驾驶领域迈出了坚实的一步,稳居行业第一梯队,真正实现了端到端的智能驾驶体验&…

深入学习反射

一、什么是反射 反射是Java语言的一个特性,它允许程序在运行时动态地获取类的信息,并对类进行操作。通过反射,我们可以在运行时获取类的字段、方法、构造函数等信息,并可以动态地创建实例、调用方法和访问字段。 二、反射的应用场…

【数据】Cassandra(列存储)

官网(https://cassandra.apache.org/_/cassandra-basics.html)Apache Cassandra 入门 Cassandra 下载 Apache Cassandra 还可以作为 tarball 或包下载(https://cassandra.apache.org/_/download.html)。 ## Apache Cassandra 还可以作为 tarball 或包下载。 docker pull ca…

Redis的数据过期策略和数据淘汰策略

一、数据过期策略 Redis的key过期之后,会立即删除吗? 是否立即删除,这是根据Redis的数据过期策略来决定的 Redis对数据设值数据的过期时间,数据过期后,就需要将数据从内存中删除掉。可以按照不同的规则进行删除&…

游戏引擎学习第95天

回顾昨天的内容 我们一起完成游戏开发。我们正在进行自定义渲染的工作,这非常棒。我们基本上是在实现一个GPU的功能,自己来做这一切,这样我们可以看到它是如何运作的。 令人惊讶的是,整个过程并没有花费太多时间。当最初想到要实…