Installing Wordpress and NodeBB on Digital Ocean
New to this community, and have been lurking for a few days looking through all the very helpful tips here.
Wanted to know if anyone can help me out with this - I'm wanting to install Wordpress and NodeBB (with NodeBB likely on a sub domain such as forum.website.com) using Digital Ocean.
If anyone can point me in the direction of a comprehensive guide to doing this, I'd truly appreciate it!
Otherwise, if such a guide doesn't exist, any tips would be very much appreciated. I'm new to NodeBB as well as DO, so I'm unsure about things like whether or not this should be done on a single droplet (and where to start in that case).
Again, thanks in advance for any help!
@MarximusMG there is a documentation available (can't post the link because of Askimet...).
It should be able to guide you through the most questions.
@AOKP sorry for the basic question, but do you know what I could search to find it? Don't know why I'm having a hell of a time finding a comprehensive guide. Thanks!
There's a couple of guides to do it various ways. I'm not on a pc or I'd share my links I have bookmarked, but perhaps a rough guide on doing it.
Use a one-click install for WordPress. Set up your WordPress site.
Install Nginx on your server, configure to replace Apache.(optional!)
Install NodeJS and all you need to run NodeBB using below link.
Long, but best way:
Follow above guide or another to install NodeBB. Then for WordPress, you'll need to add PHP and other necessities via the console to your lemp stack, drop WordPress in a directory, point Nginx to it, install your blog.
The former method is far simpler if you don't want the hassle of trying to work through issues with installing WordPress on a server not configured perfectly for it (which there's always some), the latter gives more control and understanding of the setup. It also means you'll be able to identify problems quicker if you know where things are.
If doing the quick way, replacing Apache with Nginx is optional but recommended. Either way you'll have to configure either to point your subdomain and domain to the correct places. Not difficult as there's loads of topics covering them on here.
Sorry this isn't in great detail, I'll get on tomorrow with links for you.
You might be best to install a one-click LEMP stack, then follow the above guide, (except the stuff already installed) to add NodeJS, NPM, Redis and NodeBB.
That way you're already set up for WordPress with PHP & SQL to add right after it.
@Danny-McWilliams Thank you so much for the insight, Danny! I've got a decent amount of experience with Wordpress on shared servers, but it's been quite a humbling experience diving into NodeBB and Digital Ocean (while also trying to throw Wordpress into the mix). I truly appreciate the help.
I'm definitely in favor of doing things the right way, even if that's not the fastest. I'd really like to minimize issues down the road, and am willing to put the work in now. That being said, I'm unfortunately close to clueless in this arena as of now, so the painfully elaborate, step-by-step guides are an absolute lifesaver. (In other words, I'm not afraid of admitting I need my hand held throughout this).
Will be spending a significant amount of time with this tomorrow, and hope to get things set up then. Thanks again!
@MarximusMG simply Google for:
NodeBB docs :)
Also as a tipp of mine. Use HHVM not PHP, as it will be way faster.
@AOKP thanks, will try to see if I can come up with anything.
As I was researching this more last night, I began to realize one of my biggest questions is this: I understand fairly well how each app is set up on its own. LAMP Wordpress setup using Apache2, MySQL, and PHP - I understand that. NodeBB setup with MongoDB - I understand that too (still trying to wrap my head around Nginx, though, as I've never used it).
What is making me paranoid about screwing up somewhere is whether or not I'm making the right choices as I plan to link these two apps. Should I keep Wordpress running on Apache2 and NodeBB running on Nginx or should both just use Nginx? Should I try to make Wordpress work with MongoDB or just go the standard route with MySQL and leave NodeBB on MongoDB?
@MarximusMG well, I would definitely go with NGINX. It is faster and more stable than Apache.
Configuring it for WordPress & NodeBB is fairly easy.
About the databases:
WordPress does not support MongoDB, there you need to use MySQL (MariaDB) for WP and MongoDB for NodeBB.
Both SQL servers can run on the same server and do not need to be additionally configured as they won't interfere with each other.
@AOKP I've been so comfortable with using Apache that NGINX has been fairly intimidating to me, but it's good to be out of my comfort zone on this project. So...
Web Server: NGINX for both Wordpress and NodeBB
Databases MySQL for Wordpress, MongoDB for NodeBB
all installed on the same droplet in Digital Ocean.
Thanks again for your advice!
@MarximusMG yep you can go with that setup. If you want to try hard then configure your system like this:
- NGINX with HTTP/2 support & PageSpeed
- Memcached (for PageSpeed)
- MariaDB (MySQL replacement)
- HHVM (PHP replacement)
This setup should offer an even greater performance
Only NGINX is going to be a bit difficuilt as you have to compile it from Source, if you want to use HTTP/2. Otherwise you can use the pre-compiled version with PageSpeed from RTCamp.
@AOKP as mentioned earlier, I'd like to put in the additional effort wherever possible if there's going to be a noticeable advantage longterm. I'm not into shortcutting things. Problem is, half of your most recent post references things that are completely foreign to me.
I'll give it a shot, though!
@AOKP @Danny-McWilliams Do either of you have experience using EasyEngine to do what I'm trying to do? Just came across it and it seems like it's made for someone like me who's a bit overwhelmed with the steps necessary to have WordPress running on NGINX, but I don't know if there's an obvious downside I'm missing.
@MarximusMG seems interesting, never tried it though. In your case you maybe really want to go with it, unless you want to gain some "manual" experience.
@AOKP I'm thinking I may give it a shot, unless there's any sort of disadvantage you could think of that may be associated with it.
@MarximusMG well I think it is rather about personal preference here. I like to compile everything myself and scale it how I want, 100% after my own needs/configs.
@AOKP makes total sense. As I probably don't have super specific preferences at this point due to my lack of experience with NGINX, I'm thinking this may be a good route. Will post an update after I've spent some time with this.
@AOKP things seem to be going ok with this route, haven't yet finalized things as I'm stuck on a login issue with NodeBB. Will report back here again once that's resolved.
@MarximusMG mind sharing it with us? :D