search icon
در حال جستجو...

تنظیمات شبکه

برای مدیریت شبکه‌های یک سرویس، پس از ورود به ناحیه کاربری، روی مدیریت پروژه کلیک کرده و پروژه موردنظر خود را انتخاب کنید.

 

 

سپس وارد تنظیمات سرویس موردنظر شوید.

 

 

در نوار سمت راست تنظیمات سرویس، بخش شبکه‌ ها قرار دارد.

با ورود به این بخش، می‌توانید شبکه‌های فعلی سرویس را مشاهده و تنظیمات آن‌ها را ویرایش کنید. همچنین با انتخاب گزینه افزودن شبکه می‌توانید یک شبکه جدید برای سرویس ایجاد کنید.

 

 

افزودن شبکه

پس از انتخاب گزینه افزودن شبکه، در پنجره بازشده می‌توانید نوع شبکه را از بین ClusterIP و NodePort انتخاب کنید.

 

  • ClusterIP: برای ایجاد دسترسی داخلی به سرویس و اتصال آن به سایر سرویس‌ها یا دامنه استفاده می‌شود و درخواست‌ها را از Port به Target Port سرویس منتقل می‌کند.
  • NodePort: علاوه بر دسترسی داخلی، یک آدرس و پورت برای دسترسی مستقیم به سرویس فراهم می کند.

 

 

هنگام تنظیم پورت های شبکه دو گزینه دارید:

  • Port: پورتی است که از طریق شبکه خارجی برای دسترسی به سرویس در اختیار قرار می‌گیرد.
  • Target Port: پورتی است که برنامه داخل سرویس روی آن در حال اجرا و Listen است و درخواست‌ها به این پورت منتقل می‌شوند.

 

ایجاد ClusterIP

به عنوان مثال، فرض کنید یک برنامه Next.js داخل سرویس روی پورت 3000 اجرا شده باشد.

در این حالت، می توانید یک ClusterIP ایجاد کنید و Target Port را روی پورت 3000 و Port را روی پورت 80 ایجاد کنید. با این تنظیم، درخواست‌های دریافتی روی پورت 80 از طریق دامنه، به پورت 3000 برنامه داخل سرویس هدایت می‌شوند.

 

 

پس از ذخیره، شبکه جدید به لیست شبکه‌های سرویس اضافه می‌شود. در این بخش می‌توانید تنظیمات شبکه، از جمله نوع شبکه و پورت‌های مربوط به آن را ویرایش کنید.

 

توجه:

برای سرویس ها یک شبکه ClusterIP با پورت پیش فرض ایجاد می شود.

با توجه به پورت داخلی سرویس خود می توانید شبکه پیش فرض را تغییر دهید.

اگر چندین شبکه داشته باشید، در بخش تنظیم دامنه می توانید دامنه/ساب دامنه خود را به شبکه مد نظر متصل کنید.

 

آدرس داخلی شبکه

در صورتی که سرویس‌های موجود در یک پروژه نیاز به ارتباط داخلی با یکدیگر داشته باشند، می‌توانید از نام شبکه نمایش‌داده‌شده در لیست شبکه‌ها برای برقراری ارتباط استفاده کنید.

برای مثال، در تصویر زیر نام شبکه داخلی که تارگت پورت 3000 دارد، docker-sgg-service است. سرویس‌های دیگر پروژه می‌توانند برای برقراری ارتباط داخلی از این آدرس استفاده کنند.

 

دسترسی از طریق NodePort

در صورتی که نوع شبکه را NodePort انتخاب کنید، یک آدرس و پورت در اختیار شما قرار می‌گیرد که می‌توانید از طریق آن به‌صورت ریموت به سرویس متصل شوید.

 

 

توجه:

استفاده از آدرس دسترسی از راه دور NodePort برای پروژه هایی که در production هستند پیشنهاد نمی شود، چون ممکن است پورت آدرس تغییر کند.