<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>nodeBB Archives - Installing.in</title>
	<atom:link href="https://www.installing.in/tag/nodebb/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.installing.in/tag/nodebb/</link>
	<description></description>
	<lastBuildDate>Wed, 29 Jul 2020 11:44:34 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
<site xmlns="com-wordpress:feed-additions:1">110734269</site>	<item>
		<title>How to install nodeBB on Ubuntu 16.04</title>
		<link>https://www.installing.in/how-to-install-nodebb-on-ubuntu-16-04/</link>
					<comments>https://www.installing.in/how-to-install-nodebb-on-ubuntu-16-04/#comments</comments>
		
		<dc:creator><![CDATA[Rajeev]]></dc:creator>
		<pubDate>Thu, 24 May 2018 18:29:10 +0000</pubDate>
				<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Webapp]]></category>
		<category><![CDATA[Forum]]></category>
		<category><![CDATA[mongodb]]></category>
		<category><![CDATA[nodeBB]]></category>
		<category><![CDATA[nodeJs]]></category>
		<category><![CDATA[redis]]></category>
		<guid isPermaLink="false">https://www.installing.in/?p=373</guid>

					<description><![CDATA[<p>NodeBB is a nodejs based modern style forum system that uses MongoDB as a database and can also work with the Redis database. Installation of nodeBB requires a VPS or... </p>
<p>The post <a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-16-04/">How to install nodeBB on Ubuntu 16.04</a> appeared first on <a href="https://www.installing.in">Installing.in</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>NodeBB is a nodejs based modern style forum system that uses MongoDB as a database and can also work with the Redis database. Installation of nodeBB requires a VPS or dedicated server with root access. It can not be installed on the conventional cPanel based hosting. If you don&#8217;t already have a VPS then try digitalocean by <a href="https://goo.gl/Of63YW" target="_blank" rel="noopener noreferrer">clicking on this link</a> and you will get 10$ free credit for playing around.</p>
<p>For installing nodeBB with Nginx reverse proxy you will need to install these components:</p>
<ol>
<li>NodeJS</li>
<li>MongoDB</li>
<li>Git</li>
<li>NodeBB forum software</li>
<li>Nginx</li>
</ol>
<p>We will install them one by one by configuring each one along the way.</p>
<p>For this tutorial, I will be using <a href="https://goo.gl/Of63YW" target="_blank" rel="noopener noreferrer">digitalocean&#8217;s</a> 1 GB droplet at their Bangalore datacenter.</p>
<p><strong>1. Installing NodeJS:</strong></p>
<p>At this time the nodeBB team suggests we should install nodejs version 8 for nodeBB. Use these commands to install it</p>
<pre>curl <span class="hljs-operator">-s</span>L https://deb.nodesource.com/setup_8.x | sudo -E bash - 

sudo apt-get install -y nodejs</pre>
<p>After installing verify your nodejs and npm version:</p>
<pre>node -v  
npm -v</pre>
<p>You will get output like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodejs-version-check.png?ssl=1"><img data-recalc-dims="1" decoding="async" class="aligncenter size-full wp-image-375" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodejs-version-check.png?resize=332%2C75&#038;ssl=1" alt="nodejs-version-check" width="332" height="75" srcset="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodejs-version-check.png?w=332&amp;ssl=1 332w, https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodejs-version-check.png?resize=326%2C75&amp;ssl=1 326w" sizes="(max-width: 332px) 100vw, 332px" /></a></p>
<p><strong>2. Installing MongoDB:</strong></p>
<p>We will be installing MongoDB version 3.6 in this tutorial. Use these steps to install:</p>
<p><strong>2.1:</strong> Import public key:</p>
<pre>sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5</pre>
<p><strong>2.2:</strong> Create a list file for MongoDB:</p>
<pre>echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list</pre>
<p><strong>2.3:</strong> Reload local package database:</p>
<pre>sudo apt-get update</pre>
<p><strong>2.4:</strong> Install MongoDB packages:</p>
<pre>sudo apt-get install -y mongodb-org</pre>
<p>Verify MongoDB version:</p>
<pre>mongod --version</pre>
<p>You will get output like this: <a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongodb-version-check.png?ssl=1"><img data-recalc-dims="1" fetchpriority="high" decoding="async" class="aligncenter size-full wp-image-377" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongodb-version-check.png?resize=445%2C158&#038;ssl=1" alt="mongodb-version-check" width="445" height="158" /></a></p>
<p><strong>2.5: Configure MongoDB:</strong></p>
<p><strong>2.5.1:</strong> Open mongo shell:</p>
<pre>mongo</pre>
<p>only if it fails to open shell then try this command and try the above command again to enter shell:</p>
<pre>sudo service mongod restart</pre>
<p><strong>2.5.2:</strong> Switch to the built-in <code>admin</code> database:</p>
<pre><span class="hljs-keyword">use</span> admin</pre>
<p><strong>2.5.3:</strong> Creating users and setting passwords:</p>
<p>Here we will create an administrative user for MongoDB, create a new database for nodeBB and create another user for this newly created database</p>
<p><strong>2.5.3.1:</strong> Create an administrative user by using this command:</p>
<pre>db.createUser( { <span class="hljs-string">user:</span> <span class="hljs-string">"admin"</span>, <span class="hljs-string">pwd:</span> <span class="hljs-string">"<span style="color: #ff0000;">&lt;Enter a secure password&gt;</span>"</span>, <span class="hljs-string">roles:</span> [ { <span class="hljs-string">role:</span> <span class="hljs-string">"readWriteAnyDatabase"</span>, <span class="hljs-string">db:</span> <span class="hljs-string">"admin"</span> }, { <span class="hljs-string">role:</span> <span class="hljs-string">"userAdminAnyDatabase"</span>, <span class="hljs-string">db:</span> <span class="hljs-string">"admin"</span> } ] } )</pre>
<p><strong>*</strong>replace <span class="hljs-string"><span style="color: #ff0000;">&lt;Enter a secure password&gt; </span></span>with your chosen password.</p>
<p><strong>2.5.3.2:</strong> Create new database for nodeBB by using this command:</p>
<pre><span class="hljs-keyword">use</span> nodebb</pre>
<p>Now create user and password for this new database. This will be used to install nodebb.</p>
<pre>db.createUser( { <span class="hljs-string">user:</span> <span class="hljs-string">"nodebb"</span>, <span class="hljs-string">pwd:</span> <span class="hljs-string">"<span style="color: #ff0000;">&lt;Enter a secure password&gt;</span>"</span>, <span class="hljs-string">roles:</span> [ { <span class="hljs-string">role:</span> <span class="hljs-string">"readWrite"</span>, <span class="hljs-string">db:</span> <span class="hljs-string">"nodebb"</span> }, { <span class="hljs-string">role:</span> <span class="hljs-string">"clusterMonitor"</span>, <span class="hljs-string">db:</span> <span class="hljs-string">"admin"</span> } ] } )</pre>
<p><strong>*</strong>again replace <span class="hljs-string"><span style="color: #ff0000;">&lt;Enter a secure password&gt; </span></span>with your chosen password.</p>
<p><strong>2.5.4:</strong> Exit mongo shell:</p>
<pre><span class="hljs-title">quit</span><span class="hljs-params">()</span></pre>
<p>The screen should look like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongodb-create-user-and-db.png?ssl=1"><img data-recalc-dims="1" decoding="async" class="aligncenter wp-image-378" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongodb-create-user-and-db.png?resize=634%2C380&#038;ssl=1" alt="mongodb-create-user-and-db" width="634" height="380" /></a></p>
<p><strong>2.5.5:</strong> Enable database authorization in the MongoDB configuration file:</p>
<p>Edit MongoDB config file by using nano:</p>
<pre>nano /etc/mongod.conf</pre>
<p>Move the cursor to the bottom of the file and paste these lines:</p>
<pre><span class="hljs-attribute">security</span>: 
<span class="hljs-attribute">    authorization</span>: enabled

</pre>
<p>remember indentation in configuration files matter. If indentations are the wrong MongoDB will fail to restart.</p>
<p>Your screen should look like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongo-conf-nano-edit.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-387" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongo-conf-nano-edit.png?resize=611%2C460&#038;ssl=1" alt="mongo-conf-nano-edit" width="611" height="460" srcset="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongo-conf-nano-edit.png?w=1026&amp;ssl=1 1026w, https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mongo-conf-nano-edit.png?resize=320%2C240&amp;ssl=1 320w" sizes="auto, (max-width: 611px) 100vw, 611px" /></a></p>
<p>Now</p>
<p>press <code>ctrl + O</code> then <code>enter</code> to save</p>
<p>press <code>ctrl + X</code> to exit nano</p>
<p><strong>2.5.6: </strong>Restart MongoDB</p>
<pre>sudo systemctl restart mongod</pre>
<p><strong>2.5.7:</strong> Verify the administrative user created earlier can connect:</p>
<pre>mongo -u admin -p your_password --authenticationDatabase=admin</pre>
<p>if everything is good you will see a screen like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mondodb-admin-connect.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-379" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/mondodb-admin-connect.png?resize=732%2C72&#038;ssl=1" alt="mondodb-admin-connect" width="732" height="72" /></a></p>
<p>Quit MongoDB shell by using</p>
<pre>quit()</pre>
<p><strong>3. Install Git:</strong></p>
<p>This is a short and simple step. Just run this command:</p>
<pre>sudo apt-get install -y git</pre>
<p>There are chances git is already installed on your system. In either case move to the next step.</p>
<p><strong>4. Install NodeBB:</strong></p>
<p>Make a directory for web content:</p>
<pre>mkdir /var/www</pre>
<p>Go to the newly created directory by using:</p>
<pre>cd /var/www</pre>
<p>Clone nodeBB in this directory by this command:</p>
<pre>git clone -b v<span style="color: #ff0000;">1.9.3</span> https://github.com/NodeBB/NodeBB.git nodebb</pre>
<p><strong>*</strong>replace v1.9.3 with the latest version listed <a href="https://github.com/NodeBB/NodeBB/releases">here</a>.</p>
<p>Enter NodeBB directory with</p>
<pre>cd nodebb</pre>
<p>Initiate the installation by using this command:</p>
<pre>./nodebb setup</pre>
<p>This will install modules from npm and then enter the setup utility.</p>
<p>You will be asked a few questions regarding the database and the username password. Most of the default options will do. You will need to enter the username and password we set in step 2.5.3.2 that is the name of the username and password for the nodebb database we created.</p>
<p>After the database setup, it will ask for the credentials for the admin user for the new forum.</p>
<p>Don&#8217;t get confused. Your setup screen will look like this. I have marked the places where you will need to enter information with arrows. For the rest of the places just hit enter.</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodebb-setup-marked.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-381" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodebb-setup-marked.png?resize=670%2C349&#038;ssl=1" alt="nodebb-setup-marked" width="670" height="349" /></a></p>
<p>&nbsp;</p>
<p>This will install the NodeBB.</p>
<p>Now start NodeBB by this command:</p>
<pre>./nodebb start</pre>
<p>Now you can view your freshly installed nodeBB forum in the browser by going to address:</p>
<pre>http://<span style="color: #ff0000;">your.server.ip.address</span>:4567</pre>
<p><strong>*</strong>Replace the red text with your server&#8217;s IP address.</p>
<p>Here 4567 is the port number.</p>
<p>&nbsp;</p>
<p>You will see your new forum like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodebb-home-page.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-388" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodebb-home-page.png?resize=675%2C345&#038;ssl=1" alt="nodebb-home-page" width="675" height="345" /></a></p>
<p><strong>5. Installing Nginx</strong></p>
<p>In this step, we will install the Nginx web server and configure it so that you can access the forum using your domain name.</p>
<p><strong>5.1:</strong> Add Nginx repository:</p>
<pre>sudo add-apt-repository ppa:nginx/stable</pre>
<p>Hit enter when it asks.</p>
<p><strong>5.2:</strong> Update the local package database and install Nginx:</p>
<pre>sudo apt-get update</pre>
<pre>sudo apt-get install -y nginx</pre>
<p>Nginx is now installed. Verify it by using the command:</p>
<pre>nginx -v</pre>
<p>it will give something like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nginx-version-check.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-391" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nginx-version-check.png?resize=425%2C43&#038;ssl=1" alt="nginx-version-check" width="425" height="43" /></a></p>
<p>Start Nginx by using this command:</p>
<pre>sudo systemctl start nginx</pre>
<p><strong>5.3:</strong> Configure Nginx:</p>
<p>Go to Nginx sites-available directory</p>
<pre><span class="hljs-built_in">cd</span> /etc/nginx/sites-available</pre>
<p>create a new configuration file using this command:</p>
<pre>sudo nano <span style="color: #ff0000;">forum.example.com</span></pre>
<p><strong>*</strong>Change <span style="color: #ff0000;">forum.example.com </span>with your domain name.</p>
<p>Paste this configuration</p>
<pre>server {
    listen 80;

    server_name <span style="color: #ff0000;">forum.example.com<span style="color: #000000;">;</span></span>

    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://127.0.0.1:4567;
        proxy_redirect off;

        # Socket.IO Support
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
    }
}</pre>
<p><strong>*</strong>Again change the <span style="color: #ff0000;">forum.example.com </span>with your domain name. Your configuration file should look like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nginx-config-file.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-396" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nginx-config-file.png?resize=619%2C412&#038;ssl=1" alt="nginx-config-file-nodebb" width="619" height="412" /></a></p>
<p>press <code>ctrl + O</code> then <code>enter</code> to save</p>
<p>press <code>ctrl + X</code> to exit nano</p>
<p>Now enter this command to go to sites-enabled directory:</p>
<pre><span class="hljs-built_in">cd</span> ../sites-enabled</pre>
<p>now link the configuration file from here:</p>
<pre>sudo ln <span class="hljs-operator">-s</span> ../sites-available/forum.example.com</pre>
<p>Reload Nginx by this:</p>
<pre>sudo systemctl reload nginx</pre>
<p>Now you can see your forum by entering your domain in a browser.</p>
<p>&nbsp;</p>
<p>Just one last little thing to do to fix frequent disconnection error.</p>
<p>Go to nodebb directory:</p>
<pre>cd /var/www/nodebb</pre>
<p>Open config.json in nano</p>
<pre>nano config.json</pre>
<p>Change the localhost:4567 with your domain name. It should look like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodebb-cconfig-json.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-394" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2018/05/nodebb-cconfig-json.png?resize=585%2C352&#038;ssl=1" alt="nodebb-cconfig-json" width="585" height="352" /></a></p>
<p>Enter your domain name where I have put http://forum.installing.in. Do not delete the parentheses(&#8220;&#8221;)</p>
<p>press <code>ctrl + O</code> then <code>enter</code> to save</p>
<p>press <code>ctrl + X</code> to exit nano</p>
<p>restart nodeBB by:</p>
<pre>./nodebb restart</pre>
<p>If all went well you will now have a fully functional ubuntu + nodeBB + Nginx setup. Visit your forum by entering your domain in a browser and you can log in as administrator by using the username password we set in the setup process.</p>
<p>Enjoy your new nodeBB forum 🙂</p>
<p>If you have any questions do let me know in the comments below.</p>
<p>The post <a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-16-04/">How to install nodeBB on Ubuntu 16.04</a> appeared first on <a href="https://www.installing.in">Installing.in</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.installing.in/how-to-install-nodebb-on-ubuntu-16-04/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">373</post-id>	</item>
		<item>
		<title>How to install Letsencrypt with NobeBB and Nginx</title>
		<link>https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/</link>
					<comments>https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/#comments</comments>
		
		<dc:creator><![CDATA[Rajeev]]></dc:creator>
		<pubDate>Wed, 18 May 2016 16:41:47 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Webapp]]></category>
		<category><![CDATA[letsencrypt]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[nginx nodebb]]></category>
		<category><![CDATA[nodeBB]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">https://www.installing.in/?p=34</guid>

					<description><![CDATA[<p>In my last tutorial I wrote&#160;about how to install nodeBB on ubuntu 14.04 and use nginx as reverse proxy to serve nodeBB. In this tutorial we will install letsencrypt SSL... </p>
<p>The post <a href="https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/">How to install Letsencrypt with NobeBB and Nginx</a> appeared first on <a href="https://www.installing.in">Installing.in</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In my last tutorial I wrote&nbsp;about how to install nodeBB on ubuntu 14.04 and use nginx as reverse proxy to serve nodeBB. In this tutorial we will install letsencrypt SSL certificate to make sure our nodeBB forum is served over secure https connection.</p>
<p>In this series:</p>
<ul>
<li><a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/">How to Install NodeBB on Ubuntu 14.04&nbsp;</a>&nbsp;(Previous)</li>
<li><a href="https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/">How to install Letsencrypt with NobeBB and Nginx</a>&nbsp;(This tutorial)</li>
<li><a href="https://www.installing.in/how-to-set-up-letsencrypt-auto-renewal/">How to Set up Letsencrypt Auto Renewal</a>&nbsp;(Later)</li>
</ul>
<p><span style="line-height: 1.5;">Steps you need to follow:</span></p>
<ol>
<li>Install nodeBB forum</li>
<li>Install nginx server</li>
<li>Install letsencrypt client</li>
<li>Obtain&nbsp;letsencrypt SSL certificate</li>
<li>Configure nginx to to use the SSL certificate</li>
</ol>
<p><strong>For first and second steps see this tutorial &#8211;&gt;<a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/">How to Install NodeBB on Ubuntu 14.04</a>.</strong></p>
<h3>Install Letsencrypt client:</h3>
<p>Currently best way to install letsencrypt on ubuntu is to clone letsencrypt repository from github. So we will first install git and bc on our system.</p>
<pre>sudo apt-get update</pre>
<pre>sudo apt-get -y install git bc</pre>
<p>Now clone letsencrypt repository</p>
<pre>sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt

</pre>
<p>You can find copy of letsencrypt repository in the&nbsp;/opt/letsencrypt folder.</p>
<p>You have successfully installed letsencrypt client on your system.</p>
<h3>Obtain letsencrypt SSL certificate:</h3>
<p>We will be using Webroot plugin to obtain SSL certificate.</p>
<p>Webroot plugin works by placing a special file in the <code>/.well-known</code> directory within your document root, which letsencrypt will open for validation. You need to allow access to this <code>/.well-known</code> directory.</p>
<pre>sudo nano /etc/nginx/sites-available/default</pre>
<p>inside the nodebb server block we created in last tutorial add this location block:</p>
<pre> location ~ /.well-known {
          allow all;
 }</pre>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_90%C3%9729.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-41" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_90%C3%9729.png?resize=655%2C436&#038;ssl=1" alt="rv_—_root_nodebbtest___opt_letsencrypt_—_ssh_—_90×29" width="655" height="436"></a></p>
<p>press <code>ctrl+O</code> then <code>enter</code> to save</p>
<p>press <code>ctrl+x</code> to exit</p>
<p>Reload nginx to load the new configuration.</p>
<pre>sudo service nginx reload</pre>
<p>Now that we have done the initial setup it&#8217;s time to obtain the actual certificate.</p>
<p>Go to letsencrypt &nbsp;client directory by entering this command:</p>
<pre>cd /opt/letsencrypt</pre>
<p>Run this command to obtain certificate for your domain &nbsp;(replace <span style="color: #ff0000;">red text</span> with your domain):</p>
<pre>./letsencrypt-auto certonly -a webroot --webroot-path=<span class="highlight">/usr/share/nginx/html</span> -d <span class="highlight" style="color: #ff0000;">example.com</span> -d <span class="highlight" style="color: #ff0000;">www.example.com</span></pre>
<p>You will be prompted for some information. Exact prompts depends on whether you have used letsencrypt earlier on your system or not.</p>
<p>It will ask for your email address which will be used for notices and lost key recovery.</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_95%C3%9725.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-44" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_95%C3%9725.png?resize=690%2C380&#038;ssl=1" alt="rv_—_root_nodebbtest___opt_letsencrypt_—_ssh_—_95×25" width="690" height="380"></a></p>
<p>You will need to agree to Letsencrypt terms of service.</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_95%C3%9725-2.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-43" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_95%C3%9725-2.png?resize=690%2C380&#038;ssl=1" alt="rv_—_root_nodebbtest___opt_letsencrypt_—_ssh_—_95×25 2" width="690" height="380"></a></p>
<p>if everything goes successfully you will see something like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_93%C3%9711.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-42" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_93%C3%9711.png?resize=676%2C184&#038;ssl=1" alt="rv_—_root_nodebbtest___opt_letsencrypt_—_ssh_—_93×11" width="676" height="184"></a></p>
<p>Note the path of your certificate. this is needed in next step.</p>
<h3>Configure nginx to to use the SSL certificate:</h3>
<p>Now we need to edit the nginx configuration so nginx uses the freshly generated SSL certificate to serve our nodeBB forum over https connection.</p>
<pre>sudo nano /etc/nginx/sites-available/default</pre>
<p>Delete the server block we created in last tutorial and replace it with the code block below.</p>
<p>Replace with your domain where&nbsp;marked red.</p>
<pre>server {
listen 80;
 server_name <span style="color: #ff0000;">example.com www.example.com</span>;
 return 301 https://$host$request_uri;
}
server {
 listen 443 ssl;
 server_name <span style="color: #ff0000;">example.com www.example.com</span>;
 ssl_certificate /etc/letsencrypt/live/<span style="color: #ff0000;">example.com</span>/fullchain.pem;
 ssl_certificate_key /etc/letsencrypt/live/<span style="color: #ff0000;">example.com</span>/privkey.pem;
 location / {
 proxy_set_header X-Real-IP $remote_addr;
 proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 proxy_set_header Host $http_host;
 proxy_set_header X-NginX-Proxy true;
 proxy_pass http://127.0.0.1:4567/;
 proxy_redirect off;
 # Socket.IO Support
 proxy_http_version 1.1;
 proxy_set_header Upgrade $http_upgrade;
 proxy_set_header Connection "upgrade";
 }
 location ~ /.well-known {
 allow all;
 }
}

</pre>
<p>It should look like this:</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_96%C3%9731-2.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-45" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/rv_%E2%80%94_root_nodebbtest___opt_letsencrypt_%E2%80%94_ssh_%E2%80%94_96%C3%9731-2.png?resize=697%2C464&#038;ssl=1" alt="rv_—_root_nodebbtest___opt_letsencrypt_—_ssh_—_96×31 2" width="697" height="464"></a></p>
<p>Now reload nginx to put changes into effect.</p>
<pre>sudo service nginx reload

</pre>
<p>Check your forum by visiting it using https</p>
<pre>https://www.example.com</pre>
<p>&nbsp;</p>
<p><a href="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/Home___NodeBB.png?ssl=1"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter size-full wp-image-40" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/05/Home___NodeBB.png?resize=760%2C471&#038;ssl=1" alt="Home___NodeBB" width="760" height="471"></a></p>
<p>Thats it. Hope it help</p>
<p>Next in series:</p>
<ul>
<li><a href="https://www.installing.in/how-to-set-up-letsencrypt-auto-renewal/">How to Set up Letsencrypt Auto Renewal</a></li>
</ul>
<p>The post <a href="https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/">How to install Letsencrypt with NobeBB and Nginx</a> appeared first on <a href="https://www.installing.in">Installing.in</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">34</post-id>	</item>
		<item>
		<title>How to Install NodeBB on Ubuntu 14.04</title>
		<link>https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/</link>
					<comments>https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/#comments</comments>
		
		<dc:creator><![CDATA[Rajeev]]></dc:creator>
		<pubDate>Sat, 09 Apr 2016 10:57:57 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[Webapp]]></category>
		<category><![CDATA[Forum]]></category>
		<category><![CDATA[mongodb]]></category>
		<category><![CDATA[nodeBB]]></category>
		<category><![CDATA[nodeJs]]></category>
		<category><![CDATA[redis]]></category>
		<category><![CDATA[ubuntu]]></category>
		<guid isPermaLink="false">http://271a0323-9bbc-4e9e-8d61-7bed7172bcce</guid>

					<description><![CDATA[<p>An updated version of this tutorial available at installation of nodeBB on ubuntu 16.04. I recommend you follow that. NodeBB is a modern style forum software built on latest technologies... </p>
<p>The post <a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/">How to Install NodeBB on Ubuntu 14.04</a> appeared first on <a href="https://www.installing.in">Installing.in</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p style="text-align: left;"><strong>An updated version of this tutorial available at<a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-16-04/"> installation of nodeBB on ubuntu 16.04</a>. I recommend you follow that.</strong></p>
<p>NodeBB is a modern style forum software built on latest technologies like NodeJS, Redis and MongoDB. So you will not be able to install it on common cPanel based shared hosting. You will need a VPS or Dedicated server of your own to install it. If you haven&#8217;t already got an server I suggest you go to digitalocean(<a href="https://goo.gl/Of63YW" target="_blank" rel="noopener noreferrer">use this link to signup</a> and you will get $10 to test with) and create a VPS.</p>
<p>In this series:</p>
<ul>
<li><a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/">How to Install NodeBB on Ubuntu 14.04 </a> (This page)</li>
<li><a href="https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/">How to install Letsencrypt with NobeBB and Nginx</a> (Next)</li>
<li><a href="https://www.installing.in/how-to-set-up-letsencrypt-auto-renewal/">How to Set up Letsencrypt Auto Renewal</a> (Later)</li>
</ul>
<p>For this tutorial I am starting with a <a href="https://goo.gl/Of63YW" target="_blank" rel="noopener noreferrer">digitalocean</a> 1 GB RAM server at New york.</p>
<p>Here are the steps:</p>
<p><strong>Install LTS version of Node.js using these command:</strong></p>
<pre>curl <span class="hljs-operator">-s</span>L https://deb.nodesource.com/setup_8.x | sudo -E bash -</pre>
<p>Above command will add nodejs repository.</p>
<p>Install nodejs by executing this command:</p>
<pre>apt-get install nodejs</pre>
<p><strong>Install MongoDB database server</strong></p>
<p>Install MongoDB server by issuing this command:</p>
<pre>sudo apt-get install -y git nodejs mongodb build-essential</pre>
<p><strong>Install NodeBB</strong></p>
<p>You can Install nodeBB anywhere you like. Here we will make a directory in /var/www/ :</p>
<pre>mkdir /var/www</pre>
<p>Now cd into that directory:</p>
<pre>cd /var/www</pre>
<p>Clone nodeBB in this directory by this command:</p>
<pre>git clone -b v1.9.3 https://github.com/NodeBB/NodeBB.git nodebb</pre>
<p>replace v1.9.3 with the latest version listed <a href="https://github.com/NodeBB/NodeBB/releases">here</a>. Above command will clone the nodebb files in &#8216;nodebb&#8217; directory. Install all the nodeBB dependencies by this command:</p>
<pre>cd nodebb</pre>
<pre>npm install --production</pre>
<p>Start nodeBB web Installer:</p>
<pre>npm start</pre>
<p>Open the web Installer by going to http://yourip:4567 or http://example.com:4567. For example if you are installing it on local machine your address will be <a href="http://127.0.0.1:4567">http://127.0.0.1:4567</a>.</p>
<p><strong>Finish the web Installation</strong></p>
<p>When you visit the proper address as shown above you will be presented with web interface with 2 sections. First section is for forum admins credentials. <a href="/wp-content/uploads/2016/04/xNodeBB_Web_Installer.png" rel="attachment wp-att-11"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-11" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer.png?resize=517%2C367&#038;ssl=1" alt="NodeBB admin data" width="517" height="367" srcset="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer.png?w=885&amp;ssl=1 885w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer.png?resize=300%2C213&amp;ssl=1 300w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer.png?resize=768%2C545&amp;ssl=1 768w" sizes="auto, (max-width: 517px) 100vw, 517px" /></a> And second section is for database configuration: <a href="/wp-content/uploads/2016/04/xNodeBB_Web_Installer-2-1.png" rel="attachment wp-att-10"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-10" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer-2-1.png?resize=523%2C422&#038;ssl=1" alt="nodeBB database credentials" width="523" height="422" srcset="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer-2-1.png?w=779&amp;ssl=1 779w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer-2-1.png?resize=300%2C242&amp;ssl=1 300w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xNodeBB_Web_Installer-2-1.png?resize=768%2C619&amp;ssl=1 768w" sizes="auto, (max-width: 523px) 100vw, 523px" /></a> Enter you Administrator details in first section. In the second section select MongoDB from dropdown menu and leave other fields as it is and press &#8216;Install NodeBB&#8217; button. I will install NodeBB and tell you when finished. Start your forum by issuing this command:</p>
<pre>./nodebb start</pre>
<p>Now you can see your website live on the same address i.e. http://yourip:4567 or http://example.com:4567.</p>
<p>By default nodeBB runs on port 4567 and it is generally advised that you should not run nodejs apps on port 80 as it is a security risk.</p>
<p>To get nodeBB running on port 80 or in normal language running it on http://example.com you need to setup nginx as your web proxy.</p>
<p><strong>Configuring nginx</strong></p>
<p>nodeBB requires nginx v1.3.13 or greater. Install nginx using this command:</p>
<pre>apt-get install nginx</pre>
<p>check your nginx version:</p>
<pre>nginx -V</pre>
<p>nginx served sites are contained in a server block. Add your server block in nginx configuration file by using this command:</p>
<pre>nano /etc/nginx/sites-available/default</pre>
<p>paste below server block at the top</p>
<pre style="font-size: 0.8em; line-height: 1.7;">  
 server {
    listen 80;
    server_name <span style="color: #ff0000;">forum.example.org</span>;
    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_pass http://127.0.0.1:4567/;
        proxy_redirect off;
        # Socket.IO Support
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}
</pre>
<p>Change the server_name from &#8216;<span style="color: #ff0000;">forum.example.org</span>&#8216; to your domain name or your ip address. it should look like this: <a href="https://www.installing.in/wp-content/uploads/2016/04/xrv_-_root_ubuntu-1gb-nyc3-01___etc_nginx_sites-available_-_ssh_-_73-36.png" rel="attachment wp-att-9"><img loading="lazy" decoding="async" class="aligncenter img-responsive wp-image-9" src="/wp-content/uploads/2016/04/xrv_-_root_ubuntu-1gb-nyc3-01___etc_nginx_sites-available_-_ssh_-_73-36.png" alt="nodeBB nginx configuration" width="470" height="468" srcset="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xrv_-_root_ubuntu-1gb-nyc3-01___etc_nginx_sites-available_-_ssh_-_73-36.png?w=536&amp;ssl=1 536w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xrv_-_root_ubuntu-1gb-nyc3-01___etc_nginx_sites-available_-_ssh_-_73-36.png?resize=150%2C150&amp;ssl=1 150w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xrv_-_root_ubuntu-1gb-nyc3-01___etc_nginx_sites-available_-_ssh_-_73-36.png?resize=300%2C300&amp;ssl=1 300w" sizes="auto, (max-width: 470px) 100vw, 470px" /></a> Now restart the nginx server:</p>
<pre>service nginx restart</pre>
<p>Now check your website at http://example.com or http://yourip. <a href="/wp-content/uploads/2016/04/xHome___NodeBB.png" rel="attachment wp-att-8"><img data-recalc-dims="1" loading="lazy" decoding="async" class="aligncenter wp-image-8" src="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xHome___NodeBB.png?resize=494%2C195&#038;ssl=1" alt="nodeBB home page" width="494" height="195" srcset="https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xHome___NodeBB.png?w=1152&amp;ssl=1 1152w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xHome___NodeBB.png?resize=300%2C118&amp;ssl=1 300w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xHome___NodeBB.png?resize=768%2C303&amp;ssl=1 768w, https://i0.wp.com/www.installing.in/wp-content/uploads/2016/04/xHome___NodeBB.png?resize=1024%2C404&amp;ssl=1 1024w" sizes="auto, (max-width: 494px) 100vw, 494px" /></a> Configure and enjoy!</p>
<p>Next in series:</p>
<ul>
<li><a href="https://www.installing.in/how-to-install-letsencrypt-with-nobebb-and-nginx/">How to install Letsencrypt with NobeBB and Nginx</a></li>
<li><a href="https://www.installing.in/how-to-set-up-letsencrypt-auto-renewal/">How to Set up Letsencrypt Auto Renewal</a></li>
</ul>
<p>The post <a href="https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/">How to Install NodeBB on Ubuntu 14.04</a> appeared first on <a href="https://www.installing.in">Installing.in</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.installing.in/how-to-install-nodebb-on-ubuntu-14-04/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6</post-id>	</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Object Caching 23/101 objects using Redis
Page Caching using Disk: Enhanced 
Lazy Loading (feed)
Minified using Disk
Database Caching 2/20 queries in 0.006 seconds using Redis

Served from: installing.in @ 2026-05-21 00:34:31 by W3 Total Cache
-->