نصب و راه اندازی NATS

https://negarnovin.com/docs/how-to-deploy-nats/ · آخرین به‌روزرسانی: · نویسنده: نگارنوین · سایت: نگارنوین · 6 دقیقه مطالعه

📌 خلاصه (TL;DR)

آموزش نصب و راه اندازی NATS How to Deploy NATS – High-Performance Messaging NATS یک سیستم پیام‌رسانی سبک و با کارایی بالا است

📊 حقایق کلیدی

URLhttps://negarnovin.com/docs/how-to-deploy-nats/
تاریخ انتشار2026-02-18
آخرین به‌روزرسانی2026-02-18
نویسندهنگارنوین
ناشرنگارنوین
زبانفارسی (fa-IR)
تعداد کلمات1026
نوع صفحهبرگه

📄 محتوای کامل

نحوه استقرار NATS – پیام رسانی با کارایی بالا

NATS را با Docker Compose، JetStream persistence، احراز هویت امن و اتصال کلاینت تأیید شده مستقر کنید.

NATS یک سیستم پیام‌رسانی سبک و با کارایی بالا است که برای برنامه‌های توزیع‌شده و ابری طراحی شده است. این سیستم از انتشار-اشتراک، درخواست-پاسخ و بارهای کاری استریمینگ از طریق JetStream پشتیبانی می‌کند. NATS به طور گسترده برای ارتباطات میکروسرویس‌ها، سیستم‌های رویداد محور، پیام‌رسانی اینترنت اشیا و خطوط لوله داده بلادرنگ استفاده می‌شود.

سرور مجازی انگلیس

این مقاله نحوه استقرار NATS با استفاده از Docker Compose، فعال کردن JetStream persistence، پیکربندی احراز هویت و مجوز و تأیید اتصال کلاینت با استفاده از NATS CLI را توضیح می‌دهد.

پیش نیازها

قبل از شروع نیاز دارید به:

  • به عنوان یک کاربر غیر ریشه با امتیازات sudo به یک سرور مبتنی بر اوبونتو ۲۴.۰۴ دسترسی داشته باشید.
  • داکر و داکر کامپوز را نصب کنید.

تنظیم ساختار دایرکتوری و متغیرهای محیطی

در این بخش، ساختار دایرکتوری مورد نیاز برای NATS را ایجاد می‌کنید و متغیرهای محیطی را در یک فایل .env تعریف می‌کنید که Docker Compose به طور خودکار آن را بارگذاری می‌کند.

  1. دایرکتوری پروژه را ایجاد کنید. consoleCopy
    $ mkdir -p ~/nats-stack/{data,config}
  2. به دایرکتوری پروژه بروید. consoleCopy
    $ cd ~/nats-stack
  3. فایل .env را ایجاد و ویرایش کنید. consoleCopy
    $ nano .env

    متغیرهای زیر را اضافه کنید:

    iniCopy
    NATS_CLIENT_PORT=4222
    NATS_CLUSTER_PORT=6222

    جایگزین کنید:

    • NATS_CLIENT_PORT با پورت اتصال کلاینت.
    • NATS_CLUSTER_PORT با پورت ارتباطی خوشه.

    فایل را ذخیره کنید و ببندید.

نصب رابط خط فرمان NATS و ایجاد پیکربندی NATS

در این بخش، شما رابط خط فرمان NATS را نصب می‌کنید، اعتبارنامه‌های امن ایجاد می‌کنید و NATS را با JetStream، احراز هویت و مجوز پیکربندی می‌کنید.

  1. فایل باینری NATS CLI را دانلود کنید. consoleCopy
    $ curl -sf https://binaries.nats.dev/nats-io/natscli/nats@latest | sh
  2. فایل باینری را به PATH سیستم خود منتقل کنید. consoleCopy
    $ sudo mv nats /usr/local/bin/
  3. نصب را تأیید کنید. consoleCopy
    $ nats --version
  4. یک هش رمز عبور برای کاربر سیستم یا برنامه ایجاد کنید. consoleCopy
    $ nats server passwd

    رمز عبور را دو بار وارد کنید و هش تولید شده را کپی کنید.

    خروجی شما باید مشابه زیر باشد:

    $2a$11$C6sj6xxxxx....

    این مرحله را برای هر کاربری که می‌خواهید تعریف کنید، تکرار کنید.

  5. فایل پیکربندی NATS را ایجاد کنید. consoleCopy
    $ nano config/nats.conf

    پیکربندی زیر را اضافه کنید:

    iniCopy
    # Client port
    port: 4222
    monitor_port: 8222
    server_name: "NATS_SERVER_NAME"
    
    # System account
    system_account: SYS
    
    accounts {
      SYS {
        users = [
          { user: "sysadmin", password: "SYSTEM_PASSWORD_HASH" }
        ]
      }
    }
    
    # JetStream
    jetstream {
      store_dir: "/data/jetstream"
      max_mem_store: 1GB
      max_file_store: 5GB
    }
    
    authorization {
      default_permissions = {
        publish = "SANDBOX.*"
        subscribe = ["PUBLIC.>", "_INBOX.>"]
      }
      ADMIN = {
        publish = ">"
        subscribe = ">"
      }
      users = [
        {user: USERNAME, password: "USER_PASSWORD_HASH", permissions: $ADMIN}
      ]
    }

    در پیکربندی بالا:

    • server_name سرور NATS را در لاگ‌ها، خروجی مانیتورینگ و رویدادهای سیستم شناسایی می‌کند.
    • system_account ویژگی‌های سیستم داخلی مورد نیاز برای نظارت و مدیریت JetStream را فعال می‌کند.
    • accounts مرزهای احراز هویت را برای کاربران سیستم و برنامه تعریف می‌کند
    • authorization کنترل دسترسی در سطح موضوع را اعمال می‌کند، با مجموعه‌ای از مجوزهای مدیریتی که دسترسی کامل به انتشار و اشتراک را اعطا می‌کند.
    • JetStream امکان ماندگاری پیام را با محدودیت‌های حافظه و دیسک تعریف‌شده فراهم می‌کند.

    قبل از شروع سرویس، مقادیر زیر را جایگزین کنید:

    • NATS_SERVER_NAME با نام سرور توصیفی
    • SYSTEM_PASSWORD_HASH با هش bcrypt تولید شده برای کاربر سیستم.
    • USERNAME با نام کاربری برنامه شما.
    • USER_PASSWORD_HASH با هش bcrypt تولید شده برای کاربر برنامه.

    فایل را ذخیره کنید و ببندید.

راه اندازی با Docker Compose

در این بخش، شما مانیفست Docker Compose را ایجاد می‌کنید که NATS را با فعال بودن قابلیت تداوم و نظارت JetStream مستقر می‌کند.

  1. مانیفست Docker Compose را ایجاد کنید. consoleCopy
    $ nano docker-compose.yaml

    محتوای زیر را اضافه کنید:

    yamlCopy
    services:
      nats:
        image: nats:2.12
        container_name: nats
        command:
          - "-c"
          - "/etc/nats/nats.conf"
    
        ports:
          - "${NATS_CLIENT_PORT}:4222"
          - "${NATS_CLUSTER_PORT}:6222"
    
        volumes:
          - "./data:/data"
          - "./config/nats.conf:/etc/nats/nats.conf:ro"
    
        restart: unless-stopped
    
        healthcheck:
          test: ["CMD", "nats", "server", "ping"]
          interval: 10s
          timeout: 5s
          retries: 5

    فایل را ذخیره کنید و ببندید.

    در این مانیفست:

    • image: از تصویر رسمی NATS ۲.۱۲ استفاده می‌کند.
    • command: پیکربندی سفارشی NATS را در هنگام راه‌اندازی بارگذاری می‌کند.
    • ports:
      • 4222: اتصالات کلاینت.
      • 8222: نقطه پایانی مانیتورینگ (فقط میزبان محلی).
      • 6222: ارتباط خوشه‌ای.
    • volumes:
      • ./data: پیام‌های JetStream همچنان باقی می‌مانند..
      • ./config/nats.conf: پیکربندی سرور را تزریق می‌کند..
    • healthcheck: تأیید می‌کند که سرور به پینگ‌ها پاسخ می‌دهد.
    • restart: unless-stopped:سرویس را به صورت خودکار مجدداً راه اندازی می کند.
  2. سرویس NATS را شروع کنید. consoleCopy
    $ docker compose up -d
  3. تأیید کنید که سرویس NATS در حال اجرا است. consoleCopy
    $ docker compose ps

    مطمئن شوید که خروجی نشان می‌دهد کانتینر NATS سالم و در حال اجرا است.

  4. در صورت نیاز، لاگ‌ها را مشاهده کنید. consoleCopy
    $ docker compose logs

    برای اطلاعات بیشتر در مورد مدیریت پشته Docker Compose، به مقاله نحوه استفاده از Docker Compose مراجعه کنید.

اتصال NATS را تأیید کنید

در این بخش، تأیید می‌کنید که سرور NATS قابل دسترسی است و اتصالات کلاینت را می‌پذیرد.

اتصال را با استفاده از NATS CLI آزمایش کنید.

consoleCopy
$ nats --server nats://sysadmin:SYS_USER_PASSWORD@SERVER_IP:4222 server ping

به جای SYS_USER_PASSWORD و SERVER_IP، رمز عبور کاربر سیستم و IP سرور را وارد کنید.

خروجی:

NATS_SERVER_NAME                                             rtt=338.443125ms

---- ping statistics ----
1 replies max: 338.00 min: 338.00 avg: 338.00

خروجی موفقیت‌آمیز تأیید می‌کند که سرور NATS قابل دسترسی و به درستی احراز هویت شده است.

نتیجه گیری

شما با موفقیت NATS را با استفاده از Docker Compose و با فعال بودن JetStream persistence مستقر کردید. احراز هویت و مجوز امن را پیکربندی کردید، ذخیره‌سازی پیام‌های پایدار را فعال کردید، پیام‌های مورد نیاز را نمایش دادید و اتصال کلاینت را با استفاده از NATS CLI تأیید کردید.

🏷️ کلمات کلیدی

نصب و راه اندازی NATS، نحوه استقرار NATS – پیام رسانی با کارایی بالا، پیش نیازها، تنظیم ساختار دایرکتوری و متغیرهای محیطی، خرید نصب و راه اندازی NATS، قیمت نصب و راه اندازی NATS، بهترین نصب و راه اندازی NATS

🧩 JSON-LD

{"@context":"https://schema.org","@type":"WebPage","headline":"نصب و راه اندازی NATS","url":"https://negarnovin.com/docs/how-to-deploy-nats/","datePublished":"2026-02-18T12:52:45+03:30","dateModified":"2026-02-18T12:52:45+03:30","author":{"@type":"Person","name":"نگارنوین"},"publisher":{"@type":"Organization","name":"نگارنوین"},"inLanguage":"fa-IR","description":"آموزش نصب و راه اندازی NATS How to Deploy NATS – High-Performance Messaging NATS یک سیستم پیام‌رسانی سبک و با کارایی بالا است"}