Is This How EasyEngine Works?

Maybe I’m just missing things, but I don’t see a lot of documentation on how exactly EE works (nor even tutorials on the web).

Am I correct in understanding that EE sets up a reverse proxy using nginx and then a separate docker container for each wordpress site created using: sudo ee site create example.com --type=wp

If so, is nginx in a container itself or is it running on the default system itself?

I have a dozen or so smaller sites I’d like to move onto a VPS (DigitalOcean) and just trying to understand how all of this would work. Any insight is appreciated!

Thanks!

From my understanding is that each container comes with regular nginx, which redirects the container’s generated local IP address to nginx-proxy container.

The nginx-proxy is the primary container that binds and exposes ports 80 and 443 to the outside world, which is what the regular nginx containers connect to.

You can read more here: https://easyengine.io/handbook/internal/dockerfiles

1 Like

Thanks! This is helpful! Based on the dockerfiles documentation it looks like things are segmented even more than I thought with the database, PHP, redis, etc. each getting its own container as well on a per site basis?

@davidshq Yes correct. There is an option of using per-site containers for everything. But by default, there is a common MySQL and Redis container for all sites. Other containers are per-site.

Also these links will help


If anything else is missing in the Handbook that you feel will help in understanding EasyEngine better, let us know and we’ll add it.

2 Likes

Thanks @mriyam.tamuli, this is very helpful!

Like stated above there is a common php, Redis, and Mysql container. As well as a Nginx Proxy that has 80 and 443 exposed. Then using dockers internal network the individual containers for each site connect to the resources they need. Just like in huge site hosting operations that often have a dedicated server for database which is optimized to store and access the databases, a dedicated server for script execution which is tuned for fast script processing, and one for storage that is tuned to have quick disk IO. EE v4 kin of takes the same approach,

1 Like

Thank you!