# Setup

This article explains how to set up your application environment from scratch. If you want to replicate an existing environment, or want to migrate an application from an external server to TurboStack, please consult the Account Cloning and Migration Hero articles respectively.

# What is an account and what is it used for?

The account is a Linux user which can be used simply to access the server. However, you probably want to deploy one or multiple applications under this user. This guide will explain how to deploy system users and all settings your application requires.

# Creating a new account

# Deploying a new account in the GUI

  1. Go to the Accounts page
  2. Click Add new account
  3. Give the account a username and save
  4. Save and Publish will deploy the change to the host

# Deploying a new account in the source YAML Advanced

Advanced users can also deploy an account in the source YAML

system_users:
  - username: prod

More info on using the YAML editor can be found here.

# Creating a new application

# Creating a new application in the TurboStack Platform GUI

Creating a new (default) application under the newly created prod user.

  1. Open the detail section for the user.
  2. Click Add app or database
  3. The first application for each user should always be default.
  4. Fill in 1 or more hostnames your application will listen on.
  5. Choose an SSL certificate, there are 3 options: letsencrypt(default), self-signed and custom (3rd party certificate).

6. Go to Technologies and set the app type that matches your application.

  1. Enable all technologies that your application requires. This section is updated regularly, so keep an eye on our changelog!
  2. When going live, set a monitoring url so Hosted Power will monitor 24/7.
  3. Click Save to save and exit the configuration wizard.
  4. Finally, click Save & Publish to push your configuration to the server.

Please note that two more publishing options are available:

  • Save & Full Publish: Redeploy the whole server configuration as opposed to only the changes
  • Save, Delete & Full Publish: Same as Save & Full Publish, but is required when explicitly deleting certain configs. You will be prompted to verify this option by typing 'DELETE' as a failsafe.

Successful publication
Successful publication

# Creating a new application in source code mode (YAML) Advanced

Advanced users can also deploy an application in the source YAML:

system_users:
  - username: prod
    vhosts:
      - server_name: example.com www.example.com
        app_type: magento2
        php_version: "8.2"
        varnish_enabled: true
        cert_type: self-signed

More info on using the YAML editor can be found here.