Project: WordPress in a (LEMP) box!

There are plenty of scripts in the internet, some of them even open source, that helps us to install WordPress automatically in a (single) server. Bitnami is the most popular among them. However, none of them met my requirements. I have some design considerations, security requirements and performance checklists. Since none of the existing tools met all my principles, I started developing my own tool to set up a (single) WordPress site in a (tiny) server.

Here are my goals in mind when developing such a tool…

Generic Goals

Performance Checklist

  • Redis for object cache (memcached as an alternative / backup)
  • WP Super Cache as full page cache (with Batcache as an alternative / backup)
  • No Apache (long live Apache!)
  • PHP 7.x
  • Nginx
  • Varnish (planned, but no ETA)
    • Why Varnish: to quickly deploy geo-distributed nodes

Security Considerations

  • only ports 80, 443, and port for SSH are open
  • no phoning home
  • no external dependencies (such as third-party repositories)
  • automatic security updates (with an option to update everything)
  • disable password authentication for root
  • Nginx (possibly with Naxsi WAF when h2 issue is resolved)
  • umask 027 or 077
  • ACL integration
  • weekly logwatch (if email is supplied)

Implementation Details

  • agent-less
  • random username (like GoDaddy generates)
  • no extra / third-party packages
  • automatic restart of MySQL (and Varnish) upon failure
  • automatic backup of site (files and DB) to AWS S3
  • Integrated wp-cli
  • Support for version control (git, hg)
  • Composer support

Web Interface

  • Based on OpulencePHP or similar framework
  • LetsEncrypt support (the famous 1-click installation of SSL)
  • Backups download and restoration!


As you may have guessed, there is a huge work involved. Fortunately, I have started going in the right direction due to somewhat clear goals to back me up.

Please check it out in its Github repo…

What’s developed so far is enough for my current needs. I wouldn’t want to spend too much time on this project, if there are no takers. So, I am awaiting some feedback from early adopters. If you are one of them, please comment here on what you think of its various goals. You may also give a thumbs up by staring it in Github. If you used it and if you notice any issue/s, please feel free to open an issue in Github. All feedback is welcomed!

A huge thanks for Mail-In-A-Box for the inspiration!

4 Replies to “Project: WordPress in a (LEMP) box!”

  1. Hello,
    I have question I’m very new to Redis & memcached.
    Why did you choose Redis over memcached? I would like to know.

    1. I don’t remember why I started using Redis over memcached. I think it is because of variety of options that I had with Redis to integrate it with WordPress (as WP Object Cache).

Leave a Reply

Your email address will not be published. We use cookies to prevent spam comments. Required fields are marked *