Nitroship 소개

나이트로쉽이 앱을 배포하는 방식과 꼭 알아야 할 개념을 한 페이지로 정리했습니다.

나이트로쉽은 웹 앱을 올리면 빌드부터 서빙까지 맡아 주는 배포 플랫폼입니다. 프로젝트 폴더에서 ntro deploy 한 번이면 소스가 나이트로쉽의 원격 빌더(클라우드에서 빌드를 대신 돌려 주는 서버)로 올라가고, 빌드가 끝나면 바로 https://<앱 이름>.ntro.run 주소로 열립니다.

시작하기

CLI 설치

curl -fsSL https://nitroship.co/install.sh | bash
ntro login

이미 설치했다면 다음 단계로 넘어가세요. 설치 옵션, PATH 설정 및 업데이트는 CLI 설치에서 확인하세요.

설치했다면 첫 배포를 따라 첫 사이트를 올려 보세요.

먼저 알아 둘 개념 4가지

개념한 줄 설명
앱(App)배포할 프로젝트 하나입니다. 앱 이름(슬러그)이 주소가 됩니다. 예: hello-site → hello-site.ntro.run
팀(Team)앱을 소유하는 단위입니다. 권한과 요금도 팀 기준으로 관리합니다. 가입하면 시작 팀이 하나 만들어집니다.
배포(Deployment)특정 시점의 빌드 결과물입니다. 한 번 만들어지면 바뀌지 않습니다. 코드를 고치면 새 배포를 만듭니다.
프로덕션 / 프리뷰프로덕션은 실제 서비스 주소에 걸린 배포, 프리뷰는 확인용 배포입니다. 첫 배포는 프로덕션이 되고, 이후 배포는 기본적으로 프리뷰가 됩니다.

배포가 바뀌지 않기 때문에 되돌리기가 쉽습니다. 프리뷰를 확인한 뒤 프로덕션으로 승격하거나, 문제가 생기면 예전 배포로 롤백하면 됩니다. 자세한 흐름은 배포 관리에서 설명합니다.

빌드 방식 선택

원격 빌더는 프로젝트 루트를 아래 순서로 확인합니다. build.framework를 지정하면 프리셋을 직접 선택할 수 있습니다. 이 설정은 Dockerfile 자동 선택보다 우선하며 build.dockerfile과 함께 사용할 수 없습니다.

순서방식이렇게 판단합니다배포 결과
1Dockerfile 컨테이너build.dockerfile 설정 또는 Dockerfile.nitroship / Dockerfile 존재컨테이너의 HTTP 서버와 선택적으로 CDN에서 서빙하는 정적 자산
2관리형 Next.jspackage.json에 next 16.2 이상정적 페이지, SSR, ISR, API 라우트, 미들웨어, 이미지 최적화
3관리형 프레임워크 프리셋의존성이나 소스 파일로 지원 프레임워크 식별사용자 Dockerfile 없이 앱을 빌드하고 패키징
4일반 정적 파일루트 index.html, 빌드 후 dist·build·out 폴더 또는 build.outputDirectoryHTML·JS·CSS·이미지 서빙과 리디렉트·헤더 설정

프레임워크 프리셋의 출력 형태는 네 가지입니다.

  • 정적: 빌드 파일만 CDN에서 서빙하며 앱 서버는 실행하지 않습니다.
  • Node 서버: 관리형 Node.js 서버 번들을 만들고 공개 자산은 CDN에서 서빙합니다.
  • 컨테이너: 프레임워크 언어에 맞는 Dockerfile을 생성해 서버 이미지를 실행하고 추출한 공개 자산은 CDN에서 서빙합니다.
  • 컨테이너로 빌드한 정적 사이트: 컨테이너 툴체인으로 정적 파일을 생성한 뒤 파일만 서빙합니다. 요청을 처리하는 컨테이너는 실행하지 않습니다.

서버는 0.0.0.0:$PORT(기본 3000)에서 수신합니다. 생성된 Go/Rust 이미지에는 기본값이 3000인 PORT가 주입되지만, 앱은 직접 이를 읽어 0.0.0.0:$PORT에 바인딩해야 하며 프리셋은 하드코딩된 바인딩 주소를 바꿀 수 없습니다. ntro deploy --local은 정적·Node 서버 프리셋을 지원하며, 컨테이너 빌드가 필요한 프리셋은 기본 원격 빌드를 사용해야 합니다.

어떤 프레임워크를 쓰나요?

어떻게 배포하나요?

이 페이지에서