پرش به محتویات

نصب نودهای خصوصی#

می‌توانید نودهای خود را ساخته و در اینستنس n98n خود نصب کنید بدون اینکه آنها را در npm منتشر کنید. این برای نودهایی مفید است که فقط برای استفاده داخلی در شرکت خود ایجاد می‌کنید.

نصب نود خود در اینستنس n98n با داکر#

اگر n98n را با استفاده از داکر اجرا می‌کنید، باید یک تصویر داکر بسازید که نود در آن نصب شده باشد.

  1. یک فایل Dockerfile بسازید و کد را از این Dockerfile کپی کنید.

    فایل Dockerfile شما باید شبیه این باشد:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    FROM node:16-alpine
    
    ARG N8N_VERSION
    
    RUN if [ -z "$N8N_VERSION" ] ; then echo "مقدار N8N_VERSION مفقود است!" ; exit 1; fi
    
    # بروز رسانی و نصب وابستگی‌های لازم
    RUN apk add --update graphicsmagick tzdata git tini su-exec
    
    # تنظیم کاربر سفارشی برای جلوگیری از اجرای n98n تحت حساب روت
    USER root
    
    # نصب n98n و بسته‌هایی که برای ساخت آن نیاز است
    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;
    
    # نصب فونت‌ها
    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. کد نود سفارشی خود را کامپایل کنید (npm run build اگر از نمونه‌های نود استارت کیت استفاده می‌کنید). پوشه‌های node و credential را از داخل پوشه dist به پوشه ~/.n8n/custom/ در کانتینر خود کپی کنید. این کار آنها را برای داکر در دسترس می‌کند.

  3. فایل docker-entrypoint.sh را دانلود کرده و در همان مسیر فایل Docker خود قرار دهید.

  4. تصویر داکر خود را بسازید:

    1
    2
    3
    # <n8n-version-number> را با شماره نسخه منتشر شده n98n جایگزین کنید.
    # مثلا، N8N_VERSION=0.177.0
    docker build --build-arg N8N_VERSION=<n8n-version-number> --tag=customizedn8n .
    

اکنون می‌توانید نود خود را در داکر استفاده کنید.

نصب نود خود در نمونه جهانی n8n#

اگر n98n را به صورت سراسری نصب کرده‌اید، مطمئن شوید که نود خود را در داخل n98n نصب کنید. n98n این ماژول را پیدا کرده و به طور خودکار بارگذاری می‌کند.