이번 4부에서는 Outline 데이터베이스와 파일을 구글 드라이브에 정기적으로 백업하는 방법을 소개합니다.
구글 드라이브를 활용해 안전하게 데이터를 보관하고, 문제가 생겼을 때 쉽게 복원할 수 있도록 준비하세요.
1. rclone 설치 및 구글 드라이브 연동
rclone 설치
curl https://rclone.org/install.sh | sudo bash
구글 드라이브 연동 설정
rclone config
n
입력 후 새 remote 생성- 이름 예:
gdrive
- 저장소 유형에서
drive
선택 - 클라이언트 ID/비밀키는 기본값으로 엔터
- 권한 범위는 기본(
full access
) 선택 - 로컬 파일시스템에 엑세스할 필요 없으므로
No
- 자동 인증 시 나오는 URL을 복사해 브라우저에서 로그인 후 인증
- 인증 완료 후 리턴된 코드를 터미널에 붙여넣기
- 설정 저장하고 종료
2. 백업 대상 및 경로 확인
Outline 데이터는 Docker 볼륨 또는 컨테이너 내부에 있습니다.
- PostgreSQL 데이터:
outline-db-data
볼륨 - Redis 데이터:
outline-redis-data
볼륨 (필요시 백업) - Outline 애플리케이션 관련 설정 및 첨부파일 위치도 확인 필요
아래 예시는 PostgreSQL 데이터만 백업합니다.
(볼륨을 직접 백업하려면 컨테이너를 잠시 중지하거나 덤프 방식을 사용하세요.)
3. 데이터베이스 덤프 스크립트 작성
#!/bin/bash
BACKUP_DIR=~/outline_backup
DATE=$(date +'%Y%m%d_%H%M%S')
mkdir -p $BACKUP_DIR
docker exec outline-db pg_dump -U outline outline_db > $BACKUP_DIR/outline_db_$DATE.sql
- 위 스크립트를
backup_db.sh
로 저장 후 실행 권한 부여
chmod +x backup_db.sh
4. 백업 파일 구글 드라이브에 업로드
#!/bin/bash
BACKUP_DIR=~/outline_backup
DATE=$(date +'%Y%m%d_%H%M%S')
FILE=$BACKUP_DIR/outline_db_$DATE.sql
# 데이터베이스 덤프 실행
docker exec outline-db pg_dump -U outline outline_db > $FILE
# 구글 드라이브 업로드 (gdrive는 rclone remote 이름)
rclone copy $FILE gdrive:OutlineBackup --progress
- 위 내용을
backup_and_upload.sh
로 저장하고 실행 권한 부여
5. 크론탭에 자동 백업 등록
crontab -e
아래 예시는 매일 새벽 2시에 자동 실행 설정입니다.
0 2 * * * /home/username/backup_and_upload.sh >> /home/username/backup.log 2>&1
- 경로는 실제 스크립트 위치에 맞게 조정하세요.
6. 백업 확인 및 복원
- 구글 드라이브
OutlineBackup
폴더에서 백업 파일 확인 가능 - 복원 시, 백업 파일을 서버로 내려받아 PostgreSQL에 복원하면 됩니다.
cat outline_db_YYYYMMDD.sql | docker exec -i outline-db psql -U outline outline_db
마무리
이제 Outline 데이터를 안전하게 구글 드라이브에 정기 백업하여 데이터 손실 위험을 줄일 수 있습니다.
필요시 언제든지 백업에서 복원하세요!
'IT 관리 노하우 > Self-Host 구축 및 관리' 카테고리의 다른 글
Self-host로 구축하는 나만의 Notion 만들기 - 2부. 클라우드 인프라 세팅 (0) | 2025.06.13 |
---|---|
Self-host로 구축하는 나만의 Notion 만들기 - 1부. 개요 및 목표 설정 (0) | 2025.06.13 |
[사설GPT] Ollama + Open WebUI (0) | 2024.11.26 |
[Redmine] Redmine 버전 선택시 참고사항 (0) | 2022.07.22 |
[GLPI] 마이그레이션 오류 해결(Synology php 명령 방법) (0) | 2022.04.23 |