webdesign29 / LEMPer

LEMPer stands for Linux, Engine-X (Nginx), MariaDB and PHP installer written in Bash script. LEMPer is terminal-based LEMP stack manager for Debian/Ubuntu-based cloud or virtual server (vps) and on-premise (bare metal).

Home Page:https://eslabs.id/lemper/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[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 Debian-based/Ubuntu LEMP stack. LEMPer is ServerPilot, CloudWays, RunCloud, WordOps, and EasyEngine alternative crafted to support wide-range PHP framework (not only WordPress).

Build Status

Features

  • Nginx from Ondrej's repository
  • Nginx build from source with Mod PageSpeed module.
  • Nginx with FastCGI cache enable & disable feature (via LEMPer CLI).
  • Nginx pre-configured optimization for low-end VPS/cloud server. Need reliable VPS/cloud server? Get one here or here.
  • Nginx virtual host (vhost) configuration optimized for WordPress, and several PHP Framework.
  • Supported PHP Framework and CMS: default (vanilla PHP), framework (codeigniter, laravel, lumen, phalcon, symfony), CMS (drupal, mautic, roundcube, sendy, wordpress, wordpress-ms), and more coming soon.
  • Multiple PHP version 5.6 [EOL], 7.0 [EOL], 7.1, 7.2, 7.3, 7.4 from Ondrej's repository.
  • PHP sets as user running the PHP script (via FPM's pool). Feel the faster Nginx with secure multi-user environment like a top-notch shared hosting.
  • PHP Zend OPcache.
  • PHP Loader (ionCube & SourceGuardian).
  • SQL database with MariaDB 10 (MySQL drop-in replacement).
  • In-memory database with Redis.
  • Memory cache with Memcached.
  • NoSQL database with MongoDB NEW.
  • Adminer web-based MySQL database administration (PhpMyAdmin replacement).
  • TinyFileManager alternative web-based filemanager (Experimental).

Setting Up

  • Ensure that you have git installed.
  • Make a copy of .env.dist to .env in the LEMPer base directory and replace the values.
  • Enter LEMPer directory.
  • Execute lemper.sh file, sudo ./lemper.sh --install.

Installing LEMP stack

sudo vim /etc/hostname ## change hostname to fqdn

sudo su
IP=$(curl ipecho.net/plain)
hostname=$(hostname)
echo "$IP $hostname" >> /etc/hosts
reboot

sudo apt-get install git && git clone -q https://github.com/webdesign29/LEMPer.git && cd LEMPer && cp -f .env.dist .env && sudo ./lemper.sh --install

Removing LEMP stack

sudo ./lemper.sh --remove

LEMPer Command Line Administration Tool

LEMPer comes with friendly command line tool which will make your LEMP stack administration much easier. These command line tool called Lemper CLI (lemper-cli) for creating new virtual host and managing existing LEMP stack.

lemper-cli Usage

Add/create new virtual host

sudo lemper-cli create -u username -d example.app -f default -w /home/username/Webs/example.app

Manage/update existing virtual host

sudo lemper-cli manage --enable-fastcgi-cache example.app

for more help

sudo lemper-cli --help

Note: Lemper CLI will automagically add a new PHP-FPM user's pool configuration if it doesn't exists. You must add the user account first.

Web-based Administration

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

http://YOUR_IP_ADDRESS:8082/lcp/

Adminer (Web-based SQL database managemer)

http://YOUR_DOMAIN_NAME:8082/lcp/dbadmin

TinyFilemanage (Web-based file managemer)

http://YOUR_DOMAIN_NAME:8082/lcp/filemanager

TODO

  • Custom build latest Nginx from source
  • Add Let's Encrypt SSL
  • Add network security (iptable rules, firewall configurator, else?)
  • Add enhanced security (AppArmor, cgroups, jailkit (chrooted/jail users), fail2ban, else?)
  • Add file backup tool (Borg, Restic, Rclone, Rsnapshot, else?)
  • Add database backup tool (Mariabackup, Percona Xtrabackup, else?)
  • Add server monitoring (Amplify, Monit, Nagios, else?)
  • Add user account & hosting package management.
  • Add your feature request here.

Contribution

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

TL;DR

If you're looking for mature, feature rich, advanced, and 24/7 premium service, please don't use this script.

DONATION

Buy Me a Bottle of Milk !!

SPONSORSHIP

Be the first one!

Copyright

(c) 2014-2019

About

LEMPer stands for Linux, Engine-X (Nginx), MariaDB and PHP installer written in Bash script. LEMPer is terminal-based LEMP stack manager for Debian/Ubuntu-based cloud or virtual server (vps) and on-premise (bare metal).

https://eslabs.id/lemper/

License:GNU General Public License v3.0


Languages

Language:Shell 71.5%Language:Perl 23.6%Language:HTML 4.9%