LEMP (LLSMP) Application Server

The LEMP (since the 1.16.1 release) & LLSMP stacks are HTTP/3 ready with the feature support enabled by default. Herewith, a public IP address is required to bypass the Shared Load Balancer and work directly with the server over HTTP/3.

LEMP is a software bundle solution based on the Linux operating system, NGINX HTTP web server, MariaDB database, and PHP programming language. Such a model is a popular choice among developers as it is sufficient to host a wide variety of projects with a single container.

Herewith, if the platform provides a LiteSpeed support, a similar LLSMP (Linux, LiteSpeed, MariaDB, PHP) stack can be available. Follow the link above to learn about the LiteSpeed Web Server benefits.

lemp llsmp containers structure
The topology structure inside of the LEMP and LLSMP containers is the following:
  • a PHP-powered event-driven NGINX or LiteSpeed application server
  • built-in MariaDB 10 database server is used to store your project data
  • an additional Redis 5 database is launched by default as an object caching solution

Other peculiarities of the stacks can be viewed in the appropriate section below. For now, let’s walk through the required installation steps.

1. Log in to your Jelastic dashboard (sign up if you don’t have one yet) and click the New Environment button at the top of the page.

new environment button
2. Switch to the PHP tab of the automatically opened topology wizard. Select LEMP (LLSMP) as your application server.

lemp environment topology wizard

Configure other parameters up to your needs (e.g. scaling limit, public IPs, regions) and click Create to proceed.

3. Wait a few minutes for the platform to set up your environment. Once created, you can click Open in Browser to view the default phpinfo() data on your server.

lemp environment created
Now, you can proceed to the deployment of your application.

LEMP & LLSMP Peculiarities

When working with the LLSMP software stack, all the specifics of the LiteSpeed Web Server are applied to this node (including license fee). All the other peculiarities are the same for both servers.

1. Built-in database servers can be accessed in the following way:
  • The phpMyAdmin administration tool for MariaDB can be connected via the 8443 port. The exact link and access credentials can be found in the after-creation email. If needed, a password can be reset via the dashboard by hovering over the application server and selecting the Additionally > Admin Panel > Reset Password option.
  • The Redis database is accessible without a password but only from within the container (i.e. localhost).

lemp admin panel access

Read the linked guide to learn more about PHP connection to MariaDB.

2. Several environment variables can be used to manage your LEMP/LLSMP container:
  • ADMINPANEL_ENABLED - allows (true, by default) or forbids (false) access to phpMyAdmin console for the integrated MariaDB database server
  • REDIS_ENABLED - enables (true, by default) or disables (false) object caching with Redis
  • WAF (for LLSMP only) - enables (true) or disables (false, by default) Web Application Firewall with the Comodo default ruleset
  • CP_MEM_LIMIT - defines the portion of RAM, which should be reserved for the application server (NGINX/LiteSpeed), 50% of container total RAM by default
  • CACHE_MEM_LIMIT - defines the portion of RAM, which should be reserved for the Redis cache server, 10% of container total RAM by default
  • DB_MEM_LIMIT - defines the portion of RAM, which should be reserved for the MariaDB database server, 40% of container total RAM by default
    Tip: These RAM limits can be specified in megabytes (m|mb|M|MB), gigabytes (g|gb|G|GB), or percentages (%). If units are omitted, the values are considered as percentages.

lemp environment variables

The container(s) restart is required to apply changes to these parameters.

3. Obviously, all the benefits of the regular Jelastic PaaS containers are available for the LEMP and LLSMP stacks as well. For example: