How you can meet the Directus Requirements?

Directus 9 is a massive leap forward but also comes with many breaking changes to the requirements. Here's how you can meet them and get started right away.

How you can meet the Directus Requirements?

Directus 9 was launched in January 2022 and we're all very excited by this new version. It's a massive leap forward but also comes with many breaking changes to the requirements, noteably the drop of RHEL/Centos 7 support. For those of us who want to upgrade may need to move to a new server. In this article I'll review the requirements on Directus and how you can meet them. This page contains affiliate links which pay a commission.

Supported Operating System (OS)

You can run Directus 9 on the following systems.

  • Ubuntu
    18.04
  • Centos
    8
  • Red Hat
    8
  • Oracle Linux
    8
  • Debian
    10+
  • MacOS
    Catalina+
  • Windows
    10+
  • Docker
    Hub + Dockerfile

Hosting Options

I recommend going with a VPS (Vitual Private Server) or VM (Virtual Machine) when hosting Directus. Most website hosts and cloud providers will support one of these systems. If you have the knowledge to maintain a server, you can choose an unmanaged VPS that will save you a lot of money. Otherwise, go for the managed VPS with peace of mind. I've collected a list of hosting companies that can host Directus and a SQL database. I recommend Centos 8 or Debian 10 as the operating system.

Why not Shared Hosting?

Shared hosting providers tend to offer a limited account so you will need to hope they have the required software already installed. Also, you are sharing the server resources with other hosts so there are restrictions on CPU and RAM usage. The API and Asset manager in Directus will most likely over use them and your account will be suspended.

What about Dedicated Hosting?

Dedicated Hosting will allow you full control over the hardware of your server and get you the best performance since you're not sharing the server. Your dedicated server can then host multiple VPS' of your own without paying for each one. You may choose the rent out space on your server to others or become a hosted solution for clients. For the purposes of hosting Directus, a dedicated server is not needed.

Can Directus be installed with a Web Panel?

Web Panels such as cPanel, Plesk, CloudPanel, aaPanel all support Directus but you will still need to install Directus via the command line. You'll find the panel's role is to help configure Nginx for you.

What about older systems like Centos 7?

Directus 9 contains many different packages, some of which rely on system components that need to meet the required version. Older systems tend to fall behind on updating their components or physically can't becuase it's limited by the core operating systems. During beta testing, I was able to get an early version of Directus running on Centos 7 with a few manual updates to core components however, it was a massive overhead whenever a new version of Directus was released. Eventually, further updates had broken the Centos core and I had to look at moving to Centos 8.

Supported SQL Servers

A SQL database is required for storing all your data and settings. Directus can use either local or remote connections to these SQL servers. Most options are available on Linux, Windows and MacOS.

  • MySQL
    5.7.8+ / 8+
  • PostgreSQL
    10+
  • SQLite
    3+
  • MS-SQL
    13+
  • MariaDB
    10.2.7+
  • OracleDB
    19+

Make sure to research all of them to find the best fit. I've been using MySQL since the early days of Directus 7 and never had any issues.

Using a Cloud Infrastructure?

If you're using a cloud infrastructure like AWS (Amazon Web Services) or Microsoft Azure, the following databases are also supported.

  • Aurora
    Amazon Cloud
  • RedShift
    Amazon Cloud
  • SQL-MI
    MS Azure

Note, there is some risk when using a cloud managed database that the service is updated without warning and may break Directus. If this happens, you rely on Directus releasing an update to fix it. I like to think the team is pro-active in fixing these bugs before the database upgrade but I may be wrong.

If you want total peace on mind, Directus does offer hosted options.

Required Software

The following software is needed to run Directus.

  • Node.js
    12.10+
  • npm
    6+
  • Nginx
    1.21
  • Systemd
    Linux
  • NSSM
    Windows

Node.js and npm

Node.js is a multi-platform javascript back-end used to process information ansynchronously on a server. It comes compiled with npm. I recommend going with the latest stable version.

Node.js
Node.js® is a JavaScript runtime built on Chrome’s V8 JavaScript engine.

For linux and unix systems, you can use the built-in package manager to install nodejs such as yum or apt-get.

Nginx

Nginx is a multi-platform webserver that is very easy to configure. In my experience it out performs Apache and IIS using far less resources. Nginx can be installed using your linux package manager such as yum or apt-get. For Windows you can download the latest stable version from their website and set it up as a service using NSSM.

nginx: download

I've written an article on how to set up Nginx for Directus here:

Set up Directus in Nginx
Use this template to configure Nginx and access Directus on your domain name.

Why not use IIS on Windows?

If you have the expertise to configure IIS as a proxy to Directus, by all means. In my experience Nginx is much simpler and quicker to configure. If you need to use IIS, there is a good guide here:

IIS (Internet Information Services) | Directus Docs
Directus 9. An Instant App & API for your SQL Database.

Systemd

Systemd comes pre-installed on most linux and unix systems. It's a service manager that automatically starts applications on boot and again if they fail. The configuration files are in /etc/systemd/system/. You'll need to create a Directus configuration file in that folder.

NSSM

NSSM (A non-sucking service manager) is a widely used method to add software to the windows services manager. Simply download the software and follow the tutorial from their website. NSSM needs to use the node.exe from NodeJS and the directory set to your Directus project folder. Then the command npm directus start. Most other settings are optional.

NSSM - the Non-Sucking Service Manager

Are you ready?

So you have a server or pc ready to go with a supported OS, SQL server and Node.js installed. Now it's time to install Directus. Rather than duplicate the work, I've included the link to the Directus Documentation:

Installation | Directus Docs
Directus 9. An Instant App & API for your SQL Database.

Be sure to read my article on the 4 essential steps after installing Directus.

4 Essential Steps after Installing Directus
So you’ve just installed Directus and wondering what’s next? I’ve gathered the 4 essential steps to get started right away.

Can't meet the Requirements?

If you can't meet the requirements or prefer a managed solution where someone else handles all the server maintenance, check out the Directus hosting plans:

Directus: Open Data Platform for Headless Content Management
Directus is an open-source Headless CMS with the flexibility and power of a Data API. It allows managing both content and raw data, in any new or existing SQL database — keeping all your data pure, organized and portable, end-to-end.

Conclusion

So you now know the Directus system requirements and have some useful options to explore. My personal experience has been successful in linux and is a cost effective way to run Directus. Be sure to check out my other articles which will help get you started.

Getting Started - Learn Directus
Articles and guides to help you get the most out of the Directus platform.

By continuing to use our website, you consent to use essential cookies. We also use optional tracking cookies which help us gather statistics to improve our services. Do you consent to these cookies?

I Consent Do not track