نصب
راه های مختلفی برای نصب نیکاس وجود داره :
قبل از شروع به نصب ، ابتدا صفحه پیش نیازها را مطالعه کنید.
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.com
→default-gateway.ir-thr-at1.arvan.run.
-
- دریافت CLI ابرآروان
پس از انجام مراحل بالا میتوانید نیکاس را مستقر کنید:
arvan login
arvan paas project <project-name>
arvan paas create -f nikas-deployment.yaml
پس از چند ثانیه سرور نیکاس آماده استفاده خواهد بود.