Syncthing的Docker(linuxserver)安装教程

2023年3月5日 650点热度
Syncthing-Docker镜像页面:
【重要】务必设置用户名和密码,否则任何人都可以访问
【重要】若与其他容器应用搭配使用,尽量使用root(即PUID=0),或所有容器应用使用相同用户组,否则无法读写。
【重要】若服务器已运行很多服务,不清楚端口是否被占用,执行 " telnent 127.0.0.1 port " 测试。
用法:
docker-compose文件:
前台运行观测:" docker compose -f syncthing.yml up ",浏览器 IP:8384 即可访问,
没问题后转后台运行:" docker compose -f syncthing.yml up -d"
version: '3'
services:
  syncthing: #唯一
    container_name: syncthing  #唯一
    image: linuxserver/syncthing:latest
    hostname: syncthing #自定义容器主机名root@syncthing,默认随机或继承宿主机不易于识别
    environment:
      - PUID=0 #以root权限运行应用,否则无法读取其他docker目录或者宿主机root目录
      - PGID=0
      - TZ=Etc/UTC    
    volumes:
      - ./appdata/config/:/config/
      - /root/docker/hentaiathome/:/hentaiathome/
    restart: unless-stopped
    ports:
      - 8384:8384
      - 22000:22000/tcp
      - 22000:22000/udp
      - 21027:21027/udp
    #network_mode: "host"    #主机模式.无需预先映射端口
坑点说明:
  1. 使用root权限运行,webui会警告不建议这么使用,但我们不接受建议: 
    1. Syncthing should not run as a privileged or system user. Please consider using a normal user account.
  2. 因为如果不用root权限运行,当调用其他root应用创建的目录和文件时,会报错:
    1. “Failed to create folder marker: mkdir ./.stfolder: permission denied”
    2. “Error on folder "abc" (spr9f-dexpz): folder marker missing (this indicates potential data loss, search docs/forum to get information about how to proceed)”

书三拾

不积跬步无以至千里