Sunday, January 31, 2016

Installing the whole stack using EasyEngine

This product seems to have promise. It manages much of the performance configuration needed to deliver a fast WordPress experience to end-users. Perfect, no. Productive, yes.

Start with getting EE installed on your server.
wget -qO ee rt.cx/ee && sudo bash ee

EE comes with a large number of configurations, not all of them WordPress. If you need just an HTML site, a PHP site, or PHP with MySQL backend, those are all available also.

EE can install WordPress as a single site or as a multisite installation. There's much discussion about subdomain vs. subdirectory multisite installation. I'm installing as a subdirectory multisite.

You also have the option of installing WordPress with W3TotalCache, WPSuperCache, Nginx Fastcgi-Cache, or Redis Cache. The last one is experimental as of the post date. I'm installing Nginx FastCGI-Cache. Additionally, I'm adding HHVM and using FastCGI-Cache as a fallback option.

Some additional installation configuration needs to occur:
  • Add custom Administrator user name and password
  • Add custom Database name
  • Add custom Database table prefix
  • Add custom Database Administrator user name and password
All of these customizations happen in the /etc/ee/ee.conf file, except for the first one.

# Changes the user ID and password for logging into the EE admin panel.
ee secure --auth [uid] [pwd]

Database name and table prefix and boolean flags. Set both to true of you want the WordPress install screen to prompt you for those pieces of information.
sudo nano /etc/ee/ee.conf

Replace

db-name = 
db-user = 
prefix = 
user = 
password = 
email = 

with 

db-name = true
db-user = true
prefix =  true
user = <user name>
password = <password>
email = <email>

<replace with your string>

Each time you create a new instance of a site with EE, these values will be used. I want to set a strong UID and PWD for both the database and the administrator. I also want to have control over table prefixes.

Put together the command for the set up and configuration you want.
sudo ee site create example.com --wpsubdir --wpfc --hhvm --pagespeed

(Pagespeed has been deprecated)

This installs WordPress in the root of the web server in a directory example.com and includes Nginx Fastcgi-cache, Nginx HHVM and PageSpeed.

If Nginx, MySQL Database, and PHP are not installed, site create will also install them.

If you want to roll back the installation:
ee site delete example.com

removes the site that was installed but not Nginx, MySQL, and PHP.

Getting HHVM to operate as the primary caching tool and using Fastcgi-cache as a fallback caching is all set to go using the --wpfc and --hhvm installed together. They seem to have thought of everything.


No comments:

Post a Comment