InfoGrab DocsInfoGrab Docs

프라이빗 노드 설치

요약

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 n8n 인스턴스에 설치할 수 있습니다. Docker로 n8n을 실행하는 경우, 노드가 설치된 n8n으로 Docker 이미지를 새로 만들어야 합니다. Dockerfile을 생성하고 이 Dockerfile의 코드를 붙여넣으세요.

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 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.29
원문 보기
요약

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 n8n 인스턴스에 설치할 수 있습니다. Docker로 n8n을 실행하는 경우, 노드가 설치된 n8n으로 Docker 이미지를 새로 만들어야 합니다. Dockerfile을 생성하고 이 Dockerfile의 코드를 붙여넣으세요.

npm에 게시하지 않고도 직접 만든 노드를 빌드하여 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이 해당 모듈을 찾아 자동으로 로드합니다.