客户端
docker run -it -d \
-p 8384:8384 -p 22000:22000/tcp -p 22000:22000/udp -p 21027:21027/udp \
--name syncthing \
--rm \
--hostname=[设备名,便于区分] \
-e TZ=Asia/Shanghai \
-u $(id -u):$(id -g) \
-v $PWD:/var/syncthing \
-v ~:/macbook-air \
syncthing/syncthing
-v $PWD:/var/syncthing
将syncthing的配置文件保存到当前目录-v ~:/macbook-air
将整台电脑的路径映射到容器中,方便后面做文件共享
-v $PWD:/var/syncthing
/var/syncthing
是Syncthing默认的数据目录,用于存储Syncthing的配置文件、数据库、日志等数据。在该目录下,有如下重要的文件和目录
- config.xml:Syncthing 的配置文件,包含了节点的 ID、监听端口、共享目录等信息。
- index-v0.14.0.db:Syncthing 的索引数据库文件,记录了本地节点的共享目录中的所有文件信息。
- cert.pem 和 key.pem:Syncthing 的 HTTPS 证书和私钥文件,用于加密 Web 界面的访问。
- logs/:Syncthing 的日志文件目录,包含了各种级别的日志记录
忽略文件
Syncthing中,可以使用.stignore
文件来忽略文件和文件夹,该文件与.gitignore
文件类似。在Syncthing中,.stignore
文件的工作方式是,将该文件放置在要同步的文件夹中,并在Syncthing配置中启用“IgnorePerms”选项,Syncthing会在同步时忽略文件夹中的文件和文件夹,这些文件和文件夹列在.stignore
文件中
Syncthing中启用“IgnorePerms”选项的方法是,在Web GUI中选择要同步的文件夹,单击“Edit”,然后在“Advanced Settings”选项卡下将“Ignore Permissions”设置为“Yes”
服务器
docker run -it -d \
-p 8384:8384 -p 22000:22000/tcp -p 22000:22000/udp -p 21027:21027/udp \
--name syncthing \
--rm \
--hostname=[设备名,便于区分] \
-e TZ=Asia/Shanghai \
-u $(id -u):$(id -g) \
-v $PWD:/var/syncthing \
-v /:/linux-server \
syncthing/syncthing
同步的内容会保存到-v $PWD:/var/syncthing
在WebUI上将客户端和服务端相互添加为远程设备
省略
在客户端的WebUI上选择需要同步的文件夹,并在'选项'中共享给服务器
省略
在服务器上的WebUI上同意共享,并将共享内容保存到本地
省略