https://github.com/neurobin/lampi
LAMP installer for Ubuntu
https://github.com/neurobin/lampi
apache2 custom-domain lamp-installation lampi linux localhost localhost-management localhost-related mysql php php7 phpmyadmin server ubuntu
Last synced: 6 months ago
JSON representation
LAMP installer for Ubuntu
- Host: GitHub
- URL: https://github.com/neurobin/lampi
- Owner: neurobin
- License: gpl-3.0
- Created: 2016-06-19T18:30:15.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2020-05-27T14:45:43.000Z (over 5 years ago)
- Last Synced: 2025-06-12T20:08:03.500Z (7 months ago)
- Topics: apache2, custom-domain, lamp-installation, lampi, linux, localhost, localhost-management, localhost-related, mysql, php, php7, phpmyadmin, server, ubuntu
- Language: Shell
- Homepage: https://neurobin.org/projects/softwares/unix/lampi
- Size: 41 KB
- Stars: 13
- Watchers: 4
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: COPYING
Awesome Lists containing this project
README
The **lampi** script can install the required packages automatically and setup LAMP for you. It can also be used to create custom sites (both http and https) on *localhost*.
**The installation is only for Ubuntu, other functionality (like setting up custom sites) are available for other Linux flavors as well**
# Install:
**lampi** is a single script. You can install it or run it from anywhere by specifying its path. This is how you can install it:
```sh
sudo chmod +x install.sh
sudo ./install.sh
```
i.e just give the *install.sh* file execution permission and run it, or you can manually copy the **lampi** script to a standard bin (e.g */usr/local/bin*) directory and assign execution permission to it.
# Usage:
1. To install a basic LAMP installation with a default setup, run `sudo lampi -i`
2. To install a basic LAMP with SSL site (https) run `sudo lampi -i -s`
3. To simply setup a new site run `sudo lampi -n site-name -dr document-root`, where `site-name` is the desired name of the local site and `document-root` is the directory where you want to create this site.
4. Do the same as no. 3 but enable SSL (https too): `sudo lampi -n site-name -dr document-root -s`
# Examples:
To create a site named **example.com.local** in *~/example*, run the following:
```sh
sudo lampi -s -n example.com.local -dr ~/example
```
The above command will create a site (with both *http* and *https*) in *~/example* (*/home/user/example*) directory. The site will be accessible through the URLs:
http://example.com.local and https://example.com.local
**For https site you will have to add exception to your browser for the SSL certificate**
If you haven't installed the LAMP yet, then just add a `-i` flag to the above command:
```sh
sudo lampi -i -s -n example.com.local -dr ~/example
```
## Amazon AWS EC2
On amazon aws ec2 ubuntu server instance, you can setup your LAMP server pretty easily:
```bash
git clone https://github.com/neurobin/lampi
cd lampi
sudo ./install.sh
```
Now to install LAMP, run `sudo lampi -i`
```bash
sudo lampi -i -n mydomain.com -dr /var/www/mydomain.com -nip
```
The above will install LAMP stack and create a website named `mydomain.com` in */var/www/mydomain.com* (the `-nip` option is required if you want to expose the site publicly)
# Options:
```sh
lampi [-n, -dr, -i, -ri, -u, -s, -so, -rm, -rmd, -nfo, -nsr, -nip, -f -nu, -v, -h]
```
Option | Alt. option | Explanation
------ | ----------- | ----------
-n [name] | --name [name] | server name (default localhost)
-dr [path] | --doc-root [path] | arbitrary document root
-i | --install | install LAMP
-ri | --reinstall | reinstall LAMP
-u | --uninstall | uninstall LAMP
-s | --ssl | enable SSL
-rm [name] | --remove [name] | remove a site
-rmd [name] | --remove-with-dir [name] | remove a site and it's directory
-f | --force | force
-nu | --no-update | do not run apt-get update
-so | --ssl-only | configure for https site only
-npa | --no-php-myadmin | no php my admin
-nfo | --no-info | do not create info.php
-nsr | --no-server-restart | no server restart
-nip | --no-ip | no ip, i.e use * instead of 127.0.0.1
-v | --version | show version info
-h | --help | show help
# Notes:
1. All options to **lampi** are optional. If any option is not passed, it will be defaulted to some predefined value.
2. The `-u` flag uses `apt-get purge` i.e it will remove LAMP as well as its configuration.
# Tested On:
1. Xubuntu 14.04.4 LTS
2. Xubuntu 16.04 LTS
3. Ubuntu 16.10
4. Amazon AWS EC2 Ubuntu 16.04 server instance.