Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Wordpress 4.4.2 AMI by Kurian
Clone this wiki locally
When an AWS EC2 node is spun up using Kurian’s WordPress AMI, the popular blog platform is fully functional and you can start blogging right away.
All the necessary software – WordPress, PHP, Apache and MySQL – that are needed to run WordPress, have been baked into the AMI, pre-installed and configured.
- The AMI has WordPress pre-installed and configured, with the dependent applications.
- After the EC2 node is spun up, you can readily login to the application and start adding content.
How It Works
WordPress is a PHP application that runs on Apache HTTP server and uses MySQL as the database. If you have to manually install WordPress, following steps have to be done:
- Install Apache web server
- Install PHP and dependent libraries that are needed to connect to MySQL database.
- Install and configure MySQL database
- Install WordPress and configure Apache for WordPress to run on it.
- Configure WordPress.
Though the above steps are not very hard, it requires some technical skills to get everything right for WordPress to be up and running.
The Wordpress AMI comes with all the above steps baked in, so the EC2 node spun up from it will be usable from the get-go.
Pick any one of the below Linux platforms to run your Wordpress instance. The links will take you to AWS Marketplace where you can subscribe the related AMI to spin up the EC2 instance.
- Wordpress 4.4.2 for SuSE Linux Enterprise Server 12 SP1
- Wordpress 4.4.2 for Fedora Linux 23
- Wordpress 4.4.2 for RedHat Linux 7.2
- Wordpress 4.4.2 for Debian Linux 8 (jessie)
- Wordpress 4.4.2 for CentOS 7.2
- WordPress 4.4.2 for Ubuntu 14.04
If Wordpress AMI for your favorite platform is not listed here, Kurian might be able to create that for you on demand. Contact us!
After the EC2 node is up and running fully, access the WordPress config page using url: http://NODE-IP/wp-admin/.
Login as the pre-configured user ‘admin’. The password for this user is set as the instance id of the newly spun up EC2 node. Obtain that from the AWS EC2 console.
You can start adding content now, but, doing minor updates will make the site more secure and specific to your requirements:
- After logging in, click on the Settings menu item on the left-pane to get to the site configuration page.
- On the site configuration page, update at least these items:
- Site Title
- Email Address
Under the user admin menu, on the top-right corner, select Edit My Profile option, and, there update at least these items:
- Password, using Reset Password button, if you like to change password from instance id.
If you have to point the new instance to an existing IP address such as EIP, update the database using the script available at https://github.com/kurianinc/ami-pub/blob/master/wordpress/scripts/update-site-url.sh. Take a backup of database wordpress before running this script.
If there are multiple network sites created already, and, the IP has to be updated as above, run the script for each network by changing the database names. Take a backup of database wordpress before running this script.
It is recommended to use a domain name for site url, instead of IP address, in production, as migration to new EC2 instances will be hard with IP address in the database.
Hosting Website on WordPress
Though WordPress can be used in various ways to serve content, a simple web site hosted on a EC2 node can be configured as follows:
- Register your domain (example, myownbusiness.com) with a domain registrar and forward that domain to the IP address of the EC2 node where WordPress runs.
- Under Settings, update both WordPress Address (URL) and Site Address (URL) to point to the new domain.
Maintenance and Troubleshooting
- Look at the Apache error logs under /var/log/apache2/
- The database info, including the password which is randomly generated, are available in the WordPress config file as below:
- Ubuntu – /srv/www/wordpress/wp-config.php
- Most of the other Linux platforms supported – /var/www/wordpress/wp-config.php
We can configure your WordPress instance to meet specific requirements. Contact us with details to email@example.com
Remote Access to EC2 Node
The EC2 node can be accessed using any SSL based remote access clients on port 22, using the ssh key you have selected when the node is spun up.
Following are the predefined users available when a node is provisioned:
- Amazon Linux: ec2-user
- Red Hat Linux: ec2-user
- SuSE Linux: ec2-user
- Fedora: fedora
- CentOS: centos
- Debian Linux: admin
- Ubuntu: ubuntu