نصب

راه های مختلفی برای نصب نیکاس وجود داره :

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

Python Package

نیکاس را می توانید با pip نصب نمایید :

pip install nikas

یا اگر pip ندارید :

easy_install nikas

جهت ساده تر شدن ، یک symlink نیز به آدرسی در PATH تنظیم کنید. برای مثال :

ln -s /opt/nikas/bin/nikas /usr/local/bin/nikas

Source

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

git clone https://github.com/Nikas-Project/Server.git nikas
cd nikas

سپس باید یک Virtual Environment داشته باشید :

virtualenv .
source ./bin/activate

حال کتابخانه های جاوا اسکریپت را با استفاده از NPM نصب می‎کنیم :

make init

حال بخش Frontend پروژه را می‎سازیم :

make js

توجه داشته باشید که فایل های Style پروژه یا همان CSS ها به صورت Sass نوشته شده و باید پردازش شوند. جهت این کار ، پس از تغییر دادن آن ها دستور زیر را اجرا نمایید :

make sass

برای ساخت بخش Backend نیز دستور زیر را اجرا می‎کنیم :

python setup.py develop

Docker

می توانید نیکاس را به راحتی با استفاده از Docker نصب و استفاده نمایید. برای این کار دو راه دارید. یا خودتان Image را بسازید یا از Image های اصلی پروژه استفاده کنید :

docker build -t nikas .

# or

docker pull nikasproject/server

سپس آن را اجرا می‎نمایید :

docker run -d --rm --name nikas -p 127.0.0.1:8080:8080 -v /opt/nikas:/config -v /opt/nikas:/db nikasproject/server

جهت مشاهده نصب و استفاده پیشرفته با Docker به این صفحه مراجعه کنید.

Kubernetes

از آنجایی که برای سرور نیکاس ایمیج داکری در اختیار دارید ٬ استقرار آن روی کلاستر Kubernetes نیز به راحتی صورت می‎گیرد. قبل از شروع به دو نکته توجه داشته باشید:

  • جهت اعمال کانفیگ های مختلف باید از ConfigMap استفاده کنید.
  • جهت ذخیره سازی دیتابیس باید از PersistentVolumeClaim استفاده کنید.

فایل Deployment نمونه در مخزن نیکاس موجود است. تنظیمات مورد نظر خودتان را اعمال کرده و نیکاس را مستقر کنید:

kubectl apply -f nikas-deployment.yaml

تنظیماتی که باید اعمال کنید شامل این موارد است:

  • image : نام و تگ ایمیج داکری نیکاس
  • resources : مشخصات منابع مورد نیاز برای اجرای نیکاس
  • PersistentVolumeClaim : حجم مورد نیاز برای ذخیره سازی دیتابیس
  • ConfigMap : کانفیگ های مورد نیاز برای اجرای نیکاس
  • Route : اگر از OpenShift استفاده می‎کنید ٬ این بخش را جهت معرفی دامنه خود تنظیم نمایید. در غیر اینصورت این بخش را حذف کرده و از Ingress Controller مناسب استفاده نمایید.

استقرار در کانتینر ابری ابرآروان

جهت استقرار نیکاس در کانتینر ابری ابرآروان ابتدا مراحل زیر را انجام دهید:

  • ایجاد یک پروژه جدید ( یا استفاده از پروژه فعلی )
  • ایجاد یک کلید دسترسی با مراجعه به تنظیمات / کلیدهای API ( راهنما )
  • تعریف یک زیردامنه برای نیکاس ( مثلا nikas.example.com ) و ثبت رکورد CNAME با مقدار زیر:
    • nikas.example.comdefault-gateway.ir-thr-at1.arvan.run.
  • دریافت CLI ابرآروان

پس از انجام مراحل بالا می‎توانید نیکاس را مستقر کنید:

arvan login
arvan paas project <project-name>
arvan paas create -f nikas-deployment.yaml

پس از چند ثانیه سرور نیکاس آماده استفاده خواهد بود.