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

文章目录

    • 前言
    • 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.mzph.cn/web/69519.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

产品详情页中 品牌官网详情 对应后端的字段是 detail

文章目录 1、在这个Vue代码中,品牌官网详情 对应后端的字段是 detail2、品牌官网详情 功能相关的代码片段3、export const productSave (data: any) >4、ProductController5、ProductDto 类6、ProductApiService 1、在这个Vue代码中,品牌官网详情 对…

51单片机(国信长天)矩阵键盘的基本操作

在CT107D单片机综合训练平台上,首先将J5处的跳帽接到1~2引脚,使按键S4~S19按键组成4X4的矩阵键盘。在扫描按键的过程中,发现有按键触发信号后(不做去抖动),待按键松开后,在数码管的第一位显示相应的数字:从左至右&…

Qt - 地图相关 —— 2、Qt调用百度在线地图功能示例全集,包含线路规划、地铁线路查询等(附源码)

效果:由于录制软件导致exe显示不正常,实际运行没有任何问题。 作者其他相关文章链接:           Qt - 地图相关 —— 1、加载百度在线地图(附源码)

VSCode + Continue 实现AI编程助理

安装VS Code 直接官网下载安装,反正是免费的。 安装VS插件Continue 直接在插件市场中搜索, Continue,第一个就是了。 配置Chat Model 点击Add Chat model后进行选择: 选择Ollama后,需要点击下面的config file : 由于…

机器学习之数学基础:线性代数、微积分、概率论 | PyTorch 深度学习实战

前一篇文章,使用线性回归模型逼近目标模型 | PyTorch 深度学习实战 本系列文章 GitHub Repo: https://github.com/hailiang-wang/pytorch-get-started 本篇文章内容来自于 强化学习必修课:引领人工智能新时代【梗直哥瞿炜】 线性代数、微积分、概率论 …

BS架构(笔记整理)

楔子.基本概念 1.在网络架构中: 服务器通常是集中式计算资源,负责处理和存储数据;客户机是请求这些服务的终端设备,可能是个人电脑或移动设备;浏览器则是客户机上用来与服务器交互的工具,负责展示网页内容…

用Llama Factory单机多卡微调Qwen2.5时报torch.OutOfMemoryError: CUDA out of memory的解决办法

接着上一篇博客:在Ubuntu上用Llama Factory命令行微调Qwen2.5的简单过程_llamafactory 微调qwen 2.5-CSDN博客 如果需要微调比较大的模型,例如Qwen2.5-32B,那么在两个3090上可能不够用,这里我用A60004的服务器。但如果仿照上篇博…

云消息队列 ApsaraMQ Serverless 演进:高弹性低成本、更稳定更安全、智能化免运维

如今,消息队列已成为分布式架构中不可或缺的关键服务,为电商、物联网、游戏和教育等行业,提供了异步解耦、集成、高性能和高可靠的核心价值。 过去一年,我们发布了云消息队列 ApsaraMQ 全系列产品 Serverless 化,面向…

python学opencv|读取图像(六十)先后使用cv2.erode()函数和cv2.dilate()函数实现图像处理

【1】引言 前序学习进程中,先后了解了使用cv2.erode()函数和cv2.dilate()函数实现图像腐蚀和膨胀处理的效果,相关文章链接为: python学opencv|读取图像(五十八)使用cv2.erode()函数实现图像腐蚀处理-CSDN博客 pytho…

LeetCodehot 力扣热题100 验证二叉搜索树

class Solution {vector<int> nums; // 用来存储二叉树节点值的数组 public:bool isValidBST(TreeNode* root) {inorder(root); // 中序遍历二叉树&#xff0c;填充 nums 数组// 遍历 nums 数组&#xff0c;检查是否为严格递增序列for(int i0; i<nums.size()-1; i){…

apache-poi导出excel数据

excel导出 自动设置宽度&#xff0c;设置标题框&#xff0c;设置数据边框。 excel导出 添加依赖 <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>5.2.2</version></dependency>…

STM32EXTI外部中断

EXTI外部中断 中断&#xff1a;在主程序运行过程中&#xff0c;出现了特定的中断触发条件&#xff08;中断源&#xff09;&#xff0c;使得CPU暂停当前正在运行的程序&#xff0c;转而去处理中断程序&#xff0c;处理完成后又返回原来被暂停的位置继续运行&#xff08;有点像函…

kafka生产端之架构及工作原理

文章目录 整体架构元数据更新 整体架构 消息在真正发往Kafka之前&#xff0c;有可能需要经历拦截器&#xff08;Interceptor&#xff09;、序列化器&#xff08;Serializer&#xff09;和分区器&#xff08;Partitioner&#xff09;等一系列的作用&#xff0c;那么在此之后又会…

STM32 Unix时间戳

Unix时间戳 Unix 时间戳&#xff08;Unix Timestamp&#xff09;定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数&#xff0c;不考虑闰秒 时间戳存储在一个秒计数器中&#xff0c;秒计数器为32位/64位的整型变量 世界上所有时区的秒计数器相同&#xff0c;不同时区通过…

SSM仓库物品管理系统 附带详细运行指导视频

文章目录 一、项目演示二、项目介绍三、运行截图四、主要代码1.用户登录代码&#xff1a;2.保存物品信息代码&#xff1a;3.删除仓库信息代码&#xff1a; 一、项目演示 项目演示地址&#xff1a; 视频地址 二、项目介绍 项目描述&#xff1a;这是一个基于SSM框架开发的仓库…

[渗透测试]热门搜索引擎推荐— — shodan篇

[渗透测试]热门搜索引擎推荐— — shodan篇 免责声明&#xff1a;本文仅用于分享渗透测试工具&#xff0c;大家使用时&#xff0c;一定需要遵守相关法律法规。 除了shodan&#xff0c;还有很多其他热门的&#xff0c;比如&#xff1a;fofa、奇安信的鹰图、钟馗之眼等&#xff0…

工厂方法模式详解(Java)

一、工厂方法模式基础 1.1 定义与角色 工厂方法模式(Factory Method Pattern)是一种创建型设计模式,它提供了一种创建对象的接口,但允许子类决定实例化哪一个类。这种模式的核心在于定义一个创建产品对象的工厂接口,将实际创建产品的过程延迟到子类中实现。这样做的主要…

绕组电感 - Ansys Maxwell 磁通链与电流

在本博客中&#xff0c;我将演示如何使用 Ansys Maxwell 中磁瞬态求解器的磁通链和电流结果来计算绕组电感。Ansys Maxwell 磁瞬态求解器在场计算中考虑了涡流效应&#xff0c;我将展示一种使用磁通链和电流结果来计算绕组电感的简单方法。 实际上&#xff0c;电感是非线性的…

Spring Boot牵手Redisson:分布式锁实战秘籍

一、引言 在当今的分布式系统架构中,随着业务规模的不断扩大和系统复杂度的日益增加,如何确保多个服务节点之间的数据一致性和操作的原子性成为了一个至关重要的问题。在单机环境下,我们可以轻松地使用线程锁或进程锁来控制对共享资源的访问,但在分布式系统中,由于各个服务…

Fiddler Classic(HTTP流量代理+半汉化)

目录 一、关于Fiddler (一) Fiddler Classic (二) Fiddler Everywhere (三) Fiddler Everywhere Reporter (四) FiddlerCore (五) 总结 二、 软件安全性 1. 软件安装包 2. 软件汉化dll 三、安装与半汉化 1. 正常打开安装包点击下一步安装即可&#xff0c;安装路径自…