InfoGrab DocsInfoGrab Docs

프라이빗 노드 설치

요약

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 n8n 인스턴스에 설치할 수 있습니다. 이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요. Docker로 n8n을 실행하는 경우, 노드가 설치된 n8n으로 Docker 이미지를 새로 만들어야 합니다.

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 n8n 인스턴스에 설치할 수 있습니다. 이 방법은 회사 내부에서만 사용할 목적으로 만든 노드에 유용합니다.

참고

이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.

Docker n8n 인스턴스에 노드 설치하기#

Docker로 n8n을 실행하는 경우, 노드가 설치된 n8n으로 Docker 이미지를 새로 만들어야 합니다.

  1. Dockerfile을 생성하고 이 Dockerfile의 코드를 붙여넣으세요.

    Dockerfile은 다음과 같은 형태여야 합니다.

    FROM node:16-alpine
    
    ARG N8N_VERSION
    
    RUN if [ -z "$N8N_VERSION" ] ; then echo "The N8N_VERSION argument is missing!" ; exit 1; fi
    
    # Update everything and install needed dependencies
    RUN apk add --update graphicsmagick tzdata git tini su-exec
    
    # Set a custom user to not have n8n run as root
    USER root
    
    # Install n8n and the packages it needs to build it correctly.
    RUN apk --update add --virtual build-dependencies python3 build-base ca-certificates && \
    	npm config set python "$(which python3)" && \
    	npm_config_user=root npm install -g full-icu n8n@${N8N_VERSION} && \
    	apk del build-dependencies \
    	&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root;
    
    # Install fonts
    RUN apk --no-cache add --virtual fonts msttcorefonts-installer fontconfig && \
    	update-ms-fonts && \
    	fc-cache -f && \
    	apk del fonts && \
    	find  /usr/share/fonts/truetype/msttcorefonts/ -type l -exec unlink {} \; \
    	&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root
    
    ENV NODE_ICU_DATA /usr/local/lib/node_modules/full-icu
    
    WORKDIR /data
    
    COPY docker-entrypoint.sh /docker-entrypoint.sh
    ENTRYPOINT ["tini", "--", "/docker-entrypoint.sh"]
    
    EXPOSE 5678/tcp
    
  2. 커스텀 노드 코드를 컴파일합니다(nodes starter를 사용하는 경우 npm run build). dist 폴더 안의 node 폴더와 credential 폴더를 컨테이너의 ~/.n8n/custom/ 디렉터리로 복사하세요. 이렇게 하면 Docker에서 해당 폴더를 사용할 수 있습니다.

  3. docker-entrypoint.sh 파일을 다운로드하여 Dockerfile과 같은 디렉터리에 두세요.

  4. Docker 이미지를 빌드합니다.

    # Replace <n8n-version-number> with the n8n release version number. 
    # For example, N8N_VERSION=0.177.0
    docker build --build-arg N8N_VERSION=<n8n-version-number> --tag=customizedn8n .
    

이제 Docker에서 노드를 사용할 수 있습니다.

전역 n8n 인스턴스에 노드 설치하기#

n8n을 전역(global)으로 설치한 경우, n8n 안에 노드를 설치했는지 확인하세요. n8n이 해당 모듈을 찾아 자동으로 로드합니다.

관련 자료#

프라이빗 노드 설치

n8n v2.42
원문 보기

요약

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 n8n 인스턴스에 설치할 수 있습니다. 이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요. Docker로 n8n을 실행하는 경우, 노드가 설치된 n8n으로 Docker 이미지를 새로 만들어야 합니다.

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 n8n 인스턴스에 설치할 수 있습니다. 이 방법은 회사 내부에서만 사용할 목적으로 만든 노드에 유용합니다.

참고

이 섹션의 상세 내용은 n8n 공식 문서를 참조하세요.

Docker n8n 인스턴스에 노드 설치하기#

Docker로 n8n을 실행하는 경우, 노드가 설치된 n8n으로 Docker 이미지를 새로 만들어야 합니다.

  1. Dockerfile을 생성하고 이 Dockerfile의 코드를 붙여넣으세요.

    Dockerfile은 다음과 같은 형태여야 합니다.

    FROM node:16-alpine
    
    ARG N8N_VERSION
    
    RUN if [ -z "$N8N_VERSION" ] ; then echo "The N8N_VERSION argument is missing!" ; exit 1; fi
    
    # Update everything and install needed dependencies
    RUN apk add --update graphicsmagick tzdata git tini su-exec
    
    # Set a custom user to not have n8n run as root
    USER root
    
    # Install n8n and the packages it needs to build it correctly.
    RUN apk --update add --virtual build-dependencies python3 build-base ca-certificates && \
    	npm config set python "$(which python3)" && \
    	npm_config_user=root npm install -g full-icu n8n@${N8N_VERSION} && \
    	apk del build-dependencies \
    	&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root;
    
    # Install fonts
    RUN apk --no-cache add --virtual fonts msttcorefonts-installer fontconfig && \
    	update-ms-fonts && \
    	fc-cache -f && \
    	apk del fonts && \
    	find  /usr/share/fonts/truetype/msttcorefonts/ -type l -exec unlink {} \; \
    	&& rm -rf /root /tmp/* /var/cache/apk/* && mkdir /root
    
    ENV NODE_ICU_DATA /usr/local/lib/node_modules/full-icu
    
    WORKDIR /data
    
    COPY docker-entrypoint.sh /docker-entrypoint.sh
    ENTRYPOINT ["tini", "--", "/docker-entrypoint.sh"]
    
    EXPOSE 5678/tcp
    
  2. 커스텀 노드 코드를 컴파일합니다(nodes starter를 사용하는 경우 npm run build). dist 폴더 안의 node 폴더와 credential 폴더를 컨테이너의 ~/.n8n/custom/ 디렉터리로 복사하세요. 이렇게 하면 Docker에서 해당 폴더를 사용할 수 있습니다.

  3. docker-entrypoint.sh 파일을 다운로드하여 Dockerfile과 같은 디렉터리에 두세요.

  4. Docker 이미지를 빌드합니다.

    # Replace <n8n-version-number> with the n8n release version number. 
    # For example, N8N_VERSION=0.177.0
    docker build --build-arg N8N_VERSION=<n8n-version-number> --tag=customizedn8n .
    

이제 Docker에서 노드를 사용할 수 있습니다.

전역 n8n 인스턴스에 노드 설치하기#

n8n을 전역(global)으로 설치한 경우, n8n 안에 노드를 설치했는지 확인하세요. n8n이 해당 모듈을 찾아 자동으로 로드합니다.

관련 자료#