首页 > 系统相关 >群晖NAS使用Docker本地部署网页版Ubuntu系统并实现无公网IP远程访问

群晖NAS使用Docker本地部署网页版Ubuntu系统并实现无公网IP远程访问

时间:2024-09-18 12:55:46浏览次数:10  
标签:公网 IP cpolar 地址 域名 访问 点击 Ubuntu 群晖

文章目录

前言

本文旨在详细介绍如何在群晖NAS部署docker-webtop,并结合cpolar内网穿透实现远程访问网页版Linux系统的步骤和方法。

docker-webtop是一个基于Docker的Web桌面应用,它允许用户通过浏览器远程访问和操作一个完整的Linux图形化环境。这种解决方案非常适合那些需要在不同设备之间无缝切换工作环境的用户。然而,由于网络环境的限制,用户可能无法直接远程访问部署在私有云环境中的docker-webtop。

为了解决这个问题,我们可以利用cpolar这一强大的内网穿透工具。cpolar通过创建一个安全的隧道,将本地网络中的服务暴露到公网上,从而允许用户从任何位置远程访问这些服务。通过结合群晖、Docker、docker-webtop和cpolar,我们可以实现一个完整的远程访问解决方案:在群晖设备上使用Docker部署docker-webtop,并通过cpolar将docker-webtop的Web服务暴露到公网上,从而实现远程访问。

1. 下载Docker-Webtop镜像

本例群晖版本由于无法直接在群晖控制面板docker界面搜索下载docker镜像,所以采用命令行方式进行镜像下载,

首先开启群晖ssh连接,然后使用工具通过ssh连接上群晖,然后执行下面命令拉取镜像

sudo docker pull lscr.io/linuxserver/webtop:ubuntu-kde

上面命令中,ubuntu-kde 表示运行一个ubuntu系统的Linux,如果需要运行其他的系统,可以看一下网上文档:https://gitcode.com/linuxserver/docker-webtop/overview, 拉取的镜像比较大,执行后耐心等待拉取完成即可.

image-20240515173116334

然后返回群晖管理面板,可以看到已经下载好了镜像,下面运行该镜像

image-20240515174130546

2. 运行Docker-Webtop镜像

选中镜像,点击运行,进入设置界面

image-20240516110543627

容器名称可以自己设置,如果需要设置自启动,勾选"启用自动重新启动即可",首次安装,建议不要设置自启动,设置完成然后点击下一步

image-20240516111011981

然后设置对外访问端口,3000表示http访问,3001表示https访问端口,这里设置对应容器内的端口即可,设置完成点击下一步

image-20240516111130845

然后再点击完成,点击后容器自动运行了,下面进行局域网内访问

image-20240516111241524

3. 本地访问网页版Linux系统

上面我们设置运行Docker-Webtop容器后,进入容器页面查看状态,Up状态表示正常

image-20240516111542594

然后通过群晖局域网IP加3000端口在浏览器上进行访问,即可成功访问到了我们Linux界面,本地访问就成功了,下面我们配置远程访问,让我们在异地网络也可以访问这个Linux,首先安装cpolar内网穿透工具.

image-20240516111801274

4. 群晖NAS安装Cpolar工具

cpolar 提供了群晖安装的套件,点击下面Cpolar群晖套件下载地址,下载相应版本的群晖Cpolar套件,如果找不到对应的型号,可以选择相近版本型号套件

https://www.cpolar.com/synology-cpolar-suite,

20221222170135

打开群晖套件中心,点击右上角的手动安装按钮。

image-20240111165335915

选择我们本地下载好的cpolar套件安装包,然后点击下一步

image-20240111165603922

点击同意按钮,然后点击下一步

image-20240111165702028

最后点击完成即可。

image-20240111165721365

安装完成后,在外部浏览器,我们通过群晖的局域网ip地址9200端口访问Cpolar的Web管理界面,然后输入Cpolar邮箱账号与密码进行登录,如无账号可去官网注册:
cpolar官网地址:https://www.cpolar.com/

image-20230612165349594

5. 配置异地访问Linux系统

在cpolar管理界面,点击左侧仪表盘的隧道管理——创建隧道,创建一个的公网地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择 http
  • 本地地址:3000 (本地访问的http端口)
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

image-20240516113055125

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https,上面我们设置的是3000端口,所以选择http访问即可

image-20240516113131891

6. 异地远程访问Linux系统

使用上面cpolar生成的http地址,在任意设备浏览器输入访问,即可看到Linux Ubuntu系统界面,这样一个远程访问的地址域名就设置好了,无需公网IP,无需云服务器,实现了远程异地访问该Linux 网页版Ubuntu系统 .

image-20240516113550877

小结

为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。

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

7. 固定异地访问的公网地址

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

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

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

image-20240516114032672

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

image-20240516114804971

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

image-20240516114134144

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

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

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

image-20240516114213484

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

image-20240516114239088

最后,我们使用固定的公网http地址访问,可以看到同样访问成功,这样一个固定且永久不变的公网地址就设置好了!

image-20240516114556464

标签:公网,IP,cpolar,地址,域名,访问,点击,Ubuntu,群晖
From: https://blog.csdn.net/Tiam_cr/article/details/142330282

相关文章

  • zblog提示“JavaScript加载失败”的原因和解决办法
    当您在使用Z-Blog时遇到“JavaScript加载失败”的提示,这通常表明浏览器在加载某个或某些JavaScript文件时遇到了问题。以下是一些可能的原因及相应的解决方法:1.浏览器版本过低问题描述:使用的浏览器版本过低,不支持某些JavaScript功能。解决方法:升级到最新版本的浏览......
  • 如何在 Ubuntu 24 上安装 Vmware Tools
    本文首发于我的博客软件版本:VMware®Workstation17Pro17.5.2build-23775571Ubuntu版本:Ubuntu24.04LTS在VMware上安装VmwareTools按Vmware提示安装后,存在相应文件但未正常启动,于是在知乎1和VmwareDoes2上找到了其他安装方法。一卸载原VMwareTools(未安装......
  • scapy函数 IP() 使用说明
    前言全局说明scapy函数IP()使用说明一、说明环境:Ubuntu18.04.6LTS(Linuxqt-vm5.4.0-150-generic#167~18.04.1-UbuntuSMPWedMay2400:51:42UTC2023x86_64x86_64x86_64GNU/Linux)python3Python3.6.9(default,Mar102023,16:46:00)[GCC8.4.0]onl......
  • 大学生网页制作期末作业——html+css+javascript+jquery旅游官网6页 html大学生网站开
    ......
  • Ubuntu怎么使用阿里源安装Docker
    环境查看系统环境#lsb_release-aNoLSBmodulesareavailable.DistributorID:UbuntuDescription:Ubuntu24.04LTSRelease:24.04Codename:noble#uname-aLinuxUbuntu22AiServer010051006.8.0-40-generic#40-UbuntuSMPPREEMPT_DYNAMICFr......
  • P1073 [NOIP2009 提高组] 最优贸易
    大佬题解感觉分层图的做法太nb了吧,每次向下连边更新权值,我确实没什么补充的了,还是看大佬的吧。#include<bits/stdc++.h>usingnamespacestd;#definelllonglongconstintN=1e7+10;intn,m;intval[N];intcnt;inthead[N];structss{ intto,w,next;}a[N];voi......
  • 数据库日更对IP地址查询来说意味着什么?
    网络安全防护到个性化的在线服务,继而深入到数据分析和市场研究,IP定位数据库所提供信息支持的作用不可忽视。构建IP定位数据库很复杂,需要通过多种渠道收集大量原始数据,包括与互联网服务商合作获取IP地址分配信息,进行网络监测以捕捉动态变化、整合地理信息系统数据确定准确位置等。这......
  • JavaScript 中循环数据、改变数据的几种方法
    将数组对象中的属性值取出并组成新的数组letarr=[{name:"张三",age:"1",sex:"男",grade:11},{name:"李四",age:"2",sex:"男",grade:12},{name:"王五",age:"3",sex:"男",gra......
  • JavaScript 的 this 指向问题深度解析
    JavaScript中的this指向问题有很多博客在解释,仍然有很多人问。上周我们的开发团队连续两个人遇到相关问题,所以我不得不将关于前端构建技术的交流会延长了半个时候讨论this的问题。与我们常见的很多语言不同,JavaScript函数中的this指向并不是在函数定义的时候确定的,......
  • 14个你可能不知道的JavaScript调试技巧
    熟悉工具可以让工具在工作中发挥出更大的作用。尽管江湖传言JavaScript很难调试,但如果你掌握了几个技巧,就能用很少的时间来解决错误和bug.文中已经列出了14个你可能不知道的调试技巧,但是可能需要你牢记在心,以便在下次需要调试JavaScript代码时使用!一起来看大多数技巧都适......