[[toc]] 1、vercel DNS 2、docker集群 3、webdav windows 挂载 4、syncthing 5、公积金贷款降低 6、warp脚本 7、Glances系统资源监控程序
1、vercel DNS
# 官方cdncname.vercel-dns.com# 中国优化cname.vercel-dns.com# 第三方加速vercel.cdn.yt-blog.top
2、docker
docker分布式部署
Docker Swarm
要在两台服务器上构建Docker Swarm以实现故障转移,您需要执行以下步骤。假设您已经有两台服务器,我们将其称为server1
和server2
。以下是具体的操作指南:
在 server1
上初始化 Swarm 集群
-
安装 Docker:确保两台服务器都安装了 Docker,并且版本支持 Swarm 模式。如果尚未安装,请先安装 Docker。
-
初始化 Swarm:在
server1
上运行以下命令初始化 Swarm 集群。记得替换<ip_address_of_server1>
为server1
的实际IP地址。
docker swarm init --advertise-addr <ip_address_of_server1>
执行完此命令后,您会看到输出,其中包括加入集群所需的命令。记下这个命令,稍后将在 server2
上使用。
在 server2
上加入 Swarm 集群
- 加入 Swarm:在
server2
上运行从server1
获得的加入命令。命令类似于:
docker swarm join --token SWMTKN-... <ip_address_of_server1>:2377
请确保替换 <ip_address_of_server1>
以及前面的 SWMTKN-...
部分为实际的令牌和IP地址。
配置服务以实现高可用
- 部署服务:回到
server1
或任何具有 Swarm 管理权限的节点上,使用docker service create
命令部署您的应用。确保设置服务的复制数量(例如,--replicas 2
),以便在集群中的多个节点上运行服务实例,实现高可用性。
docker service create \ --name my_service \ --replicas 2 \ --publish published_port:target_port \ your_docker_image:latest
这里,替换 my_service
为您服务的名称,published_port
和 target_port
分别为容器对外公开的端口和内部使用的端口,your_docker_image:latest
为您的Docker镜像名及标签。
验证服务
- 检查服务状态:运行以下命令检查服务是否正常运行,并查看其副本分布在哪些节点上。
docker service lsdocker service ps my_service
完成以上步骤后,您就成功地在两台服务器上建立了Docker Swarm集群,并部署了一个高可用的服务。如果任一节点出现故障,Swarm 将自动重新调度服务副本到健康的节点上,从而实现故障转移。
3、webdav windows 挂载
当前市面上大部分的网盘,可以挂载到 “Alist” 中。Alist 又支持 webdav协议。这就意味着通过 Alist 的 webdav 服务,我们可以直接将网盘挂载到本地,类似于本地磁盘一样读写网盘中文件。
但是在本地挂载的过程中,无论是添加网络位置,还是映射网络驱动器,都会出现文件路径不对、网络错误无法访问等错误,如下所示:
导致上述问题的原因其实非常简单。windows 默认的 WebClient 服务仅支持 https 协议,而本地搭建的 webdav 服务和链接都是基于 http 协议的,因此才造成了挂载失败的情况。
步骤1: 按下 “windows徽标键” + “R”,打开运行窗口,输入 regedit ,点击确定后,打开注册表编辑器窗口。
步骤2: 将路径定位到以下路径:计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters。双击右侧界面中的 BasicAuthLevel 条目,将数值数据修改为“2”,点击确定后关闭注册表编辑器。
步骤3: 按下 “windows徽标键” + “R”,打开运行窗口,输入 services.msc ,点击确定后,打开“服务”界面。找到 “WebClient” 服务,右键点击打开选项菜单,选择重新启动,稍等几秒,待完成后,关闭“服务”界面。
4、syncthing
docker命令
docker run -d --name=syncthing -e PUID=1000 -e PGID=1000 -p 37004:8384 -p 22000:22000/tcp -p 22000:22000/udp -p 21027:21027/udp -v /docker/syncthing/config:/config -v /usr/blog:/data --restart unless-stopped linuxserver/syncthing:latest
1. Linux 使用 Docker 方式部署发现和中继服务
推荐使用 docker-compose 方式部署,yaml 文件如下:
version: "3"services: # 自建syncthing的发现服务器 discovery-servier syncthing_discovery_server: image: syncthing/discosrv container_name: syncthing-discovery-server command: -debug -listen=":8443" environment: - PUID=1000 - PGID=1000 volumes: - ./syncthing/discosrv:/var/stdiscosrv ports: - 8443:8443 # Listen address (default “:8443”) restart: always
# 自建syncthing的中继服务器 syncthing-relay-server syncthing_relay_server: image: syncthing/relaysrv:latest container_name: syncthing-relay-server command: -debug -pools="" -listen=":22067" environment: - PUID=1000 - PGID=1000 volumes: - ./syncthing/strelaysrv:/var/strelaysrv ports: - 22067:22067 # 中继服务器的数据连接端口(必须开启) #- 22070:22070 # 用于公用的中继服务器池,显示数据传输、客户端数量等状态,可不开启 restart: always
2. 获取发现服务的 Server device ID 和中继服务的 URI
# 查看syncthing-discovery-server日志获取Server device IDdocker logs syncthing-discovery-server
# 查看syncthing-relay-server日志获取URIdocker logs syncthing-relay-server
Server device ID is 3YPPONG-Y6WYIPG-MQ6H7BO-Q7F7G5G-LXECRKH-ELY2SPA-ASC6LSK-JZXPJQXReplication device ID is 3YPPONG-Y6WYIPG-MQ6H7BO-Q7F7G5G-LXECRKH-ELY2SPA-ASC6LSK-JZXPJQX
ID: HZ2BCNZ-CJORDKL-AKK25UM-O65NG4R-OFNGKFH-2F7H66Z-ADGAXBK-GMKW5AUURI: relay://0.0.0.0:22067/?id=HZ2BCNZ-CJORDKL-AKK25UM-O65NG4R-OFNGKFH-2F7H66Z-ADGAXBK-GMKW5AU&networkTimeout=2m0s&pingInterval=1m0s&statusAddr=%3A22070
3. Syncthing 中配置发现和中继服务器
# 协议监听地址,中继服务URIrelay://公网IP:22067?id=中继服务器device ID
# 全局发现服务器https://公网IP:8443/?id=发现服务器device ID
保留default
5、公积金贷款降低

6、warp脚本
wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh
7、【Docker项目】之–Glances系统资源监控程序支持API调用
