EasyEngine - Command-Line tool to manage WordPress Sites on Nginx

2,469 views

Published on

EasyEngine is a Command Line Tool to Manage WordPress Sites on Nginx Server.

Apart from site management, it installs php, mysql, nginx, postfix, memcache and everything else required to run high traffic WordPress sites.

You can serve millions of page-views on $5 digitalocean plan using EasyEngine! ;-)

These slides are from WordCamp Mumbai 2014 session.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,469
On SlideShare
0
From Embeds
0
Number of Embeds
283
Actions
Shares
0
Downloads
11
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

EasyEngine - Command-Line tool to manage WordPress Sites on Nginx

  1. 1. Easy ( WordPress + Nginx ) by rtCamp Mitesh Shah & Rahul Bansal
  2. 2. Table of Contents 1. Introduction 2. Motivation 3. Features 4. Inside EasyEngine 5. Roadmap 6. Getting Involved 7. Demo 2
  3. 3. Introduction Hello World!
  4. 4. EasyEngine is... • a command-line tool • coded in shell scripting language • "control-panel" for geeks/developers • made for WordPress • GPL like WordPress 4
  5. 5. Motivation What annoyed lazy people!
  6. 6. cPanel/Plesk ?#%!@ • Bloated/Resource-Hog • TOO many unwanted features • NOT made 4 WordPress 6
  7. 7. Automation • Performance Optimization • Debugging • Maintainance Anything that can go wrong — will go wrong! Murphy's Law “ 7
  8. 8. Installation Welcome to the Easy world!
  9. 9. Inside Shell... curl -sL rt.cx/ee | sudo bash ee system install ee site create example.com --wp Simplicity is the ultimate sophistication! William Gaddis 01. 02. 03. 9
  10. 10. Create "12" Types of WordPress Sites! Single Site Multisite with Subdir Multisite with Subdom NO Cache --wp --wpsubdir --wpsubdom WP Super Cache --wpsc --wpsc --wpsubdir --wpsc --wpsubdom W3 Total Cache --w3tc --w3tc --wpsubdir --w3tc --wpsubdom Nginx FastCGI Cache --wpfc --wpfc --wpsubdir --wpfc --wpsubdom 10
  11. 11. Features/Usage Driver's manual
  12. 12. A Site includes... • PHP's Zend-Opcache • Memcache for Object-Cache and DB-Cache • Full Page-Cache • Separate access and error logs 12
  13. 13. Site management... • Enable ee site enable example.com • Disable ee site disable example.com • Delete ee site delete example.com • Info ee site info example.com 13
  14. 14. Debugging... • Debug system ee debug • Debug site ee debug example.com • Rewrites only ee debug example.com --rewrite • Interactive ee debug example.com -i 14
  15. 15. Easy to learn... • Built-in help ee help • Man pages man ee • Autocompletion for commands and site-name Never memorize something that you can look up! Albert Einstein 15
  16. 16. Inside EasyEngine Under The Hood
  17. 17. How Quick Setup Works! • Prefer binary packages instead of compiling • Prefer conventions over database • Tweaks differnt configs at the time of installation only 17
  18. 18. Conventions File structure for example.com site • /var/www/example.com/ - All files related to example.com • /var/www/example.com/htdocs/ - Document Root • /var/www/example.com/logs/ - Logs • /var/www/example.com/wp-config.php - WordPress config • /etc/nginx/sites-available/example.com - Nginx config Database details are used from wp-config.php 18
  19. 19. Git-based backup For all configs • /etc/nginx/ • /etc/php5/ • /etc/mysql/ • /etc/postfix/ If something goes wrong... git checkout /path/to/config/file 19
  20. 20. Administrative Tools Port 22222 for Web-based tools • MySQL admin tools e.g. phpMyAdmin, adminer • Debugging tools e.g. Anemometer, WebGrind • Stats viewer for MemCache, PHP's Zend-OpCache CLI... • ee info • ee site info 20
  21. 21. Logging • Installation log • Site creation & other commands log • Error log Log Location: /var/log/easyengine/ 21
  22. 22. Roadmap
  23. 23. Next few milestones... • Easy Debugging • Automated Monitoring with Email Alerts • Mail Server • "Shared" Hosting Support • Easy Migrations/Cloning • Offsite/Peer backups 23
  24. 24. Beyond CLI... • REST API • Web-based control panel • Mobile Apps 24
  25. 25. Getting Involved For "Easier"Engine!
  26. 26. How you can help? • Coding • Documentation • Testing • Help others move • Spread the word • Dontations! ;-) 26
  27. 27. Useful Links • Homepage https://rtcamp.com/easyengine/ • Docs https://rtcamp.com/easyengine/docs/ • Github https://github.com/rtCamp/easyengine • Twitter https://twitter.com/easyengine 27
  28. 28. Demo! It's showtime!!!
  29. 29. Q&A Let's talk!
  30. 30. The End! Thanks :-)

×