{"id":7134,"date":"2018-10-23T15:37:08","date_gmt":"2018-10-23T12:37:08","guid":{"rendered":"https:\/\/www.howtoforge.com\/tutorial\/centos-nodebb-installation\/"},"modified":"2018-10-23T15:37:08","modified_gmt":"2018-10-23T12:37:08","slug":"how-to-install-nodebb-forum-on-centos-7","status":"publish","type":"post","link":"https:\/\/afaghhosting.net\/blog\/how-to-install-nodebb-forum-on-centos-7\/","title":{"rendered":"How to Install NodeBB Forum on CentOS 7"},"content":{"rendered":"<p><span>NodeBB is a\u00a0<span>Node.js based forum software built for the modern web.\u00a0It&#8217;s<span>\u00a0built on either a\u00a0MongoDB or\u00a0Redis database.\u00a0<span>It utilizes web sockets for instant interactions and real-time notifications. NodeBB has many modern features out of the box such as social network integration and streaming discussions.\u00a0<span>Additional functionality is enabled through the use of third-party plugins.\u00a0<span>NodeBB is an open source project which can be found on Github<\/span><span>.\u00a0<\/span><\/span><\/span><\/span><\/span><\/span>In this guide, we will walk you through the step-by-step NodeBB installation process on the CentOS 7 operating system.<\/p>\n<h2 id=\"requirements\">Requirements<\/h2>\n<p><span>NodeBB requires the following software to be installed:<\/span><\/p>\n<ul>\n<li><span>Node.js version <strong>6<\/strong> or greater<\/span><\/li>\n<li><span><span>MongoDB version <strong>2.6<\/strong> or greater or\u00a0<span>Redis version <strong>2.8.9<\/strong> or greater<\/span><\/span><\/span><\/li>\n<li><span><span><span>Nginx version <strong>1.3.13<\/strong> or greater<\/span><\/span><\/span><\/li>\n<li><span><span><span>Git<\/span><\/span><\/span><\/li>\n<\/ul>\n<ul>\n<li>A server running\u00a0CentOS 7\u00a0x86_64<span>\u00a0<\/span>(64-bit) system with at least 1GB or RAM<\/li>\n<li>Domain name with<span>\u00a0<\/span><code>A<\/code>\/<code>AAAA<\/code><span>\u00a0<\/span>records set up<\/li>\n<li><span>A non-root user with sudo privileges.<\/span><\/li>\n<\/ul>\n<h2 id=\"initial-steps\">Initial steps<\/h2>\n<p><span>Check the CentOS version:<\/span><\/p>\n<p class=\"command\"><span>cat \/etc\/centos-release<br \/>#\u00a0CentOS Linux release 7.5.1804 (Core)<\/span><\/p>\n<p><span>Set up the timezone:<\/span><\/p>\n<p class=\"command\">timedatectl list-timezones<br \/>sudo timedatectl set-timezone &#8216;Region\/City&#8217;<\/p>\n<p><span><span>Update your operating system packages (software)<\/span>:<\/span><\/p>\n<p class=\"command\"><span>sudo yum update -y<\/span><\/p>\n<p><span>Install\u00a0necessary\u00a0packages to finish this tutorial:<\/span><\/p>\n<p class=\"command\"><span>sudo yum install -y curl wget vim\u00a0bash-completion git socat epel-release<\/span><\/p>\n<p><span>For simplicity&#8217;s sake, disable SELinux and Firewall:<\/span><\/p>\n<p class=\"command\">sudo setenforce 0; sudo systemctl stop firewalld.service; sudo systemctl disable firewalld.service<\/p>\n<h2 id=\"step-install-nodejs-and-npm\">Step 1: Install Node.js and npm<\/h2>\n<p><span>NodeBB is built on<span>\u00a0Node.js.<\/span><\/span><span>\u00a0We are going to install<span>\u00a0<\/span><\/span><strong>recommended<\/strong><span>\u00a0version for\u00a0NodeBB which is\u00a0version 8<span face=\"monospace\"><b>\u00a0<\/b><\/span><\/span><span>at the time of this writing. On Linux you have a few Node.js installation options: Linux Binaries (x86\/x64), Source Code or via Package Managers. We will use Package Managment option which makes installing and updating Node.js a breeze.<\/span><\/p>\n<p><span>Download and install the latest Long-Term Support (<\/span>LTS<span>) release of<span>\u00a0Node.js from the Nodesource repository:<\/span><\/span><\/p>\n<p class=\"command\">curl &#8211;silent &#8211;location https:\/\/rpm.nodesource.com\/setup_8.x | sudo bash &#8211;<br \/>sudo yum -y install nodejs<\/p>\n<p><span>To compile and install native addons from npm you may also need to install build tools:<\/span><\/p>\n<p class=\"command\">sudo yum install -y gcc-c++ make<br \/># or<br \/># sudo yum groupinstall -y &#8216;Development Tools&#8217;<\/p>\n<p><span><span><strong>NOTE<\/strong><span>: <em>npm is distributed with Node.js &#8211; which means that when you download Node.js, you automatically get npm installed on your system.<br \/><\/em><\/span><\/span><\/span><\/p>\n<p><span>Check the Node.js and<span>\u00a0npm<\/span><\/span><span><span>\u00a0<\/span>versions:<\/span><\/p>\n<p class=\"command\"><span>node -v &amp;&amp; npm -v<br \/><\/span># v8.12.0<br \/># 6.4.1<\/p>\n<p><span>Npm is a separate project from Node.js, and tends to update more frequently. As a result, even if you\u2019ve just downloaded Node.js (and therefore npm), you\u2019ll probably need to update your npm. Luckily, npm knows how to update itself! To update your npm, type this into your terminal:<br \/><\/span><\/p>\n<p class=\"command\">sudo npm install -g <a href=\"https:\/\/www.howtoforge.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"3658465b765a5742534542\" target=\"_blank\" rel=\"noopener\">[email\u00a0protected]<\/a><\/p>\n<p><span>This command will update npm to the latest stable version.<\/span><\/p>\n<h2 id=\"step-install-and-configure-mongodb\">Step 2: Install and configure MongoDB<\/h2>\n<p>NodeBB needs database to store its data, and it supports MongoDB and Redis. In this tutorial, we\u00a0chose MongoDB as data store engine. So, in the next few steps, we will download and install MongoDB database from the official MongoDB rpm repository:<\/p>\n<p><span>Create a<span>\u00a0<\/span><\/span><code class=\"docutils literal\"><span class=\"pre\">\/etc\/yum.repos.d\/mongodb-org-4.0.repo<\/span><\/code><span><span>\u00a0<\/span>file, so that you can install MongoDB directly using<span>\u00a0<\/span><\/span><code class=\"docutils literal\"><span class=\"pre\">yum<\/span><\/code><span>:<\/span><\/p>\n<p class=\"command\">sudo vim\u00a0\/etc\/yum.repos.d\/mongodb-org-4.0.repo<\/p>\n<p>Populate the file with the following content:<\/p>\n<pre>[mongodb-org-4.0]&#13;\nname=MongoDB Repository&#13;\nbaseurl=https:\/\/repo.mongodb.org\/yum\/redhat\/$releasever\/mongodb-org\/4.0\/x86_64\/&#13;\ngpgcheck=1&#13;\nenabled=1&#13;\ngpgkey=https:\/\/www.mongodb.org\/static\/pgp\/server-4.0.asc<\/pre>\n<p><span>To install the latest stable version of MongoDB package, issue the following command:<\/span><\/p>\n<p class=\"command\">sudo yum install -y mongodb-org<\/p>\n<p>Check the MongoDB version:<\/p>\n<p class=\"command\">mongo &#8211;version | head -n 1 &amp;&amp; mongod &#8211;version | head -n 1<br \/># MongoDB shell version v4.0.2<br \/># db version v4.0.2<\/p>\n<p><span>Start\u00a0and\u00a0enable\u00a0<span>(<\/span><em>set it to start on reboot<\/em><span>)\u00a0<\/span>MongoDB service:<\/span><\/p>\n<p class=\"command\"><span>sudo systemctl start mongod.service<br \/><\/span>sudo systemctl enable mongod.service<\/p>\n<p>Check the MongoDB Database Server status by running:<\/p>\n<p class=\"command\">sudo systemctl status mongod.service<br \/>#\u00a0active (running)<\/p>\n<p>Next, create MongoDB database and user for NodeBB.<\/p>\n<p>Connect to MongoDB server first.<\/p>\n<p class=\"command\">mongo<\/p>\n<p>Switch to the built-in<span>\u00a0<\/span><code>admin<\/code><span>\u00a0<\/span>database.<\/p>\n<p class=\"command\">&gt; use admin<\/p>\n<p>Create an administrative user.<\/p>\n<p class=\"command\">&gt; db.createUser( { user: &#8220;admin&#8221;, pwd: &#8220;&lt;Enter a secure password&gt;&#8221;, roles: [ { role: &#8220;readWriteAnyDatabase&#8221;, db: &#8220;admin&#8221; }, { role: &#8220;userAdminAnyDatabase&#8221;, db: &#8220;admin&#8221; } ] } )<\/p>\n<p><strong>NOTE:<\/strong><span>\u00a0<\/span><em>Replace the placeholder<span>\u00a0<\/span><code>&lt;Enter a secure password&gt;<\/code><span>\u00a0<\/span>with your own selected password.<\/em><\/p>\n<p>Add a new database called<span>\u00a0<\/span><code>nodebb<\/code>.<\/p>\n<p class=\"command\">&gt; use nodebb<\/p>\n<p>The database will be created and context switched to<span>\u00a0<\/span><code>nodebb<\/code>. Next create the<span>\u00a0<\/span><code>nodebb<\/code><span>\u00a0<\/span>user with the appropriate privileges.<\/p>\n<p class=\"command\">&gt; db.createUser( { user: &#8220;nodebb&#8221;, pwd: &#8220;&lt;Enter a secure password&gt;&#8221;, roles: [ { role: &#8220;readWrite&#8221;, db: &#8220;nodebb&#8221; }, { role: &#8220;clusterMonitor&#8221;, db: &#8220;admin&#8221; } ] } )<\/p>\n<p><strong>NOTE:<\/strong><span>\u00a0<\/span><em>Again, replace the placeholder<span>\u00a0<\/span><code>&lt;Enter a secure password&gt;<\/code><span>\u00a0<\/span>with your own selected password.<\/em><\/p>\n<p>Exit the Mongo shell.<\/p>\n<p class=\"command\">&gt; quit()<\/p>\n<p>Restart MongoDB and verify that the administrative user created earlier can connect.<\/p>\n<p class=\"command\">sudo systemctl restart mongod.service<br \/>mongo -u admin -p your_password &#8211;authenticationDatabase=admin<\/p>\n<p>If all went well, your MongoDB should be installed and prepared for NodeBB. In the next\u00a0step, we will deal with web server installation and configuration.<\/p>\n<h2 id=\"\">Step 3: Install Acme.sh client and obtain a Let&#8217;s Encrypt certificate (<em>optional<\/em>)<\/h2>\n<p><span>Securing your NodeBB forum with HTTPS is not necessary, but it is a good practice to secure your site traffic. In order to obtain SSL certificate from Let&#8217;s Encrypt we will use Acme.sh client. Acme.sh is a pure unix shell software for obtaining SSL certificates from Let&#8217;s Encrypt with zero dependencies.\u00a0<\/span><\/p>\n<p><span><span>Download and install<span>\u00a0Acme.sh:<\/span><\/span><\/span><\/p>\n<p class=\"command\">sudo mkdir \/etc\/letsencrypt<br \/>git clone https:\/\/github.com\/Neilpang\/acme.sh.git<br \/>cd acme.sh<br \/>sudo .\/acme.sh &#8211;install &#8211;home \/etc\/letsencrypt &#8211;accountemail<span>\u00a0<\/span><a href=\"https:\/\/www.howtoforge.com\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"027b6d77705d676f636b6e42677a636f726e672c616d6f\" target=\"_blank\" rel=\"noopener\">[email\u00a0protected]<\/a><br \/>cd ~<\/p>\n<p>Check\u00a0Acme.sh\u00a0version:<\/p>\n<p class=\"command\">\/etc\/letsencrypt\/acme.sh &#8211;version<br \/># v2.8.0<\/p>\n<p>Obtain<span>\u00a0<\/span><strong>RSA<\/strong><span>\u00a0<\/span>and<span>\u00a0<\/span><strong>ECC\/ECDSA<\/strong><span>\u00a0<\/span>certificates for your\u00a0domain\/hostname:<code><br \/><\/code><\/p>\n<p class=\"command\"># RSA 2048<br \/>sudo \/etc\/letsencrypt\/acme.sh &#8211;issue\u00a0<span>&#8211;standalone\u00a0<\/span>&#8211;home \/etc\/letsencrypt -d forum.example.com &#8211;ocsp-must-staple &#8211;keylength 2048<br \/># ECDSA<br \/>sudo \/etc\/letsencrypt\/acme.sh &#8211;issue &#8211;standalone &#8211;home \/etc\/letsencrypt -d forum.example.com &#8211;ocsp-must-staple &#8211;keylength ec-256<\/p>\n<p><span>After running the above commands, your<span>\u00a0<\/span><\/span><em>certificates<\/em><span><span>\u00a0<\/span>and<span>\u00a0<\/span><\/span><em>keys<\/em><span><span>\u00a0<\/span>will be in:<\/span><\/p>\n<ul>\n<li>For<span>\u00a0<\/span><strong>RSA<\/strong>:<span>\u00a0<\/span><code>\/etc\/letsencrypt\/forum.example.com<\/code><span>\u00a0<\/span>directory.<\/li>\n<li>For<span>\u00a0<\/span><strong>ECC\/ECDSA<\/strong>:<span>\u00a0<\/span><code>\/etc\/letsencrypt\/forum.example.com_ecc<\/code><span>\u00a0<\/span>directory.<\/li>\n<\/ul>\n<h2 id=\"step-install-and-configure-nginx\">Step 4: Install and configure Nginx<\/h2>\n<p><span>NodeBB\u00a0can work fine with many web servers. In this tutorial, we selected Nginx.<\/span><\/p>\n<p><span class=\"pl-c\">Download and import Nginx repository PGP key first:<\/span><\/p>\n<p class=\"command\">wget https:\/\/nginx.org\/keys\/nginx_signing.key<a href=\"https:\/\/nginx.org\/keys\/nginx_signing.key\" target=\"_blank\" rel=\"noopener\"><br \/><\/a>sudo rpm &#8211;import nginx_signing.key<\/p>\n<p>After importing the key, you can\u00a0safely remove it from the disk:<\/p>\n<p class=\"command\">rm nginx_signing.key<\/p>\n<p><span>Create a<span>\u00a0<\/span><\/span><code class=\"docutils literal\"><span class=\"pre\">\/etc\/yum.repos.d\/nginx_mainline.repo<\/span><\/code><span><span>\u00a0<\/span>file, so that you can install\u00a0Nginx directly using<span>\u00a0<\/span><\/span><code class=\"docutils literal\"><span class=\"pre\">yum<\/span><\/code><span>:<\/span><\/p>\n<p class=\"command\">sudo vim \/etc\/yum.repos.d\/nginx_mainline.repo<\/p>\n<p><span>Populate the file with the following content:<\/span><\/p>\n<pre>[nginx]&#13;\nname=nginx repo&#13;\nbaseurl=https:\/\/nginx.org\/packages\/mainline\/centos\/7\/<span class=\"pl-smi\">$basearch<\/span>\/&#13;\ngpgcheck=1&#13;\nenabled=1<\/pre>\n<p>Finally, t<span>o install the latest\u00a0mainline version of\u00a0Nginx package, issue the following command:<\/span><\/p>\n<p class=\"command\">sudo yum install -y nginx<\/p>\n<p>After the installation, you can\u00a0verify\u00a0Nginx version by running:<\/p>\n<p class=\"command\">nginx -v<br \/># 1.15.3<\/p>\n<p><span>Start\u00a0and\u00a0enable (<em>set it to start on reboot<\/em>) Nginx service:<\/span><\/p>\n<p class=\"command\"><span>sudo systemctl start nginx.service<br \/><\/span>sudo systemctl enable nginx.service<\/p>\n<p>Check the\u00a0Nginx\u00a0web server status by running:<\/p>\n<p class=\"command\">sudo systemctl status nginx.service<br \/>#\u00a0active (running)<\/p>\n<p><span>NodeBB by default runs on port<span>\u00a0<\/span><\/span><code>4567<\/code><span>. To avoid typing<span>\u00a0<\/span><\/span><code>http:\/\/example.com:4567<\/code><span>, we will configure Nginx as a reverse proxy for the NodeBB application. Every request on port<span>\u00a0<\/span><\/span><code>80<\/code><span><span>\u00a0<\/span>or<span>\u00a0<\/span><\/span><code>443<\/code><span><span>\u00a0<\/span>(<\/span><em>if SSL is used<\/em><span>) will be forwarded to port<span>\u00a0<\/span><\/span><code>4567<\/code><span>.<\/span><\/p>\n<p><span><span>Run<span>\u00a0<\/span><\/span><code>sudo vim \/etc\/nginx\/conf.d\/nodebb.conf<\/code><span>\u00a0and configure Nginx as an HTTPS reverse proxy.<\/span><\/span><\/p>\n<pre readability=\"17\">server {<br\/>listen [::]:443 ssl http2;<br\/>listen 443 ssl http2;<br\/>listen [::]:80;<br\/>listen 80;<p>server_name forum.example.com;<\/p><p>client_max_body_size 50M;<\/p><p># RSA<br\/>ssl_certificate \/etc\/letsencrypt\/forum.example.com\/fullchain.cer;<br\/>ssl_certificate_key \/etc\/letsencrypt\/forum.example.com\/forum.example.com.key;<br\/># ECDSA<br\/>ssl_certificate \/etc\/letsencrypt\/forum.example.com_ecc\/fullchain.cer;<br\/>ssl_certificate_key \/etc\/letsencrypt\/forum.example.com_ecc\/forum.example.com.key;<\/p><p>location \/ {<br\/>proxy_set_header X-Real-IP $remote_addr;<br\/>proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<br\/>proxy_set_header X-Forwarded-Proto $scheme;<br\/>proxy_set_header Host $http_host;<br\/>proxy_set_header X-NginX-Proxy true;<br\/>proxy_pass http:\/\/127.0.0.1:4567;<br\/>proxy_redirect off;<br\/># Socket.IO Support<br\/>proxy_http_version 1.1;<br\/>proxy_set_header Upgrade $http_upgrade;<br\/>proxy_set_header Connection \"upgrade\"; <br\/>}<\/p><p>}<\/p><\/pre>\n<p>Check the Nginx configuration:<\/p>\n<p class=\"command\">sudo nginx -t<\/p>\n<p>Finally, for\u00a0changes to take effect, we need to reload Nginx:<\/p>\n<p class=\"command\">sudo systemctl reload nginx.service<\/p>\n<h2 id=\"step-install-and-setup-nodebb\">Step 5: Install and setup NodeBB<\/h2>\n<p><span>Create a document root directory where\u00a0NodeBB should reside in:<\/span><\/p>\n<p class=\"command\"><span><span>sudo mkdir -p \/var\/www\/nodebb<\/span><\/span><\/p>\n<p><span>Navigate to the document root directory:<\/span><\/p>\n<p class=\"command\"><span>cd \/var\/www\/nodebb<\/span><\/p>\n<p><span>Change ownership of the<span>\u00a0<\/span><\/span><code>\/var\/www\/nodebb<\/code><span>\u00a0directory to\u00a0<span face=\"monospace\">your_user<\/span><\/span><span>.<\/span><\/p>\n<p class=\"command\">sudo chown -R [your_user]:[your_user] \/var\/www\/nodebb<\/p>\n<p><strong>NOTE:\u00a0<\/strong><em>Replace your_user in the above command with your non-root user that you should have created as a prerequisite for this tutorial<\/em><em>.<\/em><\/p>\n<p><span>Clone the latest NodeBB\u00a0<span>repository\u00a0<\/span>into document root folder:<\/span><\/p>\n<p class=\"command\">git clone -b v1.10.x https:\/\/github.com\/NodeBB\/NodeBB.git .<\/p>\n<p><span><span>Initiate the setup script by running the app with the<span>\u00a0<\/span><\/span><code>setup<\/code><span><span>\u00a0<\/span>flag:<\/span><\/span><\/p>\n<p class=\"command\">.\/nodebb setup<\/p>\n<p>After NodeBB setup is completed, run<span>\u00a0<\/span><code>.\/nodebb start<\/code><span>\u00a0<\/span>to manually start your NodeBB server:<\/p>\n<p class=\"command\">.\/nodebb start<\/p>\n<p>After running this command, you should be able to access your brand new forum in your web browser:<\/p>\n<p><a class=\"fancybox\" id=\"img-Screen_Shot_2018-09-21_at_5.27_.16_AM_\" href=\"https:\/\/www.howtoforge.com\/images\/how_to_install_nodebb_forum_on_centos_7\/big\/Screen_Shot_2018-09-21_at_5.27_.16_AM_.png\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/10\/how-to-install-nodebb-forum-on-centos-7.png\" alt=\"NodeBB in Browser\" width=\"550\" height=\"316\" title=\"\"><\/a><\/p>\n<h2 id=\"step-run-nodebb-as-a-system-service\">Step 6: Run NodeBB as a System Service<\/h2>\n<p>When started via<span>\u00a0<\/span><code>.\/nodebb start<\/code>, NodeBB will not automatically start up again when the system reboots. To avoid that, we will need to setup NodeBB as a system service.<\/p>\n<p>If running, stop NodeBB:<\/p>\n<p class=\"command\">.\/nodebb stop<\/p>\n<p>Create a new<span>\u00a0<\/span><code>nodebb<\/code><span>\u00a0<\/span>user:<\/p>\n<p class=\"command\">sudo useradd nodebb<\/p>\n<p>Change the ownership of the<span>\u00a0<\/span><code>\/var\/www\/nodebb<\/code><span>\u00a0<\/span>directory to<span>\u00a0<\/span><code>nodebb<\/code><span>\u00a0<\/span>user:<\/p>\n<p class=\"command\">sudo chown -R nodebb:nodebb \/var\/www\/nodebb<\/p>\n<p>Create<span>\u00a0<\/span><code>nodebb.service<\/code><span>\u00a0<\/span>systemd unit config file. This unit file will handle startup of NodeBB deamon. Run<span>\u00a0<\/span><code>sudo vim \/etc\/systemd\/system\/nodebb.service<\/code><span>\u00a0<\/span>and\u00a0add the below content:<\/p>\n<pre><code>[Unit]&#13;\nDescription=NodeBB&#13;\nDocumentation=https:\/\/docs.nodebb.org&#13;\nAfter=system.slice multi-user.target mongod.service&#13;\n&#13;\n[Service]&#13;\nType=forking&#13;\nUser=nodebb&#13;\n&#13;\nStandardOutput=syslog&#13;\nStandardError=syslog&#13;\nSyslogIdentifier=nodebb&#13;\n&#13;\nEnvironment=NODE_ENV=production&#13;\nWorkingDirectory=\/var\/www\/nodebb&#13;\nPIDFile=\/var\/www\/nodebb\/pidfile&#13;\nExecStart=\/usr\/bin\/env node loader.js&#13;\nRestart=always&#13;\n&#13;\n[Install]&#13;\nWantedBy=multi-user.target&#13;\n<\/code><\/pre>\n<p><strong>NOTE:<\/strong><span>\u00a0<\/span><em>Set username and directory paths according to your chosen names.<\/em><\/p>\n<p>Enable<span>\u00a0<\/span><code>nodebb.service<\/code><span>\u00a0<\/span>on reboot and immediately start<span>\u00a0<\/span><code>nodebb.service:<\/code><\/p>\n<p class=\"command\">sudo systemctl enable nodebb.service<br \/>sudo systemctl start nodebb.service<\/p>\n<p>Check the<span>\u00a0<\/span><code>nodebb.service<\/code><span>\u00a0<\/span>status:<\/p>\n<p class=\"command\">sudo systemctl status nodebb.service<br \/>sudo systemctl is-enabled nodebb.service<\/p>\n<p>Congratulations! You have successfully installed and deployed\u00a0NodeBB\u00a0discussion platform on\u00a0CentOS 7 server.<\/p>\n<h2 id=\"step-complete-the-cachet-setup\">Links<\/h2>\n<div class=\"authorbox\" readability=\"18\">\n<img decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/10\/how-to-install-nodebb-forum-on-centos-7-1.png\" alt=\"Blago Eres\" title=\"\"> <\/p>\n<p><strong>About Blago Eres<\/strong><\/p>\n<p>Blago Eres is a freelance Web Developer, Linux System Administrator and Technical Writer with more than 3 years of experience. Blago is skilled at RHEL\/CentOS, Debian\/Ubuntu, Web Servers, Database Servers, HTTP, PHP, JavaScript, Load Balancing, Caching etc.<\/p>\n<\/div>\n<div>\n<p><b>Share this page:<\/b><\/p>\n<p>\n<a href=\"https:\/\/www.facebook.com\/sharer.php?u=https%3A%2F%2Fwww.howtoforge.com%2Ftutorial%2Fcentos-nodebb-installation%2F\" target=\"_blank\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/10\/how-to-install-nodebb-forum-on-centos-7-2.png\" height=\"20\" alt=\"\" title=\"\"><\/a><br \/>\n<a href=\"https:\/\/twitter.com\/intent\/tweet?url=https%3A%2F%2Fwww.howtoforge.com%2Ftutorial%2Fcentos-nodebb-installation%2F&amp;text=How+to+Install+NodeBB+Forum+on+CentOS+7&amp;via=howtoforgecom&amp;related=howtoforgecom\" target=\"_blank\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/10\/how-to-install-nodebb-forum-on-centos-7-3.png\" height=\"20\" alt=\"\" title=\"\"><\/a><br \/>\n<a href=\"https:\/\/twitter.com\/howtoforgecom\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/10\/how-to-install-nodebb-forum-on-centos-7-4.png\" height=\"20\" alt=\"\" title=\"\"><\/a><br \/>\n<a href=\"https:\/\/plus.google.com\/share?url=https%3A%2F%2Fwww.howtoforge.com%2Ftutorial%2Fcentos-nodebb-installation%2F\" target=\"_blank\" rel=\"nofollow noopener noreferrer\"><img decoding=\"async\" src=\"https:\/\/afaghhosting.net\/blog\/wp-content\/uploads\/2018\/10\/how-to-install-nodebb-forum-on-centos-7-5.png\" height=\"20\" alt=\"\" title=\"\"><\/a>\n<\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>NodeBB is a\u00a0Node.js based forum software built for the modern web.\u00a0It&#8217;s\u00a0built on either a\u00a0MongoDB or\u00a0Redis database.\u00a0It utilizes web sockets for instant interactions and real-time notifications. NodeBB has many modern features out of the box such as social network integration and streaming discussions.\u00a0Additional functionality is enabled through the use of third-party plugins.\u00a0NodeBB is an open source [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[36],"tags":[],"class_list":["post-7134","post","type-post","status-publish","format-standard","hentry","category-36"],"_links":{"self":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/7134","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/comments?post=7134"}],"version-history":[{"count":0,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/posts\/7134\/revisions"}],"wp:attachment":[{"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/media?parent=7134"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/categories?post=7134"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/afaghhosting.net\/blog\/wp-json\/wp\/v2\/tags?post=7134"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}