@php use App\Enums\ProxyTypes; @endphp Onboarding | Coolify
@if ($currentState === 'welcome')

Welcome to your Last Hour Cloud

Let's help you to set up the basics and show you around.

Let's Start
@endif
@if ($currentState === 'explanation') Last Hour Cloud is an all-in-one application to automate tasks on your servers, deploy application with Git integrations, deploy databases and services, monitor these resources with notifications and alerts without vendor lock-in and much much more.

You do not to manage your servers too much. This does it for you.

All configurations are stored on your server, so everything works without this (except integrations and automations).

You will get notified on your favourite platform (Discord, Telegram, Email, etc.) when something goes wrong, or if an action is needed from your side.

Next
@endif @if ($currentState === 'select-server-type') Do you want to deploy your resources on your or on a ? Localhost Remote Server @if (!$serverReachable) Localhost is not reachable with the following public key.

Please make sure you have the correct public key in your ~/.ssh/authorized_keys file for user 'root' or skip the guided tour and add a new private key manually to Last Hour Cloud and to the server.
Check the upstream documentation for further help. Check again @endif

Servers are the main building blocks, as they will host your applications, databases, services, called resources. Any CPU intensive process will use the server's CPU where you are deploying your resources.

Localhost is the server where Last Hour Cloud is running on. It is not recommended to use one server for everything.

Remote Server is a server reachable through SSH. It can be hosted at home, or from any cloud provider.

@endif
@if ($currentState === 'private-key') Do you have your own SSH Private Key? Yes No (create one for me) @if (count($privateKeys) > 0)
@foreach ($privateKeys as $privateKey) @endforeach Use this SSH Key
@endif

SSH Keys are used to connect to a remote server through a secure shell, called SSH.

You can use your own ssh private key, or you can allow Last Hour Cloud to create one for you.

In both ways, you need to add the public version of your ssh private key to the remote server's ~/.ssh/authorized_keys file.

@endif
@if ($currentState === 'select-existing-server') There are already servers available for your Team. Do you want to use one of them?
No (create one for me)
@foreach ($servers as $server) @endforeach Use this Server
@if (!$serverReachable) This server is not reachable with the following public key.

Please make sure you have the correct public key in your ~/.ssh/authorized_keys file for user 'root' or skip the boarding process and add a new private key manually to Last Hour Cloud and to the server. Check again @endif

Private Keys are used to connect to a remote server through a secure shell, called SSH.

You can use your own private key, or you can let Last Hour Cloud create one for you.

In both ways, you need to add the public version of your private key to the remote server's ~/.ssh/authorized_keys file.

@endif
@if ($currentState === 'create-private-key') Please let me know your key details.
@if ($privateKeyType === 'create') ACTION REQUIRED: Copy the 'Public Key' to your server's ~/.ssh/authorized_keys file. @endif Save

Private Keys are used to connect to a remote server through a secure shell, called SSH.

You can use your own private key, or you can let Last Hour Cloud create one for you.

In both ways, you need to add the public version of your private key to the remote server's ~/.ssh/authorized_keys file.

@endif
@if ($currentState === 'create-server') Please let us know your server details.
Continue

Username should be for now. We are working on using non-root users.

@endif
@if ($currentState === 'validate-server') we need to validate your server (connection, Docker Engine, etc) and configure to see if something is missing. Are you okay with this? Validate & configure Send it!

This will install the latest Docker Engine on your server, configure a few things to be able to run optimal.

Minimum Docker Engine version is: 22

To manually install Docker Engine, check this documentation.

@endif
{{--
@if ($currentState === 'select-proxy') If you would like to attach any kind of domain to your resources, you need a proxy. Decide later Traefik v2 Nginx Caddy

This will install the latest Docker Engine on your server and configure a few items to be able to run optimally.

@endif
--}}
@if ($currentState === 'create-project') @if (count($projects) > 0) You already have some projects. Do you want to use one of them or should we create a new one for you? @else We will create an initial project for you. You can change it later on. @endif Create New Project
@if (count($projects) > 0)
@foreach ($projects as $project) @endforeach Use this Project
@endif

Projects put together several resources into one virtual group. There are no limitations on the number of projects you can have here.

Each project should have at least one environment. This helps you to create a production & staging version of the same application, but grouped separately.

@endif
@if ($currentState === 'create-resource') Next we will redirect you to the resource page, where you can create your first resource.
Let's do it!

A resource is an application, a database or a service (like WordPress).

@endif