Heroku에서 n8n 호스팅하기
n8n v2.29이 호스팅 가이드는 Heroku에서 n8n을 셀프 호스팅하는 방법을 보여줍니다. 이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요. Heroku에 n8n을 배포하는 가장 빠른 방법은 Deploy to Heroku 버튼을 사용하는 것입니다.
이 호스팅 가이드는 Heroku에서 n8n을 셀프 호스팅하는 방법을 보여줍니다. 다음을 사용합니다.
- Docker Compose를 사용해 애플리케이션 구성 요소를 생성 및 정의하고, 이들이 함께 작동하는 방식을 정의합니다.
- Heroku PostgreSQL 서비스를 사용해 n8n의 데이터 스토리지를 호스팅합니다.
- Deploy to Heroku 버튼을 통해 최소한의 구성으로 원클릭 배포를 제공합니다.
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.
배포 템플릿을 사용해 Heroku 프로젝트 만들기#
Heroku에 n8n을 배포하는 가장 빠른 방법은 Deploy to Heroku 버튼을 사용하는 것입니다.
이 버튼을 클릭하면 Heroku의 Create New App 페이지가 열립니다. 프로젝트 이름을 설정하고 프로젝트를 배포할 리전을 선택합니다.
환경 변수 구성#
Heroku는 app.json 파일의 env 섹션에 정의된 구성 옵션을 미리 채우며, 이는 n8n이 사용하는 환경 변수의 기본값도 함께 설정합니다.
필요에 따라 이 값들을 자유롭게 변경할 수 있습니다. 다음 값은 반드시 변경해야 합니다.
- N8N_ENCRYPTION_KEY: n8n이 데이터베이스에 저장하기 전에 사용자 계정 정보를 암호화하는 데 사용합니다.
- WEBHOOK_URL: 웹훅이 올바른 URL을 갖도록 생성하는 애플리케이션 이름과 일치해야 합니다.
n8n 배포#
Deploy app을 선택합니다.
Heroku가 애플리케이션을 빌드하고 배포한 후, 애플리케이션을 Manage App하거나 View할 수 있는 링크를 제공합니다.
배포 템플릿 변경하기#
리포지터리를 포크한 다음 해당 포크에서 배포함으로써 배포 템플릿을 변경할 수 있습니다.
Dockerfile#
기본적으로 Dockerfile은 최신 n8n 이미지를 가져옵니다. 다른 버전이나 고정된 버전을 사용하려면 Dockerfile 최상단 줄의 이미지 태그를 업데이트하세요.
Heroku와 포트 노출#
Heroku는 Docker 기반 애플리케이션이 EXPOSE 명령으로 노출 포트를 정의하는 것을 허용하지 않습니다. 대신 Heroku는 애플리케이션 런타임에 동적으로 값을 채우는 PORT 환경 변수를 제공합니다. entrypoint.sh 파일은 기본 Docker 이미지 명령을 오버라이드하여 Heroku가 제공하는 포트 변수를 대신 설정합니다. 그러면 웹 브라우저에서 80번 포트로 n8n에 접속할 수 있습니다.
Heroku 구성하기#
heroku.yml 파일은 Heroku에 만들고자 하는 애플리케이션을 정의합니다. 다음 두 섹션으로 구성됩니다.
setup>addons는 사용할 Heroku 애드온을 정의합니다. 이 경우 PostgreSQL 데이터베이스 애드온입니다.build섹션은 Heroku가 애플리케이션을 빌드하는 방법을 정의합니다. 이 경우 Docker 빌드팩을 사용하여 제공된Dockerfile을 기반으로web서비스를 빌드합니다.
다음 단계#
이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.