skip to content
Logo 三七の小站

vercel DNS

/ 7 min read

[[toc]] 1、vercel DNS 2、docker集群 3、webdav windows 挂载 4、syncthing 5、公积金贷款降低 6、warp脚本 7、Glances系统资源监控程序

1、vercel DNS

# 官方cdn
cname.vercel-dns.com
# 中国优化
cname.vercel-dns.com
# 第三方加速
vercel.cdn.yt-blog.top

2、docker

docker分布式部署

Docker Swarm

要在两台服务器上构建Docker Swarm以实现故障转移,您需要执行以下步骤。假设您已经有两台服务器,我们将其称为server1server2。以下是具体的操作指南:

server1 上初始化 Swarm 集群

  1. 安装 Docker:确保两台服务器都安装了 Docker,并且版本支持 Swarm 模式。如果尚未安装,请先安装 Docker。

  2. 初始化 Swarm:在 server1 上运行以下命令初始化 Swarm 集群。记得替换 <ip_address_of_server1>server1 的实际IP地址。

Terminal window
docker swarm init --advertise-addr <ip_address_of_server1>

执行完此命令后,您会看到输出,其中包括加入集群所需的命令。记下这个命令,稍后将在 server2 上使用。

server2 上加入 Swarm 集群

  1. 加入 Swarm:在 server2 上运行从 server1 获得的加入命令。命令类似于:
Terminal window
docker swarm join --token SWMTKN-... <ip_address_of_server1>:2377

请确保替换 <ip_address_of_server1> 以及前面的 SWMTKN-... 部分为实际的令牌和IP地址。

配置服务以实现高可用

  1. 部署服务:回到 server1 或任何具有 Swarm 管理权限的节点上,使用 docker service create 命令部署您的应用。确保设置服务的复制数量(例如,--replicas 2),以便在集群中的多个节点上运行服务实例,实现高可用性。
Terminal window
docker service create \
--name my_service \
--replicas 2 \
--publish published_port:target_port \
your_docker_image:latest

这里,替换 my_service 为您服务的名称,published_porttarget_port 分别为容器对外公开的端口和内部使用的端口,your_docker_image:latest 为您的Docker镜像名及标签。

验证服务

  1. 检查服务状态:运行以下命令检查服务是否正常运行,并查看其副本分布在哪些节点上。
Terminal window
docker service ls
docker 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命令

Terminal window
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

Terminal window
# 查看syncthing-discovery-server日志获取Server device ID
docker logs syncthing-discovery-server
# 查看syncthing-relay-server日志获取URI
docker logs syncthing-relay-server
Server device ID is 3YPPONG-Y6WYIPG-MQ6H7BO-Q7F7G5G-LXECRKH-ELY2SPA-ASC6LSK-JZXPJQX
Replication device ID is 3YPPONG-Y6WYIPG-MQ6H7BO-Q7F7G5G-LXECRKH-ELY2SPA-ASC6LSK-JZXPJQX
ID: HZ2BCNZ-CJORDKL-AKK25UM-O65NG4R-OFNGKFH-2F7H66Z-ADGAXBK-GMKW5AU
URI: relay://0.0.0.0:22067/?id=HZ2BCNZ-CJORDKL-AKK25UM-O65NG4R-OFNGKFH-2F7H66Z-ADGAXBK-GMKW5AU&networkTimeout=2m0s&pingInterval=1m0s&statusAddr=%3A22070

3. Syncthing 中配置发现和中继服务器

Terminal window
# 协议监听地址,中继服务URI
relay://公网IP:22067?id=中继服务器device ID
# 全局发现服务器
https://公网IP:8443/?id=发现服务器device ID

保留default

5、公积金贷款降低

6、warp脚本

Terminal window
wget -N https://gitlab.com/fscarmen/warp/-/raw/main/menu.sh && bash menu.sh

7、【Docker项目】之–Glances系统资源监控程序支持API调用