MultiCloud Marketplace

Ryan Geyer

Wordpress & Email All-In-One

Open in Dashboard

Published by Ryan Geyer on Aug 26, 2012Revision: 7 This component has been superseded. Get the current version here



This is an All-In-One (AIO) server for hosting PHP based web sites/applications, as well as email for one or many domain names (virtual hosting).

LNMP Virtual Hosting

The web hosting environment is a full LNMP stack consisting of;

  • Linux - CentOS 5.8
  • Nginx - 1.2.2
  • MySQL - 5.1.55-community
  • PHP - 5.3.6

Email Virtual Hosting

In addition to the LNMP stack, a Postfix server is installed and configured for virtual hosting of one or many email domains. Currently, the postfix server is configured to relay email for configured email addresses (more information on that below) to one or more other email addresses. I use this to accept email for a domain, and effectively "forward" it to my gmail account where I manage all of my email.



Launching for the first time

If you've just imported this ServerTemplate from the library, here's what you need to know to get started.


  • Database Admin Password

    Pick a secure password for the database administrator. The default administrator username is "administrator". It's possible that you'll never need to use these credentials since the Chef recipes set everything up for you, but it's good to have in case of emergency or for administrative tasks not covered in an operational script etc.

  • Postfix MySQL Database Password

    Pick a secure password for the user account that postfix will use to access the MySQL database. Did I mention that Postfix configuration information is stored in MySQL? I promise, I'll explain later.

  • Total Volume Size (1)

    This server stores all of the data which needs to be persistent either on a separate attached storage volume, or on an LVM partition of your ephemeral storage to ease backups, disaster recovery, and vertical scaling. Specify a volume size here that makes sense for the data you're storing, including MySQL databases and your web site/application html and code files. NOTE: The default is 2GB

  • Backup Lineage (1)

For the attached volume, and for the continuous backups a lineage needs to be specified. This is effectively a name for the data backup, feel free to specify anything for this. For all of the volume management stuff I'm making heavy use of the RightScale "Storage Toolbox", and this input comes from those tools. Take a peek at the documentation and runbook for the "Storage Toolbox" here

  • Web Server Hostname

Some basic tools will get installed and hosted for this server on a particular hostname. These are things like phpmyadmin, and (hopefully, eventually) some web UI tools for managing your server. You can specify the hostname you want this to appear on. I recommend that you use a hostname specific to the management of this server, like etc.

If you're in a hurry, and just wanted to get this up and running quickly, that's all you'll need to know.


  • Cookbook: znc v0.0.1.4

  • Cookbook: zendframework v0.0.1.4

  • Cookbook: yum v0.6.2.4

  • Cookbook: web_apache v12.1.0.4

  • Cookbook: vsftpd v0.0.1.4

  • Cookbook: utils v0.0.1.4

  • Cookbook: uox3 v0.0.1.4

  • Cookbook: unicorn v0.0.2.4

  • Cookbook: sys_ntp v12.1.0.4

  • Cookbook: sys_firewall v12.1.0.4

  • Cookbook: sys_dns v12.1.0.4

  • Cookbook: sys v12.1.0.4

  • Cookbook: svn v0.0.1.4

  • Cookbook: sudo v1.1.1.4

  • Cookbook: skeme v0.1.0.4

  • Cookbook: scheduler v0.0.2.4

  • Cookbook: rvm v0.0.1.4

  • Cookbook: runit v0.13.0.4

  • Cookbook: ruby v0.0.1.4

  • Cookbook: rs_sandbox v0.0.1.4

  • Cookbook: rjg_utils v0.0.1.4

  • Cookbook: rjg_aws v0.0.1.4

  • Cookbook: rightscale v12.1.0.4

  • Cookbook: rightgrid v0.0.1.4

  • Cookbook: repo_svn v12.1.0.4

  • Cookbook: repo_ros v12.1.0.4

  • Cookbook: repo_git v12.1.0.4

  • Cookbook: repo v12.1.0.4

  • Cookbook: rax_rebundler v0.0.1.4

  • Cookbook: rails_enterprise v0.1.1.4

  • Cookbook: rails v0.9.2.4

  • Cookbook: logging v12.1.0.4

  • Cookbook: phpmyadmin v0.0.1.4

  • Cookbook: php5 v0.0.2.4

  • Cookbook: perl v0.10.1.4

  • Cookbook: passenger_apache2 v0.16.3.4

  • Cookbook: openvpn v0.99.2.4

  • Cookbook: openssl v0.1.0.4

  • Cookbook: openldap v0.0.1.4

  • Cookbook: nginx v0.0.1.4

  • Cookbook: mysql v0.0.1.4

  • Cookbook: mrclean v0.0.1.4

  • Cookbook: mongod v0.0.1.4

  • Cookbook: mail_postfix v0.0.2.4

  • Cookbook: logrotate v0.8.1.4

  • Cookbook: logging_syslog_ng v12.1.0.4

  • Cookbook: logging_rsyslog v12.1.0.4

  • Cookbook: apache2 v1.0.0.4

  • Cookbook: app v12.1.0.4

  • Cookbook: app_passenger v12.1.0.4

  • Cookbook: app_php v12.1.0.4

  • Cookbook: app_tomcat v12.1.0.4

  • Cookbook: app_wordpress v0.0.2.4

  • Cookbook: apt v1.4.2.4

  • Cookbook: block_device v12.1.0.4

  • Cookbook: build-essential v1.0.2.4

  • Cookbook: cloudstack v0.0.1.4

  • Cookbook: cron v0.0.1.4

  • Cookbook: databags v0.0.1.4

  • Cookbook: db v12.1.0.4

  • Cookbook: db_mysql v12.1.0.4

  • Cookbook: db_postgres v12.1.0.4

  • Cookbook: deb_package v0.0.1.4

  • Cookbook: ebs_conductor v0.0.3.4

  • Cookbook: erlang v1.0.0.4

  • Cookbook: git v0.8.0.4

  • Cookbook: gitosis v0.0.1.4

  • Cookbook: handbrake v0.0.1.4

  • Cookbook: iptables v0.9.3.4

  • Cookbook: lamp v12.1.0.4

  • Cookbook: lb v12.1.0.4

  • Cookbook: lb_clb v12.1.0.4

  • Cookbook: lb_elb v12.1.0.4

  • Cookbook: lb_haproxy v12.1.0.4

  • Cookbook: lnmp_aio v0.0.1.4

  • Cookbook: rabbitmq v1.4.0.4

  • Cookbook Repo: git:// of RightScale (v12.11.0-LTS) + LNMP

  • Cookbook Repo: git:// of RightScale (v12.11.0-LTS) + LNMP

  • Cookbook Repo: git:// of RightScale (v12.11.0-LTS) + LNMP

  • Cookbook Repo: of RightScale (v12.11.0-LTS) + LNMP

  • Cookbook Repo: git:// of RightScale (v12.11.0-LTS) + LNMP

  • Cookbook Repo: git:// of RightScale (v12.11.0-LTS) + LNMP

  • MultiCloudImage: SoftLayerImage_Storage_CentOS_5.8_x64_v5.8 [rev 4]

  • MultiCloudImage: RightImage_RHEL_5.8_x64_v5.8 [rev 5]

  • MultiCloudImage: RightImage_CentOS_5.8_x64_v5.8_HVM_EBS [rev 2]

  • MultiCloudImage: RightImage_CentOS_5.8_x64_v5.8_EBS [rev 3]

  • MultiCloudImage: RightImage_CentOS_5.8_x64_v5.8 [rev 5]

  • MultiCloudImage: RightImage_CentOS_5.8_x64_v5.8 - XenServer [rev 5]

  • MultiCloudImage: RightImage_CentOS_5.8_x64_v5.8 - KVM [rev 8]

  • Recipe: block_device::do_secondary_restore

  • Recipe: logging::default

  • Recipe: db_mysql::default_5_1

  • Recipe: db::setup_privileges_application

  • Recipe: db::setup_privileges_admin

  • Recipe: db::setup_monitoring

  • Recipe: db::install_server

  • Recipe: db::install_client

  • Recipe: db::default

  • Recipe: block_device::setup_ephemeral

  • Recipe: lnmp_aio::setup_lnmp_aio

  • Recipe: block_device::do_secondary_backup

  • Recipe: block_device::do_restore_or_setup_block_device_on_boot

  • Recipe: block_device::do_primary_restore

  • Recipe: block_device::do_primary_backup_schedule_enable

  • Recipe: block_device::do_primary_backup_schedule_disable

  • Recipe: block_device::do_primary_backup

  • Recipe: rightscale::default

  • Recipe: block_device::do_delete_volumes_and_terminate_server

  • Recipe: block_device::default

  • Recipe: app_wordpress::update

  • Recipe: app_wordpress::deploy

  • Recipe: sys_ntp::default

  • Recipe: sys_firewall::default

  • Recipe: sys::setup_swap

  • Recipe: rightscale::install_tools

  • Recipe: nginx::setup_vhost

  • Recipe: rightscale::install_file_stats_collectd_plugin

  • Recipe: block_device::do_force_reset

  • RepoPath: RightScale (v12.11.0-LTS) + LNMP [rev 4]

  • RightScript: [OpsCode] Connect Node [rev 3]

  • RightScript: [OpsCode] Chef Run [rev 1]

  • RightScript: [OpsCode] Delete Node [rev 1]

  • RightScript: [OpsCode] Initial Chef Run [rev 1]

  • See More


Revision 10 | Feb 05, 2013

Fixed php-fpm monitoring Fixes for app_wordpress nginx vhost creation

Revision 9 | Dec 21, 2012

Updated to RightScale v13.2 Chef code. Particularly useful for LVM fixes/enhancements in block_device

Revision 7 | Aug 26, 2012

* Install postfix mysql_pgsql from centosplus on CentOS * Update app_wordpress to require nginx, apache, and php5 so that recipes can be run as operational scripts * Set LVM vg data size to 50% to prevent possible data corruption * Remove scheduler cookbook/recipe, using block_device continuous backups instead * Set max snapshots to 10. 7 Daily + 1 Weekly + 1 Monthly + 1 Yearly = 10


674bf88eceff2db33ab8780edd4b87f2Owen Hopkins on Sep 10, 2012 | Re: v7

A really well thought out template with detailed instructions. There are lots of options to play with but the instructions cover everything and the default options are ones that work well. Top marks!


1 Rating

Supported Clouds


All Users

Sign-up for RightScale

Support Information

Have problems? Have suggestions for improvement? Just wanna chat with a really cool guy that likes to automate cloud stuff?

Drop me a line