Applications

Manage system users, their applications (applications/vhosts), technologies, certificates, databases and FTP.

The host's Applications tab is where you manage what the server runs. It uses a simple two-level model: a host has one or more system users (operating-system accounts that own files and run apps), and each system user has one or more applications - also called applications or vhosts.

This tab covers:

  • Working with an account - expand a system user, edit its settings, or add new ones
  • Clone an application - copy an existing account into a new one
  • Configure application - hostnames, certificates, technologies, monitoring, Git, and databases
  • FTP users - add FTP/SSH File Transfer Protocol (SFTP) access for a system user

Working with an account

Each system user appears as a collapsible row. Click the ▾ chevron on the right to expand it.

An expanded system user showing its Applications and FTP Users
An expanded system user showing its Applications and FTP Users

When expanded, the row shows:

  • Account actions (icons next to the name): copy the username, edit the account, settings, and delete.

  • Applications - the list of applications under this account, each with copy, settings (opens Configure application) and delete icons, plus an Add app or database button.

  • FTP Users - FTP accounts for this user, with an Add FTP user button.

At the bottom of the tab:

  • Add new app - create a new system user (enter a Username and optional Description).
  • Clone app - copy an existing account's configuration into a new one.
  • Migration Hero - migrate an existing site onto the host with guided assistance.

Clone an application

Clone app copies an existing account into a new one. It replicates the account's configuration and can also copy its files and its database. Use it to build a staging copy from production, or to promote a staging setup to production, without configuring everything again.

The clone wizard runs in these steps:

  1. At the bottom of the Applications tab, click Clone app.

  2. Select the source host and the account to clone. The source can be this host or another host you manage.

  3. Choose the destination account. Pick an existing account or create a new one. Then choose whether to clone the database, the files, or both. Click Next.

  4. Select the hostname(s) for the new account and the certificate type to activate. Click Next to start the clone.

  5. TurboStack clones the account. The publishing indicator in the top left shows progress. When it finishes, the top right shows a success message with a timestamp.

Configure application

Use Add app or database, or the settings icon on an application, to open the Configure application dialog. Its settings are organized into tabs.

Name

Give the application a name, or leave Default enabled to use the default naming.

Hostnames

Set the domain(s) the application answers to, and its Transport Layer Security (TLS) certificate.

The Hostnames tab with the domain list and certificate selector
The Hostnames tab with the domain list and certificate selector
  • Hostname - one or more domains (server_name); add or remove rows with Add hostname / Delete.

  • Certificate - the certificate type:

    • Let's Encrypt - automatic certificates. Choose a Certificate provider (and, for Cloudflare Domain Name System (DNS), supply a Cloudflare API token) and, under Advanced settings, a Certificate challenge (http is recommended as the most compatible).

    • Self-signed - a self-signed certificate.

    • Custom - paste your own certificate and private key.

Technologies

Enable the runtimes and services this application needs. The left menu lists each technology; selecting one shows its settings.

The Technologies tab listing PHP, Python, Docker, NodeJS, RabbitMQ and more
The Technologies tab listing PHP, Python, Docker, NodeJS, RabbitMQ and more
Technology What you configure
Application Settings The App Type (e.g. Generic, WordPress, Magento, Odoo...).
PHP Enable PHP and pick a version; advanced PHP-FPM tuning, OPcache and IonCube.
Python Enable Python and set a version.
Ruby Enable Ruby, set a version and startup command, optionally Sidekiq.
Docker Run the application in Docker.
K8s Enable Kubernetes for the application.
Varnish Enable the Varnish HTTP cache for this application.
NodeJS Enable Node.js and pick a version.
.NET Enable .NET, pick a version and an optional listen port.
RabbitMQ Enable the RabbitMQ message broker for this application.
Reverse Proxy Forward requests to a backend: set the upstream IP/Hostname and Port.

See Services for the server-level versions these build on.

Monitoring

Set a Monitoring URL for the application's health check, and optionally enable application performance monitoring - New Relic, Tideways, or Blackfire. See Monitoring (concepts).

Git

Configure Git-based deployment: the remote repository, version/branch and deployment path. Add multiple repositories with Add GIT integration.

Database info

View and manage the application's databases.

The Database Info tab showing MySQL credentials and extra database users
The Database Info tab showing MySQL credentials and extra database users
  • MySQL / PostgreSQL - the auto-provisioned database, username and password (hidden by default; use the eye and copy icons). Open phpMyAdmin directly when available.

  • RabbitMQ - only listed when this application has RabbitMQ enabled. It shows the VHost, Username and Password to connect to the message broker, plus a Go to RabbitMQ button that opens the management interface. The virtual host and the user are named after the system user, so each account keeps its own queues.

  • User Credentials - the system user's own login.

  • Extra database users - add additional database users with a readonly or admin role (each gets its own password). Use Add extra database user; remove with the delete icon.

FTP users

Add an FTP/SFTP account for a system user with Add FTP user: set the user, the home directory, and whether TLS is required. Manage credentials later from the Credentials tab.