Profile picture

[Docker] 파일 동기화 서비스 - SyncThing

JaehyoJJAng2023년 05월 04일

SyncThing

SyncThing은 파일 동기화 서비스이다. 오픈 소스이며 Windows/MacOS/Linux/Android 모두 지원하는 높은 범용성을 가지고있다.

P2P 방식의 파일 동기화 프로그램이라 NAS와 같은 서버가 필수적이지는 않지만, 항상 켜진 상태로 파일 변경 상태를 관리하는 컴퓨터가 있는 것이 더 유용하니 중앙 관리 목적을 하는 NAS를 두고 사용하는 것이 효율적이라고 생각된다.


사전 작업

설정 폴더 생성

동기화 설정을 보관할 디렉토리를 생성해주자

$ mkdir -p /docker/syncthing # 동기화 설정 디렉토리
$ mkdor /docker/syncthing/data # 동기화할 자료 저장하는 디렉토리

도커 컨테이너 생성

아래 docker-compose.yaml 파일의 내용을 /docker/syncthing 디렉토리에 넣어주면 된다.

version: "3"

services:
  syncthing:
    image: syncthing/syncthing
    restart: always
    hostname: Jaehyo-NAS
    environment:
      PUID: 1000
      PGID: 1000
      TZ: Asia/Seoul
    ports:
      - "8384:8384"
      - "22000:22000/tcp"
      - "22000:22000/udp"
    volumes:
      - "./config:/var/syncthing/config"
      - "./data:/var/syncthing/Sync"
    container_name: syncthing

yaml 작성이 완료되었다면 컨테이너를 생성하도록 하자.

$ docker-compose up -d

서비스 동작 확인 및 설정

컨테이너가 정상적으로 생성되었다면 http://<IP주소>:8384로 접속해보자.
image
처음 나오는 화면은 접속 계정을 설정하라는 내용이다. 현재 상황으로는 누군가 해당 도메인 또는 IP주소로 접근 시 관리자 인터페이스에 누구나 접근하여 동기화 설정을 바꿔버릴 수 있으므로, 보안을 위해 접속 계정을 바로 바꿔주는 것이 좋다.


접속 계정을 변경하는 방법은 설정 탭 - GUI 탭 에서 쉽게 사용자와 비밀번호를 변경할 수 있으니 참고바란다.
image


Loading script...