버셀·깃허브·넷리파이 등 배포 서비스 중 뭐가 좋을까
제작한 프로그램을 배포할 때 깃허브나 버셀 말고 URL이 예쁘고 쓰기 편한 다른 서비스가 있는지 물었다. 이어서 넥스트JS로 만든 프로그램을 깃허브에 올리고 버셀에 연동해 링크를 뽑는 방식과, 그냥 깃허브에 올려 링크를 만드는 방식이 URL 형태 말고 어떤 차이가 있는지도 궁금해했다.
선생님들의 답 6개
넷리파이도 괜찮고, 보안 걱정이 없는 가벼운 앱이라면 CLI로만 쓰는 surge 서비스도 있다고 안내했다. 다만 surge는 기본적으로 https를 지원해도 주소의 s를 지우고 http로 접속을 시도해도 그대로 들어가지기 때문에 보안이 걱정되면 쓰지 말라고 덧붙였다. github.io는 브라우저 보안 헤더를 강제할 수 없고 레포지토리가 강제로 public 공개되며 스토리지를 공유하게 된다는 이유로 쓰지 않는다고 밝혔다.
나만의 도메인을 연결하는 방법을 정리해 공유했다. 가비아·후이즈 같은 업체에서 원하는 도메인을 연간 1만원에서 2만원 내외로 구매한 뒤, 버셀이나 넷리파이 같은 배포 플랫폼의 도메인 설정 메뉴에 추가하고 DNS의 A 레코드나 CNAME을 연결하면 된다고 설명했다.
깃허브 배포는 레포를 public으로 공개해야 하는데, 바이브코딩 하는 사람들이 gitignore 관리를 잘 못하는 경우가 많아 소스코드가 그대로 드러날 위험이 있다며 무조건 버셀을 쓰라고 권했다. 학생 개인정보가 들어가는 앱은 무조건 버셀을 써야 한다고 강조했고, 개인정보가 들어간 앱이 깃허브 링크로 배포되면 학운위 심의를 통과하지 못하게 해야겠다는 아이디어도 냈다. 정리하면 소스코드를 공개해도 되는 앱은 깃허브로 빠르게, 동시접속이 많지 않은 가벼운 앱은 넷리파이로, 장기적으로 안정적으로 굴러가야 하는 앱은 버셀로 배포하면 된다고 요약했다.
버셀은 API 키 같은 것을 환경변수로 숨길 수 있어서 깃허브에는 private로 올리고 버셀로 배포하는 방식을 늘 쓴다고 밝혔다. 클라우드플레어도 써본 적이 있다고 덧붙였다.
깃허브는 공개해도 되는 웹에만 쓰고, 넷리파이는 월 호출량 한도가 있어서 무료 상태로 많은 사람이 접속해 쓰면 호출량이 리셋될 때까지 결제하지 않으면 배포한 사이트가 잠긴다고 알렸다. 버셀은 아직 호출량 문제를 겪은 적이 없고 깃허브 연동 배포가 제일 빠르게 반영됐다고 했다. onrender도 배포는 간단하지만 15분 동안 트래픽이 없으면 자동으로 절전모드가 되어 다시 접속하려면 1~2분 정도 깨워야 하고 새로 배포하면 업데이트 반영도 느려서, 결국 최종적으로는 버셀에 정착했다고 전했다. 깃허브에서 비공개로 배포하려면 유료 결제가 필요하다는 점도 확인해줬다.