SiteHost

Folder Structure

When you access your Cloud Container you'll note the folder structure is different to a standard virtual machine. We instead present a simplified view that gives you access to what you need, and abstracts away what you don't. We don't store your files in specific containers, instead we keep them separate so containers can be replaced, swapped or have their image changed with no impact to your files.

Upon logging into a SSH user you will see a containers symbolic link within your home directory. This will contain directories for each of the containers that you have assigned to this SSH user. The following directories can be present for a container:

/application – place the files of your application within this directory and they will be made available to the software running in your container. For web containers, this directory will also contain a 'public' directory with this being the web root for your application. We don't recommend creating a symlink of the 'public' directory to another folder, as it can be overwritten during an image upgrade, downgrade or switch. If your deployment process requires a soft link setup, we suggest creating a symbolic link either inside or outside the 'public' folder and updating the 'root' or 'DocumentRoot' settings in Nginx or Apache configuration respectively to match the created path.

/backups – any backups that are made of your container, databases or volumes will be placed within this directory. Additionally, you may also see a 'migration' directory appear here when your container has been migrated or updated to a new image. If your container has not been backed up yet, or something has gone wrong, accessing the files in this directory may fail. For more information on how this system works, please see our SSH Backup Access article.

/config – configuration files related to the software running inside your container can be found here. For example, if your container is running a web server such as Nginx or Apache, the configuration files for these will be placed under a 'nginx' or 'apache2' directory respectively. Optionally, this directory can be marked as readonly to prevent changes from being made to configuration files. For more information on this, please see our SSH User Privileges article.

You can't make configuration changes to the server your Cloud Container runs on, but you are free to change the configs that belong to the software running within your containers. This includes web servers, languages, databases, etc.

/crontabs – custom cron entries can be placed within the 'crontab' file that resides in this directory. For more information, please see our article on setting up a custom crontab.

/logs – logs for each piece of software running within your container will be recorded here.

/system - system-related files related to software running inside your container. For example, the supervisor socket file is here.