All sites will be created in /opt/easyengine/sites/ by default.
For a site like example.com, the site’s root folder will be /opt/easyengine/sites/example.com
Here’s how your a site’s structure will look like if it’s a PHP or WordPress site. HTML site won’t have php and postfix directories anywhere in them.
.
├── app
│ ├── htdocs
│ └── wp-config.php
├── config
│ ├── nginx
│ ├── php
│ └── postfix
├── docker-compose-admin.yml
├── docker-compose.yml
├── logs
│ ├── nginx
│ └── php
└── services
├── postfix
├── mariadb
│ ├── conf
│ ├── data
│ └── logs
Source code of your site is stored in /opt/easyengine/sites/example.com/app/htdocs.
In case of WordPress site, the wp-config.php file placed in app folder at /opt/easyengine/sites/example.com/app/wp-config.php for security reasons.
All config of a site is stored in /opt/easyengine/sites/example.com/config/
| Config Type | Path on host |
| Nginx config | /opt/easyengine/sites/example.com/config/nginx/ |
| Nginx custom config | /opt/easyengine/sites/example.com/config/nginx/custom/ |
| PHP config | /opt/easyengine/sites/example.com/config/php/php/ |
| PHP-FPM config | /opt/easyengine/sites/example.com/config/php/php-fpm.d/ |
| Postfix config | /opt/easyengine/sites/example.com/config/postfix/ |
| Local DB config | /opt/easyengine/sites/example.com/services/mariadb/conf |
All logs related to a site are stored in /opt/easyengine/sites/example.com/logs/
| Log Type | Path on host |
| Nginx | /opt/easyengine/sites/example.com/logs/nginx/ |
| PHP | /opt/easyengine/sites/example.com/logs/php/ |
| Local DB | /opt/easyengine/sites/example.com/services/mariadb/logs |
You may notice two more files – docker-compose.yml and docker-compose-admin.yml. This files are used by Docker to configure software stack for the site and that site’s admin-tools respectively.
If you are familiar with the Docker, you can use these files to modify software stack used by a site among other things.