Jon Bloor

October 6, 2023

Which Command Line Script is best for WordPress?

A while ago I stumbled on EasyEngine. A script to easily create WordPress sites in containers and so found myself trying it out. I lost all of my sites for some unknown, unresolved issue.

However, my curiosity got the better of me and took me on a journey to look at other scripts and also to follow the development and use of them. In this article, I will be comparing the following scripts and linking them to my installation guides.

  • EasyEngine
  • SlickStack
  • Webinoly
  • WordOps
  • And for comparison... a site in a decent cPanel webhost. 

For several reasons, I want a few websites to be separate from others. I could sign up for another multi-site WebHost but decided to use a virtual server and Cloudflare.

For this test, I created similar Droplets at DigitalOcean and followed the installation guides provided by the script maintainers. You'll find the steps in each of the guides, as in some cases, the instructions were lacking or did not include all of the elements.

Once the scripts were set up, I added a "spare" domain name to each and installed the recommended options, usually to cover SSL and caching.

Within WordPress, I removed any surplus themes, inactive plugins and followed any moping up, such as configuring the plugins mentioned. I installed the Kadence theme from the WordPress repository and then a "Full Site" from a starter theme provided by them. 

Finally, I ran Google's Page Speed Insight test a few times to allow caching to be configured and logged the score below.

Solution | Mobile Speed | Desktop Speed
EasyEngine | 90/100 | 98/100
SlickStack | 90/100 | 98/100
Webinoly | 89/100 | 98/100
WordOps | 89/100 | 98/100
cPanel | 90/100 | 98/100

EasyEngine

I created my own guide to setting up EasyEngine with Cloudflare. Having not used the script for some time, I was pleased to see the breadth of options and enjoyed the comprehensive documentation.


Positive Points

  • Long established
  • Docker allows the separation of sites
  • Out of the box integration with CloudFlare
  • Domain Parking is supported

Negative Points

  • Previously lost all sites on a server
  • Docker approach has made the script unpopular with some
  • No Cloning/Staging

Conclusion

I will personally monitor the stability of my test site on the EasyEngine setup to allay my concerns about stability. The Docker-based "container" approach means that this script may suit agencies who are looking to ensure segregation between clients.

SlickStack

SlickStack is a script with attitude! I like their bold stance but worry about the long list of blacklisted plugins (and required ones too). The big challenge for me, on a budget, is that they support only one site per server. I wrote a guide on SlickStack setup with Cloudflare on DigitalOcean.

Positive Points

  • Really easy to setup
  • Admin area is uncluttered due to the plugins installed
  • Cloudflare is mandatory

Negative Points

  • Long list of scripts blacklisted (plus a big list being considered for blocking
  • Cloudflare is required
  • Only one site per server

Conclusion

SlickStack is very good at what it does but it is probably not for me as it is a bit too prohibitive.

Webinoly

This is the script I want to like the most. Initially. this was because of the detailed tutorial. However, the more I use the script, the cleverer it appears. My hesitation was the apparent lack of support for Cloudflare could have caused me to discount this option. With a small amount of research and trial and error, I have been able to set up Cloudflare with Webinoly and it works really well.

Positive Points

  • Great documentation
  • Supports staging sites, cloning and parked domains
  • Actively developed
  • Super fast out of the box 

Negative Points

  • Cloudflare took a bit of figuring out initially

Conclusion

This is the script I will be continuing to use (in production sites on another box). It works well, is actively maintained and has a good set of features.

WordOps

WordOps is a well-supported fork from EasyEngine - when the team at EE adopted the docker model, many users were frustrated and this is the strongest successor of the original approach.

This script offers options for a number of caching plugins, UFW firewall and non-Wordpress sites too.

Positive Points

  • Popular script that is well maintained
  • Supports parked domains
  • Easy to use

Negative Points

  • No support for staging and cloning yet

Conclusion

This script is a solid workhorse and definitely one to recommend, although I opted for another choice, I have used WordOps in production for a number of months successfully.

So, what's next?

Hopefully, this post has inspired you to try one or two of these and see which works best for your needs. I will personally be looking at enhancing the speed of the sites in these instances, by further configuration of the servers and scripts.

About Jon Bloor

I am a father of four boys, husband, Group Scout Leader and a wordpress affectionado.  Professionally, I worked in local government for 20 years, museums and visitor attractions for longer and am a Fellow of the Association of Accounting Technicians.  Now, I help membership organisations and professional bodies with their CRM, community and digital software