n8n self hosting 설치

n8n

나는 서버 머신이 있기 때문에 n8n을 셀프 호스팅으로 설치하려 한다.

Nginx Proxy Manager와 Portainer를 사용하는 환경이기 때문에 내 환경에 맞추어 설치를 하였다.

Docker Compose 내용으로 새로운 Stack 추가하기


Docker Compose | n8n Docs에서 도커 컴포즈 내용을 참고하여 수정을 하였다.

services: 
  n8n:
    image: docker.n8n.io/n8nio/n8n 
    restart: always 
    ports: 
      - "5678:5678"
    environment: 
      - N8N_HOST=Domain
      - N8N_PORT=5678 
      - N8N_PROTOCOL=https
      - NODE_ENV=production 
      - WEBHOOK_URL=https://Domain/ 
      - GENERIC_TIMEZONE=Asia/Seoul
    volumes: 
      - n8n_data:/home/node/.n8n 
      - ./local-files:/files

volumes: 
  n8n_data:
Bash

원문에 비해 많이 간결하다.

우선 나는 Nginx Proxy Manager를 이용하기 때문에 SSL인증을 위해 traefik관련 내용을 모두 제거했다.

그리고 Portainer를 사용하기 때문에 굳이 .env파일을 만들어 환경 변수들을 지정하지 않고 그냥 값들을 직접적으로 넣어주었다.

Domain은 내가 사용할 도메인을 넣어주었다.

설치


설치는 매우 간단한다. 그냥 위와 같이 스택을 추가하고 Deploy the stack을 클릭하면 끝이다.

리버스 프록시 설정


5678 포트에 대해 리버스 프록시를 추가하고 접속을 해봤는데 접속이 안된다.

머신에 원격 접속을 해서 localhost:5678로 접속을 하니까 접속이 된다.

이유가 뭘까 곰곰히 생각해보다가 5678포트에 대해 방화벽 처리를 하지 않았다는게 생각이 났다.

sudo ufw allow 5678명령어를 통해 방화벽을 허용해주고 다시 도메인으로 접속을 시도하니 접속이 잘 된다.

신규 계정을 생성하고, Free 라이센스를 등록하고 그런걸 거치고 나서 워크플로우를 만들어볼 수 있다.

딱히 뭘 자동화할 수 있을까…
회사 업무 용도가 아니라 개인 용도라 아직 마땅히 떠오르는건 없지만 만져보다 보면 그래도 하나씩 뭔가 나오지 않을까 싶다.

개인적으로 적당한 수준의 자동화같은건 파이썬으로 대충 만들어서 쓰긴 했지만…
LLM을 접목하는 자동화는 또 다른 얘기니까 일단 만지다보면 뭔가 나오겠지.

0 답글

댓글을 남겨주세요

Want to join the discussion?
Feel free to contribute!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다