CloudatCost Project: Node Application Server
CloudatCost has been awesome and has provided Grove Social / MangoLassi with a staging instance to use for testing MangoLassi updates and changes. This will be very important to the community going forward as it should allow us far better reliability and allows us to work on features that we previously had to avoid due to disruption.
So we are attempting to manually replicate the deployment environment on a Dev3 instance. Our starting point is Ubuntu 14.04.2 LTS but we need to get it updated to the latest. We run on Ubuntu 14.10 to get the latest performance into the community.
We start with system updates...
apt-get update && apt-get upgrade
My default, CloudatCost sets up Ubuntu to be LTS (Long Term Support) release only. We need to change that so that it switches to rolling updates, aka "normal" configuration. We can do this with a single command...
sed -i s/Prompt=lts/Prompt=normal/ /etc/update-manager/release-upgrades
Now we can update the system....
And we can just follow the on-screen prompts. Because console access is available, and because this is a fresh system being updated that can simply be re-imaged, there is no reason to worry about the recommended secondary SSH daemon or the firewall change. This update will run for a very long time. Do not be surprised.
You will need to reboot. And then I install my standard packages.
apt-get install sysstat htop fail2ban
Now we need our application and database platforms.
apt-get install mongodb-server nodejs nginx
And there we go. A fully functional Ubuntu 14.10 Node / MongoDB platform. Plus Nginx which is not strictly needed but would be expected as a proxy in most cases. For most people, MongoDB would not be used. This is only for extremely large scale systems. Typically you would use Redis, that is the default.
Now we just need some application dependencies...
apt-get install git nodejs-legacy npm redis-server imagemagick build-essential
We could skip Redis here if we were just running on MongoDB but we are looking to move to both for scaling purposes.
Now we can install NodeBB.
cd /opt git clone -b v0.6.x https://github.com/NodeBB/NodeBB.git mangolassi cd mangolassi npm install
Sounds like ML has found a great Business Partner!
Awesome job whomever found them!
Aww.. I thought someone reached out to them and said "hey we are talking about you over at ML, why not stick your head in?"