CasaOS中Docker部署SyncThing结合Cpolar实现公网文件同步方案
文章目录
- 前言
- 1. 添加镜像源
- 2. 应用安装测试
- 3. 安装syncthing
- 3.1 更新应用中心
- 3.2 SyncThing安装与配置
- 3.3 Syncthing使用演示
- 4. 安装内网穿透工具
- 5. 配置公网地址
- 6. 配置固定公网地址
前言
在万物互联的数字化时代,您是否面临过多设备协同办公的困扰?本文将为您解析一款创新性文件传输工具——SyncThing!这款开源软件凭借其去中心化特性,重新定义了数据同步与云备份的行业标准。从独立创作者到企业开发团队,该工具均能通过其独特的点对点架构,实现跨平台的高效文件管理。文章将分步骤指导在CasaOS系统中配置SyncThing服务,并整合Cpolar内网穿透技术构建可靠的公网访问通道,助您打破地域限制,打造智能化的文件协作体系。让我们共同见证这一颠覆传统文件管理的数字化新生态。
【视频教程】
一分钟教会你本地部署文件同步神器Syncthing!
1. 添加镜像源
我们这里演示的环境是已经刷好CasaOS的ArmV7架构的XX云小主机,大家也可以使用其他设备刷入armbian后安装CasaOS进行体验。另外分享的是如何在casaos终端中添加镜像源地址的方式,来实现顺利拉取镜像并使用docker安装应用。
首先进入终端,使用root账号密码登录。
进入终端后执行下方命令:
nano /etc/docker/daemon.json
在编辑器中输入新的镜像源地址:
{
"registry-mirrors": ["https://docker.m.daocloud.io","https://docker.1panel.live"
]
}
{
“registry-mirrors”: [
“https://do.nark.eu.org”,
“https://dc.j8.work”,
“https://docker.m.daocloud.io”,
“https://dockerproxy.com”,
“https://docker.mirrors.ustc.edu.cn”,
“https://docker.nju.edu.cn”
]
}
然后按Crtl+X键保存这个镜像源,退出编辑器回到终端后执行下方命令重启:
systemctl restart docker
在主机的etc/docker/路径下的daemon.json文件中也能看到刚才添加的镜像源。
2. 应用安装测试
现在我们回到casaos界面,点击应用商店,安装一下这个AdGuard应用:
可以看到,之前因为拉取镜像超时,导致无法安装的情况解决了。
已经可以通过应用商店正常安装应用了:
3. 安装syncthing
3.1 更新应用中心
现在我们已经能够在应用中心正常安装软件了,不过可能遇到刚刷机后应用中心的的软件数量不多,或者不兼容ArmV7设备的情况,这个时候可以添加更多应用到应用中心。
首先,进入应用中心,点击更多应用:
然后点击输入框右侧的问号按钮:
此时会在浏览器中打开一个添加应用的页面,复制这个页面中的这些地址,然后回到CasaOS应用中心界面。
将地址粘贴到刚才带有问号的输入框中,然后点击添加,系统就会自动更新更多应用到应用中心界面,可以从几十个增加到几百个。
我这里只添加了前两个地址就已经有200多个应用了,而且今天要分享的兼容ArmV7设备的文件同步工具Syncthing现在也可以在应用中心看到了。
3.2 SyncThing安装与配置
首先点击安装:
安装完成后,可以在主界面看到新增了Syncthing应用
点击图标打开即可在浏览器中打开Syncthing的web管理界面:
可以看到需要为图形用户界面设置用户和密码的提示:
点击设置:
点击图形用户界面:添加用户名与密码,然后将使用加密连接到图形管理页面前的对号勾选上:
点击保存:
之后会回到首页输入用户名和密码的登录界面:
登录即可:
3.3 Syncthing使用演示
现在我们已经在CasaOS系统下的小主机中安装了Syncthing,接下来演示一下在其他设备,比如Windows电脑上如何同步文件到小主机中的Syncthing中。
PS:我们还可以在安卓手机中安装Syncthing,同步文件至小主机中的Syncthing
首先,需要现在Windows系统电脑上下载Windows版本的Syncthing:
Release v1.27.9 · syncthing/syncthing · GitHub
下载后,运行程序后弹出一个命令行窗口,不要关闭:
同时同样会在浏览器打开一个web管理界面:
然后,我们在CasaOS的Syncthing管理界面中点击右上角的操作,进入显示ID,复制设备ID:
然后在电脑端的Syncthing管理界面点击添加远程设备,输入刚才复制的CasaOS端的设备ID,点击保存。
这时,CasaOS端的Syncthing管理界面会弹出电脑端的设备添加提示,点击添加设备即可:
如果没出现连接提示,可以同样手动复制Windows端的ID粘贴到casaos端进行设备连接。
现在,Windows电脑端和CasaOS端的Syncthing就成功连接了:
然后我们需要在Windows电脑端添加共享文件夹,并在其中添加想要同步的文件:
本例以D盘新建的名为gongxiang
文件夹为例,大家可以自定义共享文件夹的路径:
然后点击共享,勾选对casaos设备共享,点击保存。
此时,在casaos端的界面会弹出共享文件夹的提示,点击添加即可:
至此,两端文件同步配置完成,共享文件夹中的文件会自动同步到目标文件夹。
电脑端gongxiang
文件夹中的图片可以在casaos端的Syncthing目录中的picture
文件夹中查看:
4. 安装内网穿透工具
此时,我们已经成功在本地局域网内实现了Windows电脑端和casaos端的Syncthing文件同步,但如果本地没有公网IP的话,那就仅能在本地局域网中访问casaos端的Syncthing web管理页面,有一定局限性。
如果想出门在外时也能远程对家中的CasaOS设备中的Syncthing文件同步进行管理,或者新增其他设备并将文件同步到casaos当中应该怎么办呢?
很简单,只要在本地casaos设备中安装一个cpolar内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,接下来介绍一下如何安装cpolar内网穿透并实现远程同步文件。
casaos安装cpolar步骤:
首先,点击左上角进入终端:
然后输入root账号密码登录:
然后在终端中执行下方命令,安装cpolar内网穿透工具:
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
然后执行下面的命令查看版本号,有正常显示版本号即为安装成功:
cpolar version
然后需要执行下面的命令向系统添加cpolar服务:
systemctl enable cpolar
然后执行下面命令启动cpolar服务:
systemctl start cpolar
查看服务状态:
systemctl status cpolar
可以看到cpolar服务已经在casaos设备端正常启动。
5. 配置公网地址
现在我们已经在casaos设备中成功安装了cpolar内网穿透工具,现在就可以通过cpolar来为本地的Syncthing文件同步服务生成可以远程访问的公网地址了!
首先在浏览器上访问http://玩客云IP地址:9200,使用cpolar账号登录,如果没有可以去cpolar官网:https://www.cpolar.com/ 注册一个账号。
登录后即可看到Cpolar web 配置界面,结下来在 web 管理界面即可配置公网地址。
PS:冒号要是英文输入法下的冒号
登录后,点击左侧仪表盘的隧道管理——创建隧道,
创建一个 Syncthing 的公网http地址隧道
- 隧道名称:可自定义命名,本例中使用
stongbu
- 协议:选择http
- 本地地址:8384
- 域名类型:免费选择随机域名
- 地区:选择China VIP
隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式:http和https,任选其一到浏览器访问即可。
在浏览器地址栏输入cpolar生成的公网地址,输入账号密码后,可以看到成功访问本地casaos端部署的Syncthing的Web管理界面。
此时,即使你本地的casaos端没有公网IP,我们在Windows端也可以随时远程访问本地局域网内的casaos端中部署的Syncthing Web管理界面进行设备管理等相关操作了。
小结
为了方便演示,我们在上边的操作过程中使用cpolar生成的HTTP公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在24小时内会发生随机变化,更适合于临时使用。
如果有长期远程管理本地casaos中的Syncthing文件同步web管理页面,或者远程访问其他本地服务的需求,又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的HTTP公网地址来远程访问。
6. 配置固定公网地址
登录cpolar官网,点击左侧的预留,选择保留二级子域名,地区选择China VIP,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称,这里我填写的是 mystongbu
,大家也可以自定义喜欢的名称。
保留成功后复制保留成功的二级子域名的名称:mystongbu,返回登录Cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道 stongbu,点击右侧的编辑:
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名:mystongbu
- 地区:选择China VIP
点击更新
(注意,点击一次更新即可,不需要重复提交)
更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,由随机地址名称变成了两个固定的二级子域名(固定公网地址):
最后,我们使用任意一个固定公网地址在浏览器访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地局域网内的casaos主机端中的Syncthing web管理页面了!
通过本实操指南,您将系统掌握在CasaOS服务器环境中,运用Docker容器技术部署SyncThing服务的全流程操作,并通过Cpolar内网穿透方案实现持久化的公网访问映射。这种技术架构组合不仅能够突破传统局域网的物理边界约束,更能构建跨终端、跨区域的实时文件同步网络。当部署流程完成之后,所有核心文档与项目数据均可通过自定义域名实现即时访问,彻底消除文件管理中的时空界限。若您发现该方案对工作效率有显著优化效果,欢迎将这套技术组合方案分享给更多技术爱好者,共同构建高效协同的数字生态体系。持续关注本技术专栏,我们将持续解锁更多智能运维解决方案,期待与您在下期技术沙龙中深入探讨!