Heroku와 작별: Linode에서 $5로 내 자체 PaaS를 만든 방법
Source: Dev.to
Overview
우리는 Vercel, Netlify, Heroku와 같은 플랫폼이 제공하는 “git push to deploy” 마법을 모두 좋아합니다. 하지만 취미 프로젝트가 규모가 커지거나 백엔드 데이터베이스가 필요해지면 가격대가 금세 무서워질 수 있습니다. 저는 최근에 통제권을 되찾기로 했습니다: 원시 VPS의 가격표 없이 PaaS의 개발자 경험을 갖는 것이죠.
그 해결책은 Linode(하드웨어)와 Coolify(마법)라는 최고의 조합입니다. Linode는 신뢰성이 높고, 간단하며, Linux 중심입니다. 표준 “Shared CPU” Nanode는 $5/월부터 시작하는데, 이는 몇 개의 컨테이너화된 앱과 작은 데이터베이스를 운영하기에 충분합니다.
Coolify는 오픈소스이며 자체 호스팅 가능한 Heroku 대안입니다. 아름다운 대시보드를 제공해 애플리케이션, 데이터베이스, 서비스들을 관리하며 다음을 자동으로 처리합니다:
- 역방향 프록시(Traefik) 자동 설정
- SSL 인증서(Let’s Encrypt) 자동 발급
- 데이터베이스(Postgres, Redis, MySQL) 원클릭 생성
- GitHub/GitLab에서 배포
- 선택 가능한 자체 호스팅 Gitea
The Setup Process
Step 1: Spin up the Server
- Image: Ubuntu 24.04 LTS (항상 LTS를 선택).
- Region: 사용자와 가장 가까운 위치 선택.
- Plan: Nanode 1 GB(또는 무거운 앱을 호스팅할 경우 더 높은 플랜).
Step 2: DNS Configuration
새 Linode IP 주소를 가리키는 DNS A 레코드(예: paas.yourdomain.com)를 생성합니다. 이것이 Coolify 인스턴스의 대시보드가 될 것입니다.
Step 3: Secure the Server
새 Linode 인스턴스에 SSH 접속(생성 시 SSH 키를 추가해 비밀번호 없이 로그인):
ssh root@
패키지 저장소를 업데이트합니다:
apt update && apt upgrade -y
필요한 포트만 허용하도록 방화벽(UFW)을 설정합니다:
ufw allow 22/tcp # SSH
ufw allow 80/tcp # HTTP
ufw allow 443/tcp # HTTPS
ufw allow 8000/tcp # Coolify 대시보드(나중에 닫을 수 있음)
ufw allow 6001/tcp # 선택 사항: 실시간 서비스 기능
ufw enable
프롬프트가 나오면 y를 누릅니다.
Step 4: Install Coolify
Coolify는 새 서버에서 가장 잘 동작합니다; 포트 80에서 다른 웹 서버(Nginx/Apache)가 실행되고 있지 않은지 확인하세요.
공식 설치 스크립트를 실행합니다:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
스크립트가 하는 일
- Docker Engine을 설치(없을 경우).
/data/coolify에 데이터 디렉터리를 생성.- Coolify의 데이터베이스와 API에 필요한 Docker 이미지를 가져옴.
- 재부팅 시에도 PaaS가 살아있도록 재시작 정책을 설정.
설치는 보통 2–5 분 정도 걸리며, Linode 플랜에 따라 달라집니다.
Step 5: Verify Installation
컨테이너가 실행 중인지 확인합니다:
docker ps
coolify, coolify-db, coolify-proxy가 목록에 표시되어야 합니다.
Step 6: The Dashboard
http://<IP>:8000(또는 설정한 DNS 이름)으로 접속해 Coolify 대시보드에 들어갑니다.
- 리포지토리 선택(GitHub, GitLab 등).
- 빌드 팩 선택(Node, Docker, Rust, Go, …).
- Deploy 클릭.
Coolify가 코드를 가져오고, 컨테이너를 빌드하며, 내부 네트워킹을 설정하고, SSL 인증서를 생성한 뒤, 앱을 인터넷에 노출합니다.
Pros & Cons
| Pros | Cons |
|---|---|
| Linode의 고정 월 비용(대역폭 급증과 무관) | 시스템 관리자가 되므로 다운타임은 직접 책임 |
| 데이터 소유권 및 프라이버시 완전 보장 | 초기 설정에 15–30 분 소요(관리형 서비스는 몇 초) |
| 빌드 시간이나 대역폭 제한이 없으며 VPS 자원만큼 사용 가능 | 지속적인 유지보수(업데이트, 보안 패치) 필요 |
자신만의 PaaS를 구축하는 것이 과도하게 느껴질 수 있지만, Coolify 같은 도구가 진입 장벽을 크게 낮춰 주었습니다. 커피값 정도면 강력하고, 프라이빗하며, 전문적인 배포 환경을 얻을 수 있습니다.
여분의 도메인과 $5가 있다면 한번 시도해 보세요—다시 관리형 호스팅으로 돌아가지 않을지도 모릅니다.