데이터 보관과 백업
기본 실행 명령은 데이터베이스와 문서 파일을 컨테이너 안에 저장합니다. Office 컨테이너를 삭제하면 컨테이너 안에만 저장한 문서와 설정도 사라집니다. 계속 보관할 데이터는 서버의 폴더에 저장하고, 장애에 대비해 별도 백업을 준비합니다.
컨테이너 밖에 데이터 보관하기
컨테이너 안의 데이터 폴더를 서버의 폴더와 마운트하여 연결할 수 있습니다. 데이터베이스는 컨테이너 안에서 계속 실행되지만, 데이터 파일은 서버의 폴더에 보관됩니다. 컨테이너를 새로 만들 때 기존 데이터 폴더를 다시 연결하면 이전 문서와 설정을 유지한 상태로 Office를 다시 사용할 수 있습니다.
원본 문서뿐 아니라 관리자 설정과 편집 중인 데이터도 유지하려면 아래 폴더도 함께 보관해야 합니다.
| 보관할 데이터 | 컨테이너 안의 폴더 |
|---|---|
| 기본 Host Storage의 원본 문서와 저장한 문서 | /home/thinkfree/docs |
| 관리자 설정, 어댑터 정보, 편집 중인 문서 데이터와 GridFS 리소스(이미지 등) | /home/thinkfree/mongodb/data |
| 저장된 세션·캐시 데이터 | /home/thinkfree/redis/data |
| 문제 확인에 사용할 실행 로그 | /home/thinkfree/weboffice/logs |
문서·데이터·로그 폴더를 연결해 실행하기
아래는 Trial 라이선스가 포함된 이미지를 사용하는 비상업적 평가용 Linux 실행 예제입니다. 포트 8080을 사용할 수 있는 서버에서 실행합니다.
먼저 현재 작업 폴더 아래에 문서·데이터베이스·캐시·로그 폴더를 만들고, 컨테이너의 실행 사용자(UID·GID 1000)가 쓸 수 있도록 소유권을 지정합니다.
mkdir -p office-data/documents office-data/mongodb office-data/redis office-data/logs
sudo chown -R 1000:1000 office-data
docker run --name thinkfree-office-persistent --stop-timeout 60 \
-p 8080:8070 \
-v "$PWD/office-data/documents:/home/thinkfree/docs" \
-v "$PWD/office-data/mongodb:/home/thinkfree/mongodb/data" \
-v "$PWD/office-data/redis:/home/thinkfree/redis/data" \
-v "$PWD/office-data/logs:/home/thinkfree/weboffice/logs" \
thinkfree/office-single-node-trial:latest
$PWD는 현재 작업 폴더입니다. Office에서 사용할 문서는 office-data/documents에 넣습니다.
이미지의 /home/thinkfree/docs 폴더에는 기본적으로 샘플 문서가 포함되어 있습니다. 이 경로에 호스트 폴더를 마운트하면 샘플 문서 대신 호스트 폴더에 저장되어 있는 문서를 열고 편집할 수 있습니다.
관리자 설정과 편집 데이터는 office-data/mongodb, 저장된 세션·캐시 데이터는 office-data/redis, 실행 로그는 office-data/logs에 보관됩니다. 문서 필터 로그는 office-data/logs/hncLog에서 확인합니다.
서버에서 Office 관리자 페이지를 열어 실행 상태와 설정을 확인합니다. 다른 컴퓨터에서 접속한다면 localhost를 서버 주소로 바꿉니다. Free Commercial 이미지를 사용할 때는 라이선스 파일을 연결하는 실행 옵션도 함께 지정합니다.
S3·WebDAV·HTTP Storage를 사용하는 경우에는 원본 문서를 보관하는 외부 저장소의 백업 정책도 별도로 수립해 관리해야 합니다.
컨테이너를 교체할 때는 기존 컨테이너를 정상 종료한 뒤 같은 서버 폴더를 연결합니다.
백업하고 복구 확인하기
폴더를 마운트하면 컨테이너 교체 시 데이터를 유지할 수 있지만, 파일 삭제나 서버 장애에 대비한 백업이 자동으로 생기지는 않습니다. 백업은 별도 위치에 보관하고, 운영 환경에 맞는 백업 정책을 별도로 수립해 운영해야 합니다.
- 새 문서 작업을 중단하고 편집 중인 문서를 저장한 뒤 Office를 정상 종료합니다.
- 문서 저장소, 데이터베이스와 캐시를 같은 시점 기준으로 백업합니다. 외부 저장소를 사용하는 경우 해당 저장소의 변경도 멈추거나 같은 시점의 스냅샷을 확보합니다.
- 별도 환경에 백업을 복원하고 관리자 설정과 어댑터 연결을 확인합니다.
- 복원한 문서를 열어 편집·저장·다시 열기까지 확인합니다.