Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >3D打印机远程控制方案:OctoPrint与内网穿透技术应用

3D打印机远程控制方案:OctoPrint与内网穿透技术应用

作者头像
YY的秘密代码小屋
发布于 2025-06-13 07:40:10
发布于 2025-06-13 07:40:10
12700
代码可运行
举报
文章被收录于专栏:C++系列C++系列
运行总次数:0
代码可运行

前言

随着3D打印技术的普及,从创意模型到功能性部件的制作场景日益丰富。当用户需要实时掌握打印状态并实施远程操控时,传统操作方式已难以满足实际需求。

OctoPrint作为开源3D打印管理平台,通过网页端为用户提供可视化控制界面。该系统支持实时监控打印过程、上传G代码文件以及执行启停等指令操作,极大提升了3D打印的智能化水平。

然而基础架构存在局限性,默认部署模式仅限于本地网络环境。这意味着当用户处于异地场景时,将无法实现远程访问控制。针对这一技术瓶颈,业界推荐采用反向代理方案(如cpolar工具),通过建立内网穿透通道,将本地3D打印设备的服务端口映射至公网环境。已完成系统部署的用户可直接进行网络穿透配置,跳过基础安装步骤。以下将通过实际操作案例,演示具体实施流程。

1. Linux部署OctoPrint

首先按照 git工具,通过git克隆项目到本地

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo apt install git -y

安装后,执行下面命令克隆项目

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://gitcode.com/gh_mirrors/oc/octoprint_deploy

克隆后可以看到一个octoprint_deploy文件夹

然后运行下面命令开始安装

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo octoprint_deploy/octoprint_deploy.sh

运行后出现下面提示,输入 数字 1 回车,然后出现选择系统类型,这里根据自己的系统类型选择即可,比如本例是ubuntu系统,那输入数字1 然后回车.然后输入 y 开始安装.接下来等待安装即可

运行完成后 会出现设置端口访问.输入y 就是按 80端口访问,不输入 就按5000端口访问.这里选择 n 不按 80端口访问,然后继续一步步按提示选择输入即可

期间会提示设置登录的用户名和密码,这里设置好用户名和密码即可,接下来就一切按自己需求选择即可.这里不演示了

一切设置好后,我们访问ubuntu 5000端口,即可成功看到OctoPrint ,到这里基本就是安装部署完成了

输入我们设置的用户名密码即可成功登录,本地部署访问测试就完成了 ,下面我们安装cpolar 工具实现远程访问

2. Ubuntu安装Cpolar

上面在本地ubuntu中成功部署了OctoPrint 工具,并本地访问成功,下面我们在Linux安装Cpolar内网穿透工具,通过Cpolar 穿透本地端口映射http的公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装Cpolar步骤

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

  • 使用一键脚本安装命令
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 安装完成后,可以通过如下方式来操作Cpolar服务,首先执行加入系统服务设置开机启动,然后再启动服务
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 加入系统服务设置开机启动
sudo systemctl enable cpolar

# 启动cpolar服务
sudo systemctl start cpolar

# 重启cpolar服务
sudo systemctl restart cpolar

# 查看cpolar服务状态
sudo systemctl status cpolar

# 停止cpolar服务
sudo systemctl stop cpolar

Cpolar安装和成功启动服务后,内部或外部浏览器上通过局域网IP加9200端口即:【http://192.168.xxx.xxx:9200】访问Cpolar管理界面(如果访问不了,注意防火墙开放9200端口),然后使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可

3. 配置OctoPrint公网地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个OctoPrint 的公网http地址隧道!

  • 隧道名称:OctoPrint
  • 协议:选择http
  • 本地地址:5000 (OctoPrint 部署后默认访问的端口)
  • 域名类型:免费选择随机域名
  • 地区:选择China

点击创建 (点击一次即可,不要重复点击)

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https,两种都可以访问,下面随便选择其中一种进行远程访问

4. 远程访问OctoPrint

使用上面Cpolar生成的 https公网地址,在任意设备的浏览器进行访问,即可成功访问看到我们OctoPrint登录界面

输入账号密码即可成功登录,远程访问初步就设置成功了,极大的缩小了云服务器那些繁琐的配置,简单几步即可实现无需云服务器,无需公网IP实现远程访问.

小结

为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:https://1fd5a347.r3.cpolar.cn/)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定二级子域名,原因是我希望将网址发送给同事或客户时,它是一个固定、易记的公网地址(例如:Octo-Print-test.cpolar.cn),这样更显正式,便于流交协作。

5. 固定Cpolar公网地址

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

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

点击登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

保留成功后复制保留成功的二级子域名的名称

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

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

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

点击更新(注意,点击一次更新即可,不需要重复提交)

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址二级名称变成了我们自己设置的二级子域名名称

6. 固定地址访问

最后,我们使用固定的公网https地址访问,可以看到同样访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地OctoPrint 去管理3D打印,无需公网IP,无需云服务器!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-06-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
远程安全访问JumpServer:使用cpolar内网穿透搭建固定公网地址
JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpServer 帮助企业以更安全的方式管控和登录所有类型的资产,实现事前授权、事中监察、事后审计,满足等保合规要求。
屿小夏
2024/01/22
5300
远程安全访问JumpServer:使用cpolar内网穿透搭建固定公网地址
使用Docker本地部署思维导图工具结合内网穿透远程使用详细流程
本文主要介绍在Linux系统以docker方式一键部署思维导图工具SimpleMindMap,并结合cpolar内网穿透工具实现远程也可以访问,远程访问好处在于可以在任意浏览器访问思维导图工具进行设计,提高工作效率!
FGGIT
2024/10/15
2260
使用Docker本地部署思维导图工具结合内网穿透远程使用详细流程
如何公网远程访问Linux AMH服务器管理面板【内网穿透】
AMH 是一款基于 Linux 系统的服务器管理面板,它提供了一系列的功能,包括网站管理、FTP 管理、数据库管理、DNS 管理、SSL 证书管理等。使用 AMH 云主机面板可以方便地管理服务器,提高工作效率。
鸽芷咕
2024/01/10
4470
如何公网远程访问Linux AMH服务器管理面板【内网穿透】
使用Docker部署MinIO并结合内网穿透实现远程访问本地数据
MinIO是一个开源的对象存储服务器,可以在各种环境中运行,例如本地、Docker容器、Kubernetes集群等。它兼容Amazon S3 API,因此可以与现有的S3工具和库无缝集成。MinIO的设计目标是高性能、高可用性和可扩展性。它可以在分布式模式下运行,以满足不同规模的存储需求。
大海里的番茄
2024/02/27
1.1K0
使用Docker部署MinIO并结合内网穿透实现远程访问本地数据
Linux本地部署SQL语句审核平台Yearning结合内网穿透实现远程使用
Yearning 简单, 高效的MYSQL 审计平台 一款MYSQL SQL语句/查询审计工具,为DBA与开发人员使用.本地部署,注重隐私,简单高效的MYSQL审计平台。
学编程的小程
2024/05/26
1900
Linux本地部署SQL语句审核平台Yearning结合内网穿透实现远程使用
Linux系统本地部署Rsshub结合内网穿透工具远程访问RSS订阅源
下面介绍本地使用docker快速简单部署Rsshub工具,并结合cpolar内网穿透工具,使得远程也可以访问RSS订阅源!
鸽芷咕
2024/05/26
3060
Linux系统本地部署Rsshub结合内网穿透工具远程访问RSS订阅源
CentOS7安装内网穿透实现远程推送镜像到本地Docker Registry
本文主要介绍如何部署Docker Registry 本地镜像仓库,简单几步结合cpolar内网穿透工具实现远程pull or push (拉取和推送)镜像,不受本地局域网限制!
学编程的小程
2024/05/26
2390
CentOS7安装内网穿透实现远程推送镜像到本地Docker Registry
JumpServer开源堡垒机本地安装结合内网穿透远程访问详细流程
本文主要介绍如何本地安装JumpServer堡垒机并结合cpolar内网穿透实现任意浏览器远程访问JumpServer Web管理界面.
YY的秘密代码小屋
2024/08/16
3730
JumpServer开源堡垒机本地安装结合内网穿透远程访问详细流程
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
今天和大家分享的是如何在本地快速简单部署Rsshub工具,并结合cpolar内网穿透工具使用公网地址远程访问RSS订阅源.
FGGIT
2024/10/15
4100
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
Linux系统一键部署Nexus Maven私有仓库结合内网穿透实现远程管理
本文主要介绍在Linux中使用Docker来一键部署Nexus Maven私有仓库工具并结合Cpolar内网穿透实现远程访问Nexus进行管理.
E绵绵
2024/08/06
4010
Linux系统一键部署Nexus Maven私有仓库结合内网穿透实现远程管理
VanBlog博客搭建流程结合内网穿透异地远程管理本地个人站点
今天和大家分享如何在Linux Ubuntu系统搭建一款轻量级个人博客VanBlog,并结合cpolar内网穿透软件生成公网地址,轻松实现随时随地远程访问本地部署的站点。无需公网IP,也不用设置反向代理那么麻烦。
YY的秘密代码小屋
2024/09/11
1700
VanBlog博客搭建流程结合内网穿透异地远程管理本地个人站点
本地部署动态服务发现管理平台Nacos结合内网穿透实现远程访问管理
本文主要介绍如何本地部署动态服务发现、配置管理和服务管理平台 Nacos ,并结合cpolar内网穿透实现远程访问Nacos控制台界面,帮助管理所有的服务和应用的配置。
E绵绵
2024/08/06
3270
本地部署动态服务发现管理平台Nacos结合内网穿透实现远程访问管理
本地服务器部署安卓模拟器结合内网穿透实现Android应用远程开发测试
本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。
YY的秘密代码小屋
2024/08/19
3720
本地服务器部署安卓模拟器结合内网穿透实现Android应用远程开发测试
本地部署开源白板工具Excalidraw并结合内网穿透远程绘制流程图
Excalidraw是一款手绘风格流程图、示意图、架构图在线绘制工具,界面简洁,交互细致,上手简单,操作习惯和大部分制图软件相似。使用Docker部署Excalidraw容器非常简单,只需一行命令即可快速实现本地部署。
YIN_尹
2024/05/07
1.2K0
本地部署开源白板工具Excalidraw并结合内网穿透远程绘制流程图
Linux系统安装并运行Portainer结合内网穿透实现远程访问管理界面
本文主要介绍如何在本地部署Portainer可视化容器管理工具并结合cpolar内网穿透工具实现异地使用任意浏览器远程访问管理界面。
@小森
2024/06/28
2730
Linux系统安装并运行Portainer结合内网穿透实现远程访问管理界面
Docker部署SimpleMindMap结合内网穿透实现公网访问本地思维导图
SimpleMindMap 是一个可私有部署的web思维导图工具。它提供了丰富的功能和特性,包含插件化架构、多种结构类型(逻辑结构图、思维导图、组织结构图等)、节点内容支持文本、图片、图标、超链接等,支持拖拽、导入导出功能、快捷键等。
YIN_尹
2024/03/10
3000
Docker部署SimpleMindMap结合内网穿透实现公网访问本地思维导图
如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)
Nextcloud,它是ownCloud的一个分支,是一个文件共享服务器,允许您将个人内容(如文档和图片)存储在一个集中的位置,就像Dropbox一样。与Nextcloud的不同之处在于,它的所有功能都是开源的。它还将敏感数据的控制和安全返回给您,从而消除了对第三方云托管服务的使用。
是Nero哦
2024/01/18
1.2K0
如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)
Spring Boot项目本地部署结合内网穿透远程调试接口全流程
本文主要介绍如何本地搭建springboot服务项目并结合内网穿透工具,轻松实现远程访问本地服务端接口进行调试,无需公网IP,也不用设置路由器那么麻烦。
E绵绵
2024/10/23
4380
Spring Boot项目本地部署结合内网穿透远程调试接口全流程
如何在Portainer部署一个web站点到Nginx容器并结合内网穿透远程访问
Portainer是一个开源的Docker轻量级可视化工具,它提供了一个直观的Web界面,让你轻松管理和监控Docker容器、镜像和网络等。之前在文章《Linux Docker 图形化工具 Portainer远程访问》中我们讲了如何使用Docker部署一个Portainer,并结合cpolar内网穿透实现了公网访问成功。本篇文章教大家如何在Portainer创建Nginx容器,并且部署一个静态站点实现公网访问。
FGGIT
2024/10/15
2280
如何在Portainer部署一个web站点到Nginx容器并结合内网穿透远程访问
如何使用Python Flask发布web页面至公网并实现远程访问【内网穿透】
本篇文章主要讲解如何在本地安装Flask,以及如何将其web界面发布到公网进行远程访问。
学编程的小程
2024/05/26
1.1K0
如何使用Python Flask发布web页面至公网并实现远程访问【内网穿透】
推荐阅读
远程安全访问JumpServer:使用cpolar内网穿透搭建固定公网地址
5300
使用Docker本地部署思维导图工具结合内网穿透远程使用详细流程
2260
如何公网远程访问Linux AMH服务器管理面板【内网穿透】
4470
使用Docker部署MinIO并结合内网穿透实现远程访问本地数据
1.1K0
Linux本地部署SQL语句审核平台Yearning结合内网穿透实现远程使用
1900
Linux系统本地部署Rsshub结合内网穿透工具远程访问RSS订阅源
3060
CentOS7安装内网穿透实现远程推送镜像到本地Docker Registry
2390
JumpServer开源堡垒机本地安装结合内网穿透远程访问详细流程
3730
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
4100
Linux系统一键部署Nexus Maven私有仓库结合内网穿透实现远程管理
4010
VanBlog博客搭建流程结合内网穿透异地远程管理本地个人站点
1700
本地部署动态服务发现管理平台Nacos结合内网穿透实现远程访问管理
3270
本地服务器部署安卓模拟器结合内网穿透实现Android应用远程开发测试
3720
本地部署开源白板工具Excalidraw并结合内网穿透远程绘制流程图
1.2K0
Linux系统安装并运行Portainer结合内网穿透实现远程访问管理界面
2730
Docker部署SimpleMindMap结合内网穿透实现公网访问本地思维导图
3000
如何本地部署Nextcloud结合cpolar搭建专属私有云盘远程访问(内网穿透)
1.2K0
Spring Boot项目本地部署结合内网穿透远程调试接口全流程
4380
如何在Portainer部署一个web站点到Nginx容器并结合内网穿透远程访问
2280
如何使用Python Flask发布web页面至公网并实现远程访问【内网穿透】
1.1K0
相关推荐
远程安全访问JumpServer:使用cpolar内网穿透搭建固定公网地址
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验