Initialize Server

Before creating a project, you must connect a server to your account where your projects will be hosted. This server should be a Linux server running Ubuntu 20.04, 22.04, or 24.04. Currently, Depfloy does not support any other operating systems.

In the future, it will be possible to create servers directly from cloud service providers such as AWS, DigitalOcean or Linode. For now, you can add a server via Hetzner or manual setup.

To initialize your server in Depfloy, you need to follow the steps below:

  1. Login to your Depfloy account.
  2. Click on the "Add Server" button in the top right corner of the Depfloy server management page.
  3. Follow the instructions to initialize your server.

Server Types

Depfloy offers many different server types and each server type is designed to be used for a specific purpose. You can choose the server type that best fits your needs from the following list:

  • Web App Server: A fully automated server setup process that includes the installation of the web app, including Nginx, PHP, MySQL, and many other dependencies. This is the most common server type and is recommended for most use cases.
  • Database Server: A server setup process that allows you to manually install the database, including MySQL, PostgreSQL, or MongoDB (Coming soon). In the future, backup and restore functionality will be available for all database types.
  • Cache Server: A server setup process that allows you to manually install the cache, including Redis. Automatically configured and optimized for the web app.
  • Meilisearch Server: A server setup process that allows you to manually install the search, including Meilisearch. Automatically configured and optimized for the web app.

Providers

Depfloy supports many different providers for each server type. You can choose the provider that best fits your needs from the following list:

  • Hetzner: A provider that allows you to create servers in Hetzner.
  • Custom Setup: You can manually setup your server by providing the server details such as the server IP address, SSH key, and server type. This is useful if you want to use a server that is not supported by Depfloy.

In the future, it will be possible to create servers directly from cloud service providers such as AWS, DigitalOcean or Linode. For now, you can add a server via Hetzner or manual setup.

Add Provider

To add a provider, you need to follow the steps below:

  1. Go to the providers page in your dashboard.
  2. Click on the "Add Provider" button in the top right corner of the Depfloy providers page.
  3. Follow the instructions to add the provider.
Add Provider

Server Requirements

Before initializing a server, please ensure that the server meets the following requirements:

  • The server must be running a fresh installation of Ubuntu 20.04, 22.04, or 24.04 x64.
  • The server must be accessible externally over the Internet.
  • The server must have root SSH access enabled.
  • The server should meet the following minimum requirements: 1 CPU Core with 1GHz, 1GB RAM, and 10GB Disk space.
  • The server must have curl installed.
  • Ensure that no firewall or security group is throttling requests to the server. Throttling SSH requests may cause provisioning to fail at the final stage.
  • If you restrict SSH access by IP address, consult the Depfloy IP address documentation.
  • If your internal network is protected by Network Address Translation (NAT) and you are mapping public SSH ports to different internal SSH ports, you can inform Depfloy by checking the “This server is behind a NAT” checkbox. This will display an additional input field, “NAT SSH Port”, where you can specify the SSH port to which traffic is mapped. Depfloy will use this port to allow traffic into the server via UFW. If the internal SSH port is the same as the public SSH port, you may leave the NAT SSH Port field empty.
  • If your server is protected by antivirus software, ensure it does not interfere with Depfloy’s operations. Antivirus programs may sometimes cause unexpected behavior during server provisioning, which might result in misconfigurations of database instances or other applications on the server.

In most cases, a standard Linux server with Ubuntu 22 or 24 will be sufficient to get started.

Giving Depfloy Access to Your Server

Some server providers may modify the contents of /root/.ssh/authorized_keys. You must ensure that they allow Depfloy’s public key to access the server. You can find this key by visiting: https://app.depfloy.com/servers/<serverID>/settings

Add Server

After completing all the necessary preparations, you can initialize your server in Depfloy. You can follow the steps below to initialize your server:

  1. Go to the servers page in your dashboard.
  2. Click on the "Add Server" button in the top right corner of the Depfloy servers page.
  3. Follow the instructions to add the server.
Initialize Server

After giving a name to your server, select the server type you need. Then select the services you need and if needed, select the version information. Finally, select the provider you want to continue with and click the "Select" button.

Custom Setup

If you prefer to manually setup your server, select "Custom Setup" and enter the server details. You can enter the server IP address, SSH key, and server type. This is useful if you want to use a server that is not supported by Depfloy.

Next, connect to your freshly installed server via SSH as the root user. Paste the bash script provided in the previous step into your terminal and press Enter. Depfloy will then start the installation process on your server and configure all necessary settings automatically. Sit back and wait for the installation to complete.

Provider Setup

If you prefer to use a provider like Hetzner, you can enter the server location, instance type and network details and start the provisioning process.

If you encounter any errors, please ensure that you have followed all the steps correctly and that your server meets all the requirements listed above.

After the installation process is complete, you will be redirected to the server details page. You can manage the server from this page.

Once everything is complete, you will receive a notification that your server has been successfully added to Depfloy. From this point, you can add a project and quickly deploy it.

Was this page helpful?