Docker Compose 환경에서 Ghost 블로그를 정기 백업하는 스크립트
컨테이너 운영 관점에서 Docker Compose 환경에서 Ghost 블로그를 정기 백업하는 스크립트의 목적, 적용 범위, 실행 전 확인할 항목을 정리한 기술 노트입니다.
핵심 요약
- 컨테이너 운영 기준으로 글의 목적과 적용 범위를 먼저 확인할 수 있게 정리했습니다.
- 원문의 명령어, 로그, 절차는 보존하고 운영자가 먼저 봐야 할 맥락을 앞쪽에 배치했습니다.
- 실행형 명령은 대상 환경, 권한, 백업 또는 롤백 경로를 확인한 뒤 적용하는 것을 전제로 합니다.
적용 범위
이 글은 컨테이너 운영 업무에서 Docker Compose 환경에서 Ghost 블로그를 정기 백업하는 스크립트를 빠르게 검토하기 위한 운영 노트입니다. 실습이나 변경 작업은 각자의 랩/운영 환경 기준으로 값과 절차를 재확인한 뒤 진행합니다.
정리된 본문
Docker Compose 환경에서 Ghost 블로그를 정기 백업하는 스크립트를 작성하는 방법에 대해서는 다음과 같습니다.
- 스크립트 작성
- Ghost 블로그 컨테이너가 실행 중인 Docker Compose 환경에서, 다음과 같은 내용을 가진 스크립트를 작성합니다.
#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR=/path/to/backup/directory
COMPOSE_PROJECT_NAME=your_project_name
docker exec ${COMPOSE_PROJECT_NAME}_ghost_1 bash -c "cd /var/lib/ghost && ghost export" > ${BACKUP_DIR}/ghost_${DATE}.json
- 스크립트에서는 Ghost 블로그 컨테이너 내부에서
ghost export명령어를 실행하여 백업 파일을 생성합니다. 이때,docker exec명령어를 사용하여 컨테이너 내부로 진입합니다. BACKUP_DIR변수에는 백업 파일을 저장할 디렉토리 경로를 지정합니다.COMPOSE_PROJECT_NAME변수에는 Docker Compose 프로젝트 이름을 지정합니다. 이때, 프로젝트 이름은docker-compose.yml파일에 정의된services항목의 이름과 일치해야 합니다.
- 스크립트 실행 권한 부여
- 스크립트 파일에 실행 권한을 부여합니다.
chmod +x /path/to/backup/script.sh
- 스크립트 실행 스케줄링
- 스크립트를 주기적으로 실행하기 위해서는 cron 등의 스케줄링 도구를 사용합니다.
- 예를 들어, 매일 새벽 3시에 백업 스크립트를 실행하도록 스케줄링하려면, 다음과 같이 cron 설정을 추가합니다.
0 3 * * * /path/to/backup/script.sh
위와 같은 방법을 사용하여 스크립트를 작성하고 실행 스케줄링을 설정하면, Ghost 블로그를 정기 백업할 수 있습니다.
운영 체크리스트
- 대상 OS, 버전, 네트워크 구간, 권한 범위가 현재 환경과 일치하는지 확인합니다.
- 운영 장비에서 실행하기 전 테스트 환경 또는 읽기 전용 명령으로 먼저 검증합니다.
- 설정 변경, 패키지 설치, 서비스 재시작이 포함되면 백업과 롤백 절차를 준비합니다.
실무 지원이 필요하다면
이 글의 내용을 실제 환경에 맞게 검증하거나 운영 절차로 정리해야 한다면, Docker/Docker Compose 구성 검토와 배포 절차 정리를 1회성 기술 리뷰 또는 짧은 운영 개선 스프린트로 도와드릴 수 있습니다.
- 대상 환경과 현재 증상을 기준으로 실행 전 체크리스트를 정리합니다.
- 명령어, 로그, 설정 변경이 필요한 경우 안전한 검증 순서와 롤백 포인트를 분리합니다.
- Docker Compose 환경에서 Ghost 블로그를 정기 백업하는 스크립트와 연결된 작업을 보고서, Runbook, 자동화 초안 형태로 정리합니다.