CasaOS设备使用Docker安装SyncThing文件同步神器并实现远程管理

news2024/9/22 3:49:32

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术,jvm,并发编程 redis,kafka,Spring,微服务等
    • 常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,typora 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 新空间代码工作室:提供各种软件服务,承接各种毕业设计,毕业论文等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

    • 前言
    • 1. 添加镜像源
    • 2. 应用安装测试
    • 3. 安装 syncthing
      • 3.1 更新应用中心
      • 3.2 SyncThing 安装与配置
      • 3.3 Syncthing 使用演示
    • 4. 安装内网穿透工具
    • 5. 配置公网地址
    • 6. 配置固定公网地址

前言

本文主要介绍如何在 CasaOS 系统设备内使用 docker 安装可跨网络、跨平台进行文件的同步神器 SyncThing,并结合 cpolar 内网穿透工具配置公网地址,轻松实现随时随地远程访问本地部署的 SyncThing web 页面进行同步管理与相关配置操作。

由于目前大家在使用 docker 命令拉取镜像安装应用时,经常出现无法正常 docker pull 的现象。这种情况对于刷了 CasaOS 的这类主要使用 docker 安装软件的小主机很不友好,无论是在应用商店还是使用命令安装应用时都会出现超时或无法安装的问题。

在这里插入图片描述

观察了一段时间,目前大概有几种解决方法,这其中主要以自建镜像仓库,或者时在拉取时填加有效的镜像源地址为主。前者相对有一定难度,今天分享一下如何在 casaos 终端中添加镜像源地址的方式,来实现顺利拉取镜像并使用 docker 安装应用。

1. 添加镜像源

我们这里演示的环境是已经刷好 CasaOS 的 ArmV7 架构的 XX 云小主机,大家也可以使用其他设备刷入 armbian 后安装 CasaOS 进行体验。

在这里插入图片描述

首先进入终端,使用 root 账号密码登录。

在这里插入图片描述

进入终端后执行下方命令:

nano /etc/docker/daemon.json

在这里插入图片描述

在编辑器中输入新的镜像源地址:

{
"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"
]
}

在这里插入图片描述
{
“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 设备的情况,这个时候可以添加更多应用到应用中心。

首先,进入应用中心,点击更多应用:

image-20240722105447141

然后点击输入框右侧的问号按钮:

image-20240722105526881

此时会在浏览器中打开一个添加应用的页面,复制这个页面中的这些地址,然后回到 CasaOS 应用中心界面。

1716534084277

将地址粘贴到刚才带有问号的输入框中,然后点击添加,系统就会自动更新更多应用到应用中心界面,可以从几十个增加到几百个。

image-20240524150508486

我这里只添加了前两个地址就已经有 200 多个应用了,而且今天要分享的兼容 ArmV7 设备的文件同步工具 Syncthing 现在也可以在应用中心看到了。

image-20240722110155258

3.2 SyncThing 安装与配置

首先点击安装:

安装完成后,可以在主界面看到新增了 Syncthing 应用

image-20240722111206613

点击图标打开即可在浏览器中打开 Syncthing 的 web 管理界面:

image-20240722111121724

可以看到需要为图形用户界面设置用户和密码的提示:

点击设置:

image-20240722111757939

点击图形用户界面:添加用户名与密码,然后将使用加密连接到图形管理页面前的对号勾选上:

image-20240722112024526

点击保存:

image-20240722112044802

之后会回到首页输入用户名和密码的登录界面:

image-20240722112100540

登录即可:

image-20240722112214839

3.3 Syncthing 使用演示

现在我们已经在 CasaOS 系统下的小主机中安装了 Syncthing,接下来演示一下在其他设备,比如Windows 电脑上如何同步文件到小主机中的 Syncthing 中

PS:我们还可以在安卓手机中安装 Syncthing,同步文件至小主机中的 Syncthing

首先,需要现在 Windows 系统电脑上下载 Windows 版本的 Syncthing:

Release v1.27.9 · syncthing/syncthing · GitHub

image-20240722114440608

下载后,运行程序后弹出一个命令行窗口,不要关闭:

image-20240722114540263

同时同样会在浏览器打开一个 web 管理界面:

image-20240722114623981

然后,我们在 CasaOS 的 Syncthing 管理界面中点击右上角的操作,进入显示 ID,复制设备 ID:

image-20240722114907762

然后在电脑端的 Syncthing 管理界面点击添加远程设备,输入刚才复制的 CasaOS 端的设备 ID,点击保存。

image-20240722115155887

image-20240722115134238

这时,CasaOS 端的 Syncthing 管理界面会弹出电脑端的设备添加提示,点击添加设备即可:

image-20240722115322454

image-20240722115445283

如果没出现连接提示,可以同样手动复制 Windows 端的 ID 粘贴到 casaos 端进行设备连接。

现在,Windows 电脑端和 CasaOS 端的 Syncthing 就成功连接了:

image-20240722115527413

然后我们需要在 Windows 电脑端添加共享文件夹,并在其中添加想要同步的文件:

image-20240722130125738

本例以 D 盘新建的名为gongxiang文件夹为例,大家可以自定义共享文件夹的路径:

image-20240722125738986

然后点击共享,勾选对 casaos 设备共享,点击保存。

image-20240722120515209

此时,在 casaos 端的界面会弹出共享文件夹的提示,点击添加即可:

image-20240722120612243

至此,两端文件同步配置完成,共享文件夹中的文件会自动同步到目标文件夹。

image-20240722120651334

电脑端gongxiang文件夹中的图片可以在 casaos 端的 Syncthing 目录中的picture文件夹中查看:

image-20240722130030683

image-20240722130042784

4. 安装内网穿透工具

此时,我们已经成功在本地局域网内实现了 Windows 电脑端和 casaos 端的 Syncthing 文件同步,但如果本地没有公网 IP 的话,那就仅能在本地局域网中访问 casaos 端的 Syncthing web 管理页面,有一定局限性。

如果想出门在外时也能远程对家中的 CasaOS 设备中的 Syncthing 文件同步进行管理,或者新增其他设备并将文件同步到 casaos 当中应该怎么办呢?

很简单,只要在本地 casaos 设备中安装一个 cpolar 内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,接下来介绍一下如何安装 cpolar 内网穿透并实现远程同步文件。

casaos 安装 cpolar 步骤:

首先,点击左上角进入终端:

image-20240528113537036

然后输入 root 账号密码登录:

image-20240528113647981

然后在终端中执行下方命令,安装 cpolar 内网穿透工具:

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

image-20240528113812164

然后执行下面的命令查看版本号,有正常显示版本号即为安装成功:

cpolar version

image-20240528113927867

然后需要执行下面的命令向系统添加 cpolar 服务

systemctl enable cpolar

然后执行下面命令启动 cpolar 服务:

systemctl start cpolar

查看服务状态:

systemctl status cpolar

1716868007068

可以看到 cpolar 服务已经在 casaos 设备端正常启动。

5. 配置公网地址

现在我们已经在 casaos 设备中成功安装了 cpolar 内网穿透工具,现在就可以通过 cpolar 来为本地的 Syncthing 文件同步服务生成可以远程访问的公网地址了!

首先在浏览器上访问 http://玩客云 IP 地址:9200,使用 cpolar 账号登录,如果没有可以去 cpolar 官网:https://www.cpolar.com/ 注册一个账号。

登录后即可看到 Cpolar web 配置界面,结下来在 web 管理界面即可配置公网地址。

PS:冒号要是英文输入法下的冒号

img

登录后,点击左侧仪表盘的隧道管理——创建隧道,

创建一个 Syncthing 的公网 http 地址隧道

  • 隧道名称:可自定义命名,本例中使用stongbu
  • 协议:选择 http
  • 本地地址:8384
  • 域名类型:免费选择随机域名
  • 地区:选择 China VIP

image-20240722133252256

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式:http 和 https,任选其一到浏览器访问即可。

image-20240722133936030

在浏览器地址栏输入 cpolar 生成的公网地址,输入账号密码后,可以看到成功访问本地 casaos 端部署的 Syncthing 的 Web 管理界面。

image-20240722134046957

image-20240722134227444

此时,即使你本地的 casaos 端没有公网 IP,我们在 Windows 端也可以随时远程访问本地局域网内的 casaos 端中部署的 Syncthing Web 管理界面进行设备管理等相关操作了。

image-20240722134857532

小结

为了方便演示,我们在上边的操作过程中使用 cpolar 生成的 HTTP 公网地址隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在 24 小时内会发生随机变化,更适合于临时使用。

如果有长期远程管理本地 casaos 中的 Syncthing 文件同步 web 管理页面,或者远程访问其他本地服务的需求,又不想每天重新配置公网地址,还想地址好看又好记,那我推荐大家选择使用固定的 HTTP 公网地址来远程访问。

6. 配置固定公网地址

登录 cpolar 官网,点击左侧的预留,选择保留二级子域名,地区选择 China VIP,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称,这里我填写的是 mystongbu ,大家也可以自定义喜欢的名称。

image-20240722135126663

保留成功后复制保留成功的二级子域名的名称:mystongbu,返回登录 Cpolar web UI 管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道 stongbu,点击右侧的编辑:

image-20240722135218273

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

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

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

image-20240722135249967

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

image-20240722135341394

最后,我们使用任意一个固定公网地址在浏览器访问,可以看到访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地局域网内的 casaos 主机端中的 Syncthing web 管理页面了!

image-20240722135517707

image-20240722135558361

以上就是如何在 CasaOS 系统设备中安装 cpolar 内网穿透工具,并配置固定不变的二级子域名公网地址实现远程访问本地部署的 Syncthing 同步工具服务 web 管理页面的全部流程,感谢您的观看,有任何问题欢迎留言交流。

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1948038.html

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

相关文章

基于 HTML+ECharts 实现智慧景区数据可视化大屏(含源码)

构建智慧景区数据可视化大屏:基于 HTML 和 ECharts 的实现 随着旅游业的蓬勃发展,智慧景区的概念逐渐深入人心。通过数据可视化,景区管理者可以实时监控游客流量、设施使用情况以及环境状况,从而提升游客体验和管理效率。本文将详…

昇思学习打卡-22-生成式/DCGAN生成漫画头像

文章目录 DCGAN网络数据处理构造网络生成器判别器损失函数优化器 结果展示 我们将学习DCGAN网络如何数据处理、设置网络,包括生成器、判别器、损失函数、优化器等。 DCGAN网络 DCGAN(深度卷积对抗生成网络,Deep Convolutional Generative Ad…

数据结构之《队列》

在数据结构之《栈》章节中学习了线性表中除了顺序表和链表外的另一种结构——栈,在本篇中我们将继续学习另一种线性表的结构——队列,在通过本篇的学习后,你将会对栈的结构有充足的了解,在了解完结构后我们还将进行栈的实现。一起…

JavaScript——变量与运算符、输入输出、判断、循环

文章目录 前言概述使用 js从文件引入 js 代码importjs 的作用变量计算输入格式化输出保留小数向上取整,向下取整条件判断循环总结 前言 为了监督自己的进度,把学习任务一点点都写出来,写多少就算多少,不求完美,只求完…

计算的是如何工作的

文章目录 一. 冯诺依曼体系结构二. CPU三. 指令*四. CPU是如何执行指令的 一. 冯诺依曼体系结构 冯诺依曼是计算机领域的祖师爷, 被评为"二十一世纪最伟大的"全才"" 冯诺依曼提出了冯诺依曼体系结构, 定义了一台计算机, 由这几部分构成: 输入设备: 包括…

STM32---HAL库外设配置--串口外设配置及使用

一:首先按照本人的时钟配置博客配置,配置好基础时钟 二:选择对应串口进行选中,然后配置 配置如下:首先配置成异步收发模式,如图中的序号1 参数设置界面选择默认即可如下图 下图中的1不用设置,默认即可。2…

增长新引擎,构建基于 CDP 的用户运营竞争力

本文将围绕“企业如何通过构建基于 CDP 的用户运营体系提升业务增长”这一核心,详细介绍企业数据化运营现状,拆解用户运营目标,展示神策 CDP 的关键能力以及用户运营策略落地的完整路径。 一、洞察:企业数据化运营面临的挑战 当前…

系统编程--Linux下文件的“其他操作”函数

这里写目录标题 文件存储理论补充dentry、inode 文件其他操作stat函数作用函数原型代码(以获取文件大小为例)补充(获取文件类型) lstat函数作用函数原型代码补充(获取文件权限)总结 tipslink函数作用简介函…

看板项目之vue代码分析

目录: Q1、vue项目怎么实现的输入localhost:8080就能自动跳到index页面Q2、组合饼状图如何实现Q3、vue项目如何实现环境的切换Q4、vue怎么实现vue里面去调用js文件里面的函数 Q1、vue项目怎么实现的输入localhost:8080就能自动跳到index页面 …

OZON家庭洗剂产品,OZON热卖家庭洗剂用品有哪些

OZON平台上家庭洗剂产品的热销情况主要反映了俄罗斯家庭对于环保、高效、多功能的清洁用品的需求。根据最新数据和市场趋势,以下是一些OZON平台上热卖的家庭洗剂用品:OZON热卖家庭洗剂用品:D。DDqbt。COm/74rD Top1 洗碗液 ЭКО. Гел…

免费【2024】springboot 毕业设计管理系统

博主介绍:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流✌ 技术范围:SpringBoot、Vue、SSM、HTML、Jsp、PHP、Nodejs、Python、爬虫、数据可视化…

反序列化-极客大挑战2019php【I have a cat!】

知道这个题考的是反序列化,那么我们第一反应该拿到他的源码。 根据这句话判断【因为每次猫猫都在我键盘上乱跳,所以我有一个良好的备份网站的习惯 不愧是我!!! 】说明有目录 我们直接使用dir开扫,发现有压…

Redis的应用场景及类型

目录 一、Redis的应用场景 1、限流 2、分布式锁 3、点赞 4、消息队列 二、Redis类型的命令及用法 1、String类型 2、Hash类型 3、List类型 4、Set类型 5、Zset类型 6、Redis工具类 Redis使用缓存的目的就是提升读写性能 实际业务场景下,我们就可以把 Mys…

通信原理-思科实验五:家庭终端以太网接入Internet实验

实验五 家庭终端以太网接入Internet实验 一实验内容 二实验目的 三实验原理 四实验步骤 1.按照上图选择对应的设备,并连接起来 为路由器R0两个端口配置IP 为路由器R1端口配置IP 为路由器设备增加RIP,配置接入互联网的IP的动态路由项 5.为路由器R1配置静…

Blender插入关键帧的位置报错

在操作过程中,有时候是误操作或者是做动画选择了活动插帧集,导致按i键插入关键帧一直报提示:插入关键帧的帧位置或者是其他的报错弹窗。 1、解决方法是:在时间线的抠像(插帧)选项里,将活动插帧集给清空 2、若是骨骼动画…

新智慧:企元数智呈现全新新零售合规分销系统免费送

新智慧!企元数智近期发布了令人振奋的消息:他们推出了全新的新零售合规分销系统,并且免费向企业赠送!这一举措旨在帮助更多企业轻松实现数字化转型,提高管理效率,实现持续增长。 企元数智的新零售合规分销系…

【Linux】管道通信和 system V 通信

文章目录 一、进程通信原理(让不同进程看到同一份资源)二、管道通信2.1 管道原理及其特点2.1 匿名管道和命名管道 三、共享内存通信3.1 共享内存原理3.2 创建和关联共享内存3.3 去关联、ipc 指令和删除共享内存 四、消息队列和信号量(了解&am…

论文阅读【检测】:Facebook ECCV2020 | DETR

文章目录 论文地址AbstractMotivation模型框架详细结构小结 论文地址 DETR Abstract 提出了一种将目标检测视为直接集预测问题的新方法。简化了检测pipeline,有效地消除了许多手工设计的组件的需求,例如非最大抑制过程或锚生成,这些组件明…

Windows环境下安装Redis并设置Redis开机自启

文章目录 0. 前言1. 下载 Windows 版本的Redis2. 为 Redis 设置连接密码(可选)3. 启动 Redis4. 设置 Redis 开机自启4.1 将 Redis 进程注册为服务4.2 设置 Redis 服务开机自启4.3 重启电脑测试是否配置成功4.4 关闭 Redis 开机自启(拓展&…

Go语言编程 学习笔记整理 第2章 顺序编程 后半部分

1.流程控制 1.1 条件语句 if a < 5 { return 0 } else { return 1 } 注意&#xff1a;在有返回值的函数中&#xff0c;不允许将“最终的”return语句包含在if...else...结构中&#xff0c; 否则会编译失败&#xff01;&#xff01;&#xff01; func example(x int) i…