12분 만에 Coolify 백업 및 복구하는 방법
오늘 당신의 서버는 안전해 보입니다. Coolify를 설정하는 데 수 시간을 보냈습니다. 자신만의 앱, 데이터베이스, 블로그를 호스팅하고 있습니다. 모든 것을 완벽하게 제어하고 있다는 느낌이 듭니다.
그러다 재난이 닥칩니다. VPS 제공업체가 해당 리전을 폐쇄합니다. 잘못된 명령어를 실행합니다. 서버가 죽어버립니다.
백업이 없다면 모든 것을 잃게 됩니다. 이 가이드는 그런 상황을 방지해 줍니다. 12분 만에 자동 백업을 설정하고 전체 복구를 완료할 수 있습니다.
1단계: S3 스토리지 설정
Coolify에는 백업을 저장할 공간이 필요합니다. S3 호환 스토리지를 사용하세요. Cloudflare R2는 데이터 전송(egress) 비용이 무료이므로 아주 좋은 선택입니다.
스토리지 제공업체로부터 다음 정보가 필요합니다:
- Endpoint
- Region
- Access Key
- Secret Key
- Bucket Name
Coolify에서 S3 Storage 탭으로 이동합니다. 정보를 입력하고 Validate Connection을 클릭합니다.
2단계: 자동 백업 활성화
Settings로 이동한 다음 Backup을 선택합니다.
- S3 Backup을 켭니다.
- Backup을 켭니다.
- S3 스토리지 소스를 선택합니다.
- 빈도(frequency)를 Daily로 설정합니다.
즉시 수동 백업을 한 번 실행합니다. S3 버킷을 확인하여 파일이 존재하는지 확인하세요.
3단계: APP_KEY 저장하기
이것이 가장 중요한 단계입니다. Coolify는 데이터를 암호화합니다. 이 키를 잃어버리면 백업은 무용지물이 됩니다.
서버에 SSH로 접속하여 다음 명령어를 실행합니다:
cat /data/coolify/source/.env
APP_KEY로 시작하는 줄을 찾습니다. 이 값을 복사합니다. 비밀번호 관리자에 저장하세요. 이 단계를 절대 건너뛰지 마세요.
4단계: 새 서버로 복구하기
서버가 다운되면 새 VPS에서 다음 단계를 따르세요:
- 표준 curl 명령어를 사용하여 Coolify를 설치합니다.
- S3 버킷에서 .pgdump 파일을 새 서버로 다운로드합니다.
- 복구 명령어를 실행합니다:
sudo docker exec -i coolify-db pg_restore --username coolify --verbose --dbname coolify < /path/to/your-backup.pgdump
기존 테이블에 대한 경고가 나타날 수 있습니다. 무시해도 됩니다. 정상적으로 작동합니다.
5단계: 500 에러 해결하기
복구 후 앱을 클릭할 때 500 에러가 발생할 수 있습니다. 이는 새 서버의 APP_KEY가 다르기 때문에 발생합니다.
해결 방법:
- 새 .env 파일을 엽니다:
nano /data/coolify/source/.env - 다음 줄을 추가합니다:
APP_PREVIOUS_KEYS=base64:your-old-app-key - 저장한 후 설치 스크립트를 사용하여 Coolify를 재시작합니다.
이제 이전 데이터를 다시 읽을 수 있습니다.
요약 체크리스트:
- S3 스토리지 설정.
- 일일 백업 활성화.
- APP_KEY 안전하게 저장.
- 수동 백업 테스트.
셀프 호스팅은 제어권을 제공합니다. 백업은 마음의 평안을 제공합니다.
금요일 밤 서버가 다운되기 전, 12분 만에 Coolify를 백업하고 복구하는 방법
우리 모두 그런 경험이 있습니다. 금요일 밤, 이제 막 휴식을 취하려는데 갑자기 서버가 다운됩니다. 만약 Coolify를 사용 중이라면, 모든 설정, 데이터베이스, 애플리케이션을 잃게 될까 봐 패닉에 빠질 수도 있습니다.
당황하지 마세요. 이 가이드에서는 단 12분 만에 Coolify 인스턴스를 백업하고 복구하는 방법을 알려드리겠습니다.
왜 Coolify를 백업해야 하나요?
Coolify는 모든 설정, 데이터베이스 자격 증명, 애플리케이션 설정을 포함한 모든 데이터를 Docker 볼륨에 저장합니다. 서버에 문제가 생기거나 새로운 서버로 이전하려는 경우, 이 데이터를 안전하게 옮길 방법이 반드시 필요합니다.
1단계: Coolify 데이터 식별하기
Coolify의 데이터는 주로 /data/coolify 디렉토리에 위치합니다. 이 디렉토리에는 인스턴스를 복구하는 데 필요한 모든 필수 파일이 포함되어 있습니다.
2단계: 백업 생성하기
Coolify를 백업하는 가장 쉬운 방법은 /data/coolify 디렉토리를 압축 아카이브로 만드는 것입니다. 서버의 터미널에서 다음 명령어를 실행하세요.
sudo tar -czvf coolify-backup.tar.gz /data/coolify
이 명령어는 /data/coolify 디렉토리의 모든 내용을 coolify-backup.tar.gz라는 이름의 압축 파일로 만듭니다.
3단계: 백업 파일을 안전한 위치로 전송하기
백업 파일이 생성되었다면, 이를 서버 외부의 안전한 위치(다른 서버, 클라우드 스토리지 등)로 이동시켜야 합니다. scp를 사용하여 다른 서버로 전송할 수 있습니다.
scp coolify-backup.tar.gz user@remote-server:/path/to/destination
user@remote-server와 /path/to/destination 부분을 실제 사용자 이름, 서버 주소 및 대상 경로로 변경하세요.
4단계: 새 서버에 Coolify 복구하기
새로운 서버에 Coolify를 복구하는 과정은 다음과 같습니다.
- 새 서버에 Coolify 설치: 먼저 새 서버에 Coolify를 설치합니다.
- 백업 파일 전송: 백업 파일을 새 서버로 가져옵니다.
- 기존 데이터 삭제 (필요한 경우): 새 서버에 설치된 기본
/data/coolify디렉토리가 비어 있지 않다면 주의가 필요합니다. - 압축 해제: 다음 명령어를 사용하여 백업을 복구합니다.
sudo tar -xzvf coolify-backup.tar.gz -C /
-C / 옵션은 압축을 루트 디렉토리부터 해제하여 원래의 /data/coolify 경로에 파일들이 정확히 위치하도록 합니다.
- Coolify 재시작: 복구가 완료되면 Coolify 서비스를 재시작합니다.
sudo docker restart coolify
결론
끝입니다! 이제 Coolify 인스턴스를 성공적으로 백업하고 복구했습니다. 이제 안심하고 금요일 밤을 즐기세요.
주의: 백업을 수행하기 전에 항상 중요한 데이터가 제대로 압축되었는지 확인하는 습관을 들이는 것이 좋습니다. 정기적인 백업은 서버 운영의 핵심입니다.