EasyEngine CLI β Course Outline for a WordPress Developer π§
Below is aΒ chaptered, addressable syllabus you can reference like c2.6 (Chapter 2, Subsection 6). Itβs designed around what you shared from the GitHub docs (site management for HTML/WP, cron, and shell) and also adds the practical, WordPress-on-a-root-server knowledge youβll want alongside those commands. β
c1) Orientation: What EasyEngine is (and why it changes your workflow) π§©
c1.1 β EasyEngine mental model (shared hosting vs root server vs containers)
c1.2 β What EasyEngine manages for you (sites, containers, services, SSL)
c1.3 β Core CLI structure: ee <noun> <verb> [args] [options]
c1.4 β Local machine vs server: where you run ee and what it touches
c1.5 β Learning map: what youβll be able to do by the end of the course
c2) Site Lifecycle Fundamentals (HTML + WordPress) ποΈ
c2.1 β Naming and identifying sites (<site-name> conventions, DNS expectations)
c2.2 β Creating sites: the shared mechanics across types
- What
--typemeans conceptually - When
--skip-status-checkmatters and when itβs risky
c2.3 β ee site create --type=html
- c2.3.1 Minimal create
- c2.3.2 Create with SSL (
--ssl=le,--ssl=self) - c2.3.3 Wildcard SSL (
--wildcard) and when you actually need it
c2.4 β ee site create --type=wp (WordPress install paths)
- c2.4.1 Minimal WP create
- c2.4.2 WP + Letβs Encrypt SSL
- c2.4.3 WP + wildcard SSL
- c2.4.4 WP + Redis cache (
--cache) and what it implies - c2.4.5 WP multisite (
--mu=subdirvs--mu=subdom) - c2.4.6 VIP flow (
--vip) and using a repo containingwp-content - c2.4.7 Skipping steps (
--skip-install,--skip-content) and why/when - c2.4.8 Version selection (
--version=latest|nightly|x.y.z)
c2.5 β Managing a siteβs runtime state
- c2.5.1
ee site enable(and what βenableβ means in practice) - c2.5.2
ee site disable(what stops/removes; what persists) - c2.5.3
--verifyand dependent βglobal servicesβ - c2.5.4
--forceusage patterns (and cautions)
c2.6 β Updating an existing site: ee site update
- c2.6.1 Adding SSL to a non-SSL site (
--ssl=le|self) - c2.6.2 Switching to wildcard (
--wildcard) - c2.6.3 Safe operational routine (pre-checks, downtime avoidance mindset)
c2.7 β SSL operations: ee site ssl
- c2.7.1 Challenge verification concepts
- c2.7.2 Renewal behavior and
--force - c2.7.3 Practical renewal troubleshooting checklist
c2.8 β Inspecting & inventorying: ee site info and ee site list
- c2.8.1
ee site infooutput: credentials, links, what to look for - c2.8.2
ee site listfilters (--enabled,--disabled) - c2.8.3 Output formats (
--format=table|csv|yaml|json|count|text) π
c2.9 β Reload/restart: ee site reload and ee site restart
- c2.9.1 Reload vs restart (what you use each for)
- c2.9.2 βTypeβ variants in docs (
--type=html|wp) and expected behavior
c2.10 β Deleting sites: ee site delete
- c2.10.1 Confirmation and
--yes - c2.10.2 Data safety: what to back up before deletion
c2.11 β Caching operations: ee site clean
- c2.11.1 Clearing both caches (default behavior)
- c2.11.2
--pagevs--object(when to clear which)
c2.12 β Sharing a site online: ee site share (ngrok)
- c2.12.1 Create a share link
- c2.12.2
--refreshbehavior - c2.12.3 Taking it down (
--disable) - c2.12.4 Using
--token(ngrok token hygiene)
c3) WordPress Provisioning Details (Deep Dive) π§±
(Still based on your doc excerpt, but expanded into the decisions youβll actually make.)
c3.1 β Admin bootstrap options (--title, --admin-user, --admin-pass, --admin-email)
c3.2 β PHP version selection (--php=5.6|7.2|latest) and compatibility strategy
c3.3 β Database configuration patterns
- c3.3.1 Defaults vs explicit config (
--dbname,--dbuser,--dbpass, etc.) - c3.3.2 Remote DB host (
--dbhost) implications - c3.3.3
--skip-checkand when it can bite you - c3.3.4
--forceand βreset remote database if not emptyβ
c3.4 β Local DB & local Redis containers (--local-db, --with-local-redis)
c3.5 β Multisite operations mindset (subdir vs subdom prerequisites)
c3.6 β VIP workflow (--vip) as a deployment pattern
c4) Cron Management with ee cron β±οΈ
c4.1 β What EasyEngine cron controls (site-level vs host-level)
c4.2 β Listing jobs: ee cron list [<site-name>] [--all]
c4.3 β Creating jobs: ee cron create
-
c4.3.1 Site cron vs host cron (
<site-name>vshost) -
c4.3.2
--commandquoting rules and practical examples -
c4.3.3
--scheduleformats:- Classic Linux cron strings
- Macros like
@weekly,@daily, etc. @every <duration>(e.g.,@every 10m, combined units)
c4.4 β Running immediately: ee cron run-now <cron-id>
c4.5 β Updating jobs: ee cron update <id>
- c4.5.1 Changing site, command, schedule, and user
c4.6 β Deleting jobs: ee cron delete <cron-id>
c4.7 β WordPress-specific cron recipes (WP-Cron alternatives, due-now runners)
c5) Shell Access with ee shell (Your daily driver) π§°
c5.1 β Interactive shell into a site container: ee shell <site-name>
c5.2 β Choosing the user: --user=root|www-data|... (practical safety rules)
c5.3 β Choosing a service: --service=php (default) vs --service=nginx, etc.
c5.4 β Non-interactive execution: --command='...'
c5.5 β TTY considerations: --skip-tty (when automation needs it)
c5.6 β Common WP developer workflows via ee shell
- Running WP-CLI operations
- Inspecting logs/configs
- Quick Nginx tests/reloads
c6) Operational Routines (Putting commands into real workflows) π
c6.1 β βDay 1β routine: create β SSL β verify β info β share (optional)
c6.2 β βReleaseβ routine: maintenance mode, cache clear, reload/restart
c6.3 β βIncidentβ routine: disable/enable, verify dependencies, SSL renewal
c6.4 β Safe defaults vs dangerous flags (--force, --skip-check, --skip-status-check)
c6.5 β Auditing & reporting with ee site list --format=...
c7) WordPress Performance & Architecture Tuning (EE-centric mindset) π
c7.1 β Page cache vs object cache: what you clear and why
c7.2 β Redis in practice (--cache, --with-local-redis)
c7.3 β PHP version strategy for client projects
c7.4 β Multisite scaling considerations
c7.5 β When to prefer local DB container vs global/remote DB
c8) Security & Access Patterns (Root server reality check) π
c8.1 β SSL choices (le vs self) and practical environments
c8.2 β Principle of least privilege for ee shell --user=...
c8.3 β ngrok sharing: token handling and exposure control
c8.4 β Deletion safeguards and backup checkpoints
c9) Capstone Projects (guided practice paths) π―
c9.1 β Build a production-like WP site with SSL + cron runner + caching
c9.2 β Build a multisite (subdir/subdom) with correct SSL and cron strategy
c9.3 β VIP-style site: --vip repo workflow + operational commands
c9.4 β Maintenance toolkit: scripts using ee shell --command, ee site list --format=json
c10) Quick Reference Index (commandβtopic map) π
-
Site
- c2.3 β
ee site create --type=html - c2.4 / c3 β
ee site create --type=wp - c2.10 β
ee site delete - c2.6 β
ee site update - c2.5 β
ee site enable|disable - c2.7 β
ee site ssl - c2.8 β
ee site info|list - c2.9 β
ee site reload|restart - c2.11 β
ee site clean - c2.12 β
ee site share
- c2.3 β
-
Cron
- c4.3 β
ee cron create - c4.2 β
ee cron list - c4.5 β
ee cron update - c4.6 β
ee cron delete - c4.4 β
ee cron run-now
- c4.3 β
-
Shell
- c5 β
ee shell
- c5 β
Next step β
Tell me where you want to start:
c2.4(WordPress site creation end-to-end), orc5(shell workflows; fastest way to feel productive), or- Name any code like
c2.6and Iβll βexecuteβ that chapter in lesson format.