{"id":13405878,"url":"https://github.com/joglomedia/LEMPer","last_synced_at":"2025-03-14T10:31:53.042Z","repository":{"id":16923577,"uuid":"42362800","full_name":"joglomedia/LEMPer","owner":"joglomedia","description":"LEMPer Stack is terminal-based LEMP / LNMP ( Linux, Nginx, MariaDB, PostgreSQL, MongoDB, Redis, Memcache, PHP, Secure FTP ) auto installer and virtual host manager for Debian \u0026 Ubuntu cloud or virtual server (vps) and on-premise (bare metal).","archived":false,"fork":false,"pushed_at":"2025-01-28T11:24:32.000Z","size":2018,"stargazers_count":229,"open_issues_count":32,"forks_count":61,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-03-12T13:03:47.417Z","etag":null,"topics":["drupal","hosting","laravel","lemp","lemp-deployer","lemp-installer","lemp-stack","lnmp","lnmp-environment","lnmp-installer","mariadb","mysql","nginx","nginx-configuration","nginx-installation","php","php-fpm","php-installer","vps","wordpress"],"latest_commit_sha":null,"homepage":"https://lemper.cloud/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/joglomedia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://www.paypal.me/masedi"]}},"created_at":"2015-09-12T15:50:09.000Z","updated_at":"2025-03-07T14:42:27.000Z","dependencies_parsed_at":"2024-07-14T16:39:20.133Z","dependency_job_id":"f5d58199-caea-41ab-9255-50b7d1507890","html_url":"https://github.com/joglomedia/LEMPer","commit_stats":{"total_commits":1197,"total_committers":3,"mean_commits":399.0,"dds":"0.43609022556390975","last_synced_commit":"8c74e8275b640d3768653831ea95f23126ae3cf4"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joglomedia%2FLEMPer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joglomedia%2FLEMPer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joglomedia%2FLEMPer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joglomedia%2FLEMPer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joglomedia","download_url":"https://codeload.github.com/joglomedia/LEMPer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243562087,"owners_count":20311214,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["drupal","hosting","laravel","lemp","lemp-deployer","lemp-installer","lemp-stack","lnmp","lnmp-environment","lnmp-installer","mariadb","mysql","nginx","nginx-configuration","nginx-installation","php","php-fpm","php-installer","vps","wordpress"],"created_at":"2024-07-30T19:02:14.665Z","updated_at":"2025-03-14T10:31:53.019Z","avatar_url":"https://github.com/joglomedia.png","language":"Shell","readme":"# [L]inux [E]ngine-X [M]ariaDB [P]HP Install[er]\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"/.github/assets/lemper-logo.svg?raw=true\" alt=\"Served by LEMPer Stack © @joglomedia\"/\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\u003ca href=\"https://github.com/joglomedia/LEMPer/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/tag/joglomedia/LEMPer?label=version\" alt=\"LEMPer version\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/joglomedia/LEMPer/stargazers\"\u003e\u003cimg src=\"https://img.shields.io/github/stars/joglomedia/LEMPer.svg\" alt=\"GitHub stars\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/joglomedia/LEMPer/network\"\u003e\u003cimg src=\"https://img.shields.io/github/forks/joglomedia/LEMPer.svg\" alt=\"GitHub forks\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/joglomedia/LEMPer/issues\"\u003e\u003cimg src=\"https://img.shields.io/github/issues/joglomedia/LEMPer.svg\" alt=\"GitHub issues\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/joglomedia/LEMPer/actions/workflows/main.yml\"\u003e\u003cimg src=\"https://github.com/joglomedia/LEMPer/actions/workflows/main.yml/badge.svg\" alt=\"GitHub CI\"\u003e\u003c/a\u003e\n\u003ca href=\"https://raw.githubusercontent.com/joglomedia/LEMPer/master/LICENSE.md\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-GPLv3-blue.svg\" alt=\"GitHub license\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\nLEMPer stands for Linux, Engine-X (Nginx), MariaDB and PHP installer written in Bash script, also known as LEMP / LNMP installer. This is just a small toolset (a bunch collection of scripts) that I use to deploy and manage LEMP stack on Debian and Ubuntu server. LEMPer is crafted to support wide-range PHP framework \u0026 CMS. It is available as \u003cem\u003eFree Alternative\u003c/em\u003e to the paid control panel such as cPanel, Plesk, CloudWays, Ploi, RunCloud, ServerPilot, etc.\n\u003c/p\u003e\n\n## Features\n\n* Nginx - A high performance web server and a reverse proxy server.\n  * Community package from [Ondrej repo](https://launchpad.net/~ondrej/+archive/ubuntu/nginx) or @eilandert's [MyGuard repo](https://deb.myguard.nl/nginx-modules/) with built-in modules.\n  * Custom build from [source](https://github.com/nginx/nginx) featured with :\n    * [Brotli module](https://github.com/google/ngx_brotli.git) an alternative compression to Gzip\n    * [Lua Nginx module](https://github.com/openresty/lua-nginx-module) with LuaJIT 2 library\n    * FastCGI [cache purge module](https://github.com/nginx-modules/ngx_cache_purge.git) for atomic cache purging\n    * Customizable SSL library: OpenSSL (default), LibreSSL, and BoringSSL\n    * and much more useful 3rd-party modules.\n  * Pre-configured optimization for low-end VPS/cloud server. Need reliable VPS/cloud server? Get one from [DigitalOcean](https://masedi.net/l/digitalocean/), [UpCloud](https://masedi.net/l/upcloud/), or [Vultr](https://masedi.net/l/vultr/).\n  * Nginx virtual host (vhost) configuration optimized for WordPress and several PHP Frameworks.\n  * Support HTTP/2 natively for your secure website.\n  * Free SSL certificates from [Let's Encrypt](https://letsencrypt.org/).\n  * Get an A+ grade on several SSL Security Test ([Qualys SSL Labs](https://www.ssllabs.com/ssltest/analyze.html?d=masedi.net), [ImmuniWeb](https://www.immuniweb.com/ssl/?id=bVrykFnK), and Wormly).\n* PHP - Most used language that [powers 78.9% of all websites](https://w3techs.com/technologies/details/pl-php) around the universe.\n  * Community package from [Ondrej's PHP repository](https://launchpad.net/~ondrej/+archive/ubuntu/php).\n  * Multiple PHP versions ~7.1 [EOL]~, ~7.2 [EOL]~, ~7.3 [EOL]~, ~7.4 [EOL]~, ~8.0 [EOL]~, 8.1 [SFO], 8.2 [SFO], 8.3 [Stable], 8.4 [Latest].\n  * Run PHP as user who own the file (Multi-user isolation via FPM pool).\n  * Feel the faster Nginx with secure multi-user environment like a top-notch shared hosting.\n  * Supported PHP Framework and CMS:\n    * Vanilla PHP: default,\n    * Framework: codeigniter, laravel, lumen, phalcon, symfony,\n    * Content Management: drupal, wordpress, wordpress-ms (multi-site),\n    * Web Application: mautic, owncloud, roundcube, sendy, and\n    * more coming soon.\n  * PHP Zend OPcache.\n  * PHP Loader, ionCube \u0026 SourceGuardian.\n* SQL database with MariaDB (MySQL drop-in replacement) or PostgreSQL.\n* NoSQL database with MongoDB.\n* Key-value store database with Redis.\n* In-memory cache with Memcached.\n* FTP server with VSFTPD or Pure-FTPd.\n* Web-based administration tools:\n  * [Adminer](https://www.adminer.org/) web-based SQL \u0026 MongoDB database manager (PhpMyAdmin replacement).\n  * [phpRedisAdmin](https://github.com/erikdubbelboer/phpRedisAdmin) web-based Redis database manager.\n  * [phpMemcachedAdmin](https://github.com/elijaa/phpmemcachedadmin) web-based Memcached manager.\n  * [TinyFileManager](https://github.com/joglomedia/tinyfilemanager) alternative web-based filemanager (Experimental).\n\n## Setting Up\n\n* Ensure that you have git installed.\n* Clone LEMPer Git repositroy, ```git clone https://github.com/joglomedia/LEMPer.git```\n* Enter LEMPer directory\n* Checkout to the desired version, ```git checkout 2.x.x```\n* Make a copy of .env.dist to .env ```cp .env.dist .env``` and replace the values\n\n### Install LEMPer Stack\n\n```bash\nsudo apt-get install git \u0026\u0026 \\\ngit clone -q https://github.com/joglomedia/LEMPer.git \u0026\u0026 \\\ncd LEMPer \u0026\u0026 \\\ncp -f .env.dist .env \u0026\u0026 \\\nsudo ./install.sh\n```\n\n### Remove LEMPer Stack\n\n```bash\nsudo ./remove.sh\n```\n\n### LEMPer Command Line Administration Tool\n\nLEMPer packed with friendly command line tool which makes your LEMPer stack administration much easier. These command line tool called Lemper CLI (lemper-cli) for creating new virtual host and managing existing LEMPer stack.\n\n#### LEMPer CLI Usage\n\nHere are some examples of using LEMPer CLI.\n\n##### LEMPer CLI add new vhost / website\n\n```bash\nlemper-cli site add -u ${USER} -d example.test -f wordpress \\\n-w ${HOME}/webapps/example.test --install-app\n```\n\n:warning: For local/development environment, in order to make the test domain (e.g. example.test) working as expected, you need to do a small workaround by modifying the `/etc/hosts` file. By adding the local domain name to the hosts file and assign it with local/private IP address.\n\nSince version 2.4.0, this workaround could be done via `lemper-cli` by passing `--ipv4` parameter and assign it with private IP address, as below:\n\n```bash\nlemper-cli site add -u ${USER} -d example.test -f wordpress \\ \n-w ${HOME}/webapps/example.test --ipv4=127.0.10.1 --install-app\n```\n\nFor more info\n\n```bash\nlemper-cli site add --help\n```\n\n##### LEMPer CLI manage vhost / website\n\nExample, enable SSL\n\n```bash\nsudo lemper-cli site mod --enable-ssl example.test\n```\n\nExample, enable FastCGI cache\n\n```bash\nsudo lemper-cli site mod --enable-fastcgi-cache example.test\n```\n\nFor more info\n\n```bash\nsudo lemper-cli site mod --help\n```\n\n##### for more help\n\n```bash\nsudo lemper-cli help\n```\n\nNote: LEMPer CLI automagically create new PHP-FPM user's pool configuration if it doesn't exists. You must add the user account first.\n\n### Web-based Administration\n\nYou can access pre-installed web-based administration tools here.\n\n```bash\nhttp://YOUR_IP_ADDRESS:8082/lcp/\n```\n\nAdminer (Web-based SQL database manager)\n\n```bash\nhttp://YOUR_IP_ADDRESS:8082/lcp/dbadmin/\n```\n\nTinyFileManager (Web-based file manager)\n\n```bash\nhttp://YOUR_IP_ADDRESS:8082/lcp/filemanager/\n```\n\n## TODOs\n\n* [x] Add support for Debian (Bullseye, Bookworm) \u0026 Ubuntu (Bionic, Focal, Jammy) distro\n* [x] Add custom build latest [Nginx](https://nginx.org/en/) from source\n* [x] Add [Let's Encrypt SSL](https://letsencrypt.org/)\n* [x] Add network security (iptable rules, firewall configurator, else?)\n* [x] Add database backup tool (Mariabackup, Percona Xtrabackup, else?)\n* [x] Add PostgreSQL database (SQL object-relational database system)\n* [x] Add Pure-FTPd installation as an alternative option to VSFTPD\n* [x] Add enhanced security (AppArmor, cgroups, jailkit (chrooted/jail users), fail2ban, else?)\n* [ ] Add CrowdSec a modern Host-based Intrusion Prevention System (modern-replacement for Fail2ban)\n* [ ] Add NodeJS installation to support modern web frontend development\n* [ ] Add file backup tool (Borg, Duplicati, Rclone, Restic, Rsnapshot, else?)\n* [ ] Add server monitoring (Amplify, Monit, Nagios, else?)\n* [ ] Add user account \u0026 hosting package management\n\nAdd your feature [request here](https://github.com/joglomedia/LEMPer/issues/new)!\n\n## Security Vulnerabilities and Bugs\n\nIf you discover any security vulnerabilities or any bugs within _LEMPer Stack_, please open an [issue](https://github.com/joglomedia/LEMPer/issues/new).\n\n## Contributing\n\n* Fork it ([https://github.com/joglomedia/LEMPer/fork](https://github.com/joglomedia/LEMPer/fork))\n* Create your feature branch (git checkout -b my-new-feature) or fix issue (git checkout -b fix-some-issue)\n* Commit your changes (git commit -am 'Add some feature') or (git commit -am 'Fix some issue')\n* Push to the branch (git push origin my-new-feature) or (git push origin fix-some-issue)\n* Create a new Pull Request\n* GitHub Workflows will be run to make sure that your changes does not have errors or warning\n\n## Awesome People\n\n**LEMPer Stack** is an open-source project licensed under the GNU GPLv3 license with its ongoing development made possible entirely by the support of all these smart and generous people, from code contributors to financial contributors. :purple_heart:\n\nThank you for considering contributing to this project!\n\n### Project Maintainers\n\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n        \u003ctd align=\"center\" valign=\"top\"\u003e\n            \u003cimg width=\"125\" height=\"125\" src=\"https://github.com/joglomedia.png?s=150\"\u003e\n            \u003cbr\u003e\n            \u003cstrong\u003eEdi Septriyanto\u003c/strong\u003e\n            \u003cbr\u003e\n            \u003ca href=\"https://github.com/joglomedia\"\u003e@joglomedia\u003c/a\u003e\n        \u003c/td\u003e\n     \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n### Code Contributors\n\n\u003ca href=\"https://github.com/joglomedia/LEMPer/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=joglomedia/LEMPer\" /\u003e\n\u003c/a\u003e\n\nMade with [contributors-img](https://contrib.rocks).\n\n### Financial Contributors\n\nYou can support development by using any of the methods below:\n\n**[Buy Me a Bottle of Milk or a Cup of Coffee](https://paypal.me/masedi) !!**\n\n## Licence\n\nLEMPer Stack is open-source project licensed under the GNU GPLv3 license.\n\n## Copyright\n\n(c) 2014-2024 | [MasEDI.Net](https://masedi.net/)\n\n### Enjoy LEMPer Stack ;)\n","funding_links":["https://www.paypal.me/masedi","https://paypal.me/masedi"],"categories":["Shell","Development Environment","L"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoglomedia%2FLEMPer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoglomedia%2FLEMPer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoglomedia%2FLEMPer/lists"}