▶n8n이란
n8n은 오픈소스 워크플로우 도구이다.
다양한 애플리케이션 및 시스템을 이용하는 워크플로우를 만들어 업무를 자동화하는데 사용할 수 있다.
▶n8n 로컬PC를 이용한 셀프 호스팅 방법 파악
개략적인 방법은 phind.com 을 참조한다.
1. node.js 에서 npm패키지 관리자를 통해 n8n을 설치한다.
2. n8n을 start하면 localhost:5678, 5678포트로 프로세스 접근이 가능하다.
3. background프로세스로 사용하려면 pm2가 필요하다.
4. https를 적용하려면 nginx 리버스 프록시 세팅이 필요하다.
5. n8n 인증을 하려면 OAuth2 또는 JWT(Json Web Tocken)이 필요하다.
▶nodeJS npm을 이용한 n8n 설치
npm 또는 Docker 사용 플랫폼에 n8n을 설치한다.
▼n8n 셀프 호스팅을 위한 요구 지식
-서버와 컨테이너 설치 및 설정
-애플리캐이션 자원 관리 및 스케일링
-서버 및 애플리케이션 보안
-n8n 설정
▶npm
npm은 n8n을 나의 로컬PC에서 시작하는 빠른 방법. Node.js 설치가 필요하다.
Node는 자바스크립트 런타임(실행환경) , 브라우저가 아닌 곳에서 자바스크립트를 실행시켜준다.
설치 후 cmd에서 "node" 라고 입력 후 javascript 코드를 작성하여 테스트해볼 수 있다.
VS코드에서 JS파일을 만들고 VS 터미널에서 실행하여 사용하면 될 것 같다.
▷npx를 이용해 설치없이 n8n을 이용하는 것도 가능하다. npx는 npm(Node Package Module)의 도구.
▷npm을 통한 전역설치
n8n폴더로 CD한 후에 start n8n을 하라는 의미
▶n8n PM2 설치
pm2는 ProcessManager2 nodeJS 프로세스를 관리하는 패키지
nodeJS용 데몬 프로세스 관리자.
pm2 monit
▶n8n 설정
환경변수를 사용하여 n8n 설정을 변경할 수 있다.
CLI를 이용한 환경변수 세팅
파일을 이용한 환경변수 세팅
.n8n 경로에 컨피그파일(my-config.json)과 환경변수 세팅 및 n8n 실행 스크립트(my-start-config.bat)을 생성하고 내용을 다음과 같이 저장한다.
my-config.json
{
"executions": {
"process": "main",
"saveDataOnSuccess": "none"
},
"generic": {
"timezone": "Asia/Seoul"
},
"security": {
"basicAuth": {
"active": true,
"user": "mbk1991",
"password": "some-secure-password"
}
},
"nodes": {
"exclude": "[\"n8n-nodes-base.executeCommand\",\"n8n-nodes-base.writeBinaryFile\"]"
}
}
my-start-config.bat
SET N8N_CONFIG_FILES=C:\Users\user\.n8n\my-config.json
SET NODE_FUNCTION_ALLOW_BUILTIN=*
SET NODE_FUNCTION_ALLOW_EXTERNAL=*
SET EXECUTIONS_TIMEOUT=900
SET EXECUTIONS_TIMEOUT_MAX=900
SET N8N_LOG_LEVEL=info
SET N8N_LOG_OUTPUT=file
SET N8N_LOG_FILE_LOCATION=C:\Users\user\.n8n\AutoCheck\n8n.log
C:\Users\user\AppData\Roaming\npm\n8n
환경변수 참조
ㄴ. 로컬 로그인이 안됨. (원인 파악 중)
'개발 > 개발관련' 카테고리의 다른 글
[개발관련] H2 Database 설치 및 실행 (0) | 2023.05.19 |
---|---|
[개발관련] 이클립스 실행오류 SWTException, 이클립스 재설치 (0) | 2023.05.19 |
[개발관련] 크롬(Chrome) 개발자 도구 단축키 (0) | 2023.05.09 |
[개발관련] 톰캣 bin디렉토리, startup.sh, shutdown.sh, exec, phind (0) | 2023.05.02 |
[개발관련] AI를 활용하자 chatGPT, phind (0) | 2023.04.15 |