Files
LEMPer/README.md
2019-06-16 22:07:42 +07:00

3.1 KiB

[L]inux [E]ngine-X [M]ariaDB [P]HP Install[ER]

LEMPer stands for Linux, Engine-X (Nginx), MariaDB and PHP installer written in Bash script. This is just a small tool set (a bunch collection of scripts) that usually I use to deploy and manage Ubuntu-LEMP stack. LEMPer is ServerPilot, RunCloud, and EasyEngine alternative for wide range PHP framework.

Features

  • Nginx custom from repository & build from source.
  • Nginx with FastCGI cache enable & disable feature.
  • Nginx pre-configured optimization for low-end VPS. Get one here or here.
  • Nginx virtual host (vhost) configuration optimized for WordPress, and several PHP Framework (CodeIgniter, Symfony, Laravel, Phalcon).
  • MariaDB 10 (MySQL drop-in replacement).
  • In-memory database with Redis.
  • Memory cache with Memcached.
  • PHP 5.6, 7.0, 7.1, 7.2, 7.3 from Ondrej's repository.
  • PHP-FPM sets as user running the PHP script (pool), Feel the faster Nginx like a truly shared hosting.
  • Zend OPcache.
  • ionCube PHP Loader.
  • SourceGuardian PHP Loader.
  • Adminer (PhpMyAdmin replacement)

Usage

Install Nginx, PHP & MariaDB

sudo apt-get install git
git clone https://github.com/joglomedia/LEMPer.git; cd LEMPer; sudo ./lemper.sh

Uninstall Nginx, PHP & MariaDB

sudo ./uninstall.sh

Nginx vHost Configuration Tool (ngxvhost)

This script also include Nginx Virtual Host (vHost) configuration tool helping you add new website (domain) easily. The ngxvhost must be run as root (recommended using sudo).

Ngxvhost Usage

sudo ngxvhost -u username -d example.com -f default -w /home/username/Webs/example.com

Ngxvhost Parameters:

  • -u your username (DO NOT use root login)
  • -d your website domain name
  • -f framework type, available options: default, codeigniter, laravel, phalcon, wordpress, wordpress-ms (multisite)
  • -w web root absolute path to your site directory containing the index file (we recommend you to use user home directory)

for more info

sudo ngxvhost --help

Note: ngxvhost will automagically add new FPM user's pool configuration file if it doesn't exists.

Web-based Administration

You can access pre-installed web-based administration tools here

http://YOUR_IP_ADDRESS/tools/

Adminer (SQL database management tool)

http://YOUR_DOMAIN_NAME:8082/

FileRun (File management tool)

http://YOUR_DOMAIN_NAME:8083/

TODO

  • Custom build latest Nginx from source.
  • Add Let's Encrypt SSL.
  • Add security hardening (iptable rules, firewall, else?).
  • Add server monitoring (Nagios, Monit, else?).
  • Add your feature request here.

Contribution

Please send your PR on the Github repository to help improve this script.

TLDR;

Do not use this script if you're looking for feature rich and advanced tool like premium service.

DONATION

Buy Me a Bottle of Milk !!

(c) 2014-2019