01핵심 개요
| 항목 | 내용 |
|---|
| 도구 | Coolify(오픈소스 셀프호스팅 PaaS) |
| 권장 구조 | Coolify 전용 서버 + DB 서버 + 앱 서버 분리 |
| 호스팅 | Hostinger 공식 Coolify VPS(자동 설치) |
| 연결 방식 | SSH 키 기반 원격 서버 등록 |
| 시연 배포 | DB 서버에 Supabase 원클릭 셀프호스팅 |
02왜 멀티 서버인가
- 단일 서버에 Coolify·DB·앱 전부 = 위험(단일 장애점)
- 권장: 서버별 단일 책임 — Coolify 전용 / DB 전용 / 앱 전용 / 외부 API 전용
- 이점: 관리 용이성 + 확장성(scalability) — Coolify 공식 권장 방식
03Coolify 설치 — 두 경로
- 직접 설치: coolify.io의 self-hosted 명령어 한 줄을 VPS 터미널에 붙여넣기
- Hostinger Coolify VPS: 구매 시 Coolify 자동 설치 — 수동 설정 불필요
- 플랜: KVM2(Coolify용) / KVM8(앱·DB용) 등 용도별 선택, 쿠폰으로 10% 할인
04원격 서버 추가 — SSH 키 흐름
- 서버 타입에서 "This machine" 대신 "Remote server" 선택
- SSH 인증: "Generate a new key" → 공개키 복사 보관
- 새 서버 정보 입력: 이름(예: DB server)·IP·포트·사용자명
- 두 번째 VPS의 Settings → SSH keys에 공개키 추가 → 첫 VPS가 인증 가능
- HPanel에 SSH 키 추가 옵션 없으면 터미널에서 파일 직접 편집
05연결 검증
- "Validate connection" → SSH 테스트·OS 호환성·Docker 엔진 설치·네트워크 구성 자동 수행
- 검증 에러 시 VPS 재부팅 후 키 재생성 → 재시도 → "success, server validated"
- 서버 추가 후 servers 메뉴에서 IP·키 입력으로 N대까지 확장 가능
06앱 배포 — Supabase 셀프호스팅
- Projects → Add → 프로젝트 생성 → Add resource → Supabase 선택
- 배포 대상 서버로 DB 서버 지정 → Deploy(메인 서버 Coolify가 원격 DB 서버에 배포)
- 중요: 서버 Settings → Proxy → traffic proxy ON이어야 대시보드 접근 가능
- 완료 후 자동 발급된 username·password로 셀프호스팅 Supabase 로그인
07커스텀 도메인 연결
- Coolify 서버의 wildcard domain에 도메인 입력(예: coolify.example.com)
- DNS에 A 레코드 추가(프록시 OFF) + 서버 IP 지정 → DNS 전파 대기
- 설정의 configuration에서 도메인명 갱신 → 커스텀 도메인으로 Coolify 접속
- IP 노출 없이 깔끔한 도메인 기반 운영 완성
08용어 사전
| 용어 | 한줄 설명 | 비유/예시 |
|---|
| Coolify | 앱·DB를 셀프호스팅·배포하는 오픈소스 PaaS | 직접 굴리는 Heroku/Vercel |
| 멀티 서버 | 역할별로 서버를 분리해 운영하는 구조 | 주방·홀·창고를 따로 둔 식당 |
| VPS | 가상 사설 서버 | 통째로 빌린 가상 컴퓨터 한 대 |
| SSH 키 | 서버 간 비밀번호 없이 인증하는 암호 키쌍 | 도어록의 등록된 지문 |
| Supabase | 오픈소스 백엔드(DB·인증) 플랫폼 | 셀프호스팅 가능한 Firebase |
| 프록시(traffic proxy) | 외부 트래픽을 내부 앱으로 전달하는 중계 | 건물 안내데스크 |
| A 레코드 | 도메인을 IP에 연결하는 DNS 설정 | 이름표를 실제 집주소에 매핑 |