آموزش نصب RocketChat در اوبونتو

نصب Rocketchat روی سرور

RocketChat یک پلتفرم ارتباطی متن‌باز و کاملا قابل تنظیم است که با جاوا اسکریپت نوشته شده است. RocketChat ویژگی‌های متنوعی مانند ارتباط آنی، انعطاف‌پذیری و راه‌حل‌های مقیاس‌پذیر را ارائه می‌دهد و از استانداردهای بالای حفاظت از داده‌ها برخوردار است. در این مطلب، قصد داریم شما را در مورد نحوه نصب RocketChat در اوبونتو راهنمایی کنیم.

این مطلب از Nginx به عنوان یک پروکسی معکوس برای برنامه RocketChat ما استفاده خواهد کرد.

نصب RocketChat با Nginx به عنوان یک پروکسی معکوس یک فرآیند ساده است که بسته به آشنایی شما با لینوکس ممکن است تا ۲۵ دقیقه طول بکشد.

پیش نیازها

  • یک VPS با سیستم عامل اوبونتو ۲۲.۰۴
  • امتیازات کاربر: کاربر root یا non-root با امتیازات sudo
  • یک دامنه که به آدرس IP سرور اشاره دارد

مرحله ۱. به‌روزرسانی سیستم

قبل از شروع نصب RocketChat، باید بسته‌های سیستم را به آخرین نسخه‌های موجود به‌روزرسانی کنیم.

sudo apt-get update -y && sudo apt-get upgrade -y

مرحله ۲. نصب Nginx

برای نصب وب سرور Nginx، دستور زیر را اجرا کنید:

sudo apt install nginx -y

پس از اتمام نصب، سرویس Nginx را اجرا و فعال کنید:

sudo systemctl start nginx ; sudo systemctl enable nginx

برای بررسی وضعیت سرویس Nginx، می‌توانید دستور زیر را اجرا کنید:

systemctl status nginx

باید خروجی زیر را دریافت کنید:

وضعیت nginx در نصب راکت چت

مرحله ۳. نصب MongoDB

RocketChat برای عملکرد و ذخیره اطلاعات به یک سرویس پایگاه داده نیاز دارد. ما باید سرویس پایگاه داده MongoDB را نصب کنیم. ابتدا مخزن MongoDB و کلید GPG را اضافه می‌کنیم:

wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | gpg --dearmor | sudo tee /usr/share/keyrings/mongodb.gpg > /dev/null

echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.list

پس از اتمام، سیستم را به‌روزرسانی و MongoDB را نصب کنید:

sudo apt update
sudo apt install mongodb-org

install mongod-org

پس از نصب، سرویس را راه‌اندازی و فعال کنید:

sudo systemctl start mongod && sudo systemctl enable mongod

برای بررسی وضعیت سرویس MongoDB، می‌توانید دستور زیر را اجرا کنید:

sudo systemctl status mongod

باید خروجی زیر را دریافت کنید:

بررسی وضعیت سرویس mongod

مرحله ۴. نصب RocketChat در اوبونتو ۲۲.۰۴

آخرین نسخه RocketChat را دانلود و استخراج کنید:

curl -L https://releases.rocket.chat/latest/download -o /opt/rocket.chat.tgz

tar -xzf /opt/rocket.chat.tgz -C /opt

نصب rocketchat روی وی پی اس

سپس به دایرکتوری که RocketChat در آن استخراج شده است بروید و دستورات زیر را برای نصب اجرا کنید:

mv /opt/bundle/ /opt/RocketChat
cd /opt/RocketChat/programs/server 
npm install

نصب npm روی سرور مجازی

مرحله ۵. ایجاد سرویس RocketChat

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

sudo useradd -M rocketchat && sudo usermod -L rocketchat
sudo chown -R rocketchat:rocketchat /opt/RocketChat

پس از ایجاد کاربر، فضای ذخیره‌سازی MongoDB را پیکربندی کنید

sudo sed -i "s/^# engine:/ engine: wiredTiger/" /etc/mongod.conf
sudo sed -i "s/^#replication:/replication:\n replSetName: rs01/" /etc/mongod.conf

پس از افزودن این، باید فایل سرویس را ایجاد کنیم:

touch /lib/systemd/system/rocketchat.service

فایل را با ویرایشگر متن مورد علاقه خود باز کنید و خطوط کد زیر را در آن جایگذاری کنید:

[Unit]
Description=The Rocket.Chat server
After=network.target remote-fs.target nss-lookup.target nginx.service mongod.service
[Service]
ExecStart=/usr/bin/node /opt/RocketChat/main.js
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=rocketchat
User=rocketchat
Environment=MONGO_URL=mongodb://localhost:27017/rocketchat?replicaSet=rs01 MONGO_OPLOG_URL=mongodb://localhost:27017/local?replicaSet=rs01 ROOT_URL=https://localhost:3000/ PORT=3000

[Install]
WantedBy=multi-user.target

برای پروژه‌های مهم خود به دنبال سرور مطمئن هستید؟ خرید سرور مجازی با IP ثابت و سرعت بالا در پارسدو، گزینه‌ای ایده‌آل است.

دیمن را ریلود و سرویس RocketChat را استارت کنید. همچنین باید سرویس را enable کنید که در هنگام بوت هم اجرا شود:

sudo systemctl daemon-reload
sudo systemctl start rocketchat
sudo systemctl enable rocketchat

با این کار، نمونه RocketChat شما در حال اجرا است! می‌توانید از طریق آدرس زیر به آن دسترسی داشته باشید.

https://server IP address:3000

مرحله ۶. پیکربندی RocketChat با Nginx Reverse Proxy

فایل پیکربندی Nginx را ایجاد کنید.

touch /etc/nginx/sites-enabled/rocketchat.conf

پس از ایجاد، آن را با ویرایشگر متن مورد علاقه خود باز کنید و خطوط کد زیر را در آن قرار دهید:

server {
listen 80;
server_name YourDomainNameHere;
access_log /var/log/nginx/rocket_access.log;
error_log /var/log/nginx/rocket_error.log;

location / {
proxy_pass https://127.0.0.1:3000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forward-Proto http;
proxy_set_header X-Nginx-Proxy true;
}
}

عبارت YourDomainNameHere را با نام دامنه مورد نظر خود تغییر دهید.

فایل را ذخیره کنید، آن را ببندید و با دستور زیر، پیکربندی Nginx را برای خطاهای نحوی بررسی کنید:

nginx -t

اگر همه چیز خوب باشد، باید خروجی زیر را دریافت کنید:

خروجی دستور nginx t

سرویس Nginx را ریستارت نموده و از طریق https://YourDomainName به نصب RocketChat خود دسترسی پیدا کنید.

رابط کاربری راکت چت

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

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

نوشتن نظر

نوشتن دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *