phundamental is a collection of bash scripts designed to help ease the creation of lightweight
web servers. You're encouraged to delve into the various
install.sh files and customise them
to suit your particular server(s) and personal preferences.
You're already there.
- Install cygwin
- Install the following packages using Cygwin's
- Install apt-cyg
It is recommended that you add
/usr/local/bin to the beginning of your path. Add the following
Clone the repo to a directory on your server:
git clone https://github.com/skl/phundamental.git
N.B. If you're running cygwin or you don't have sudo installed, remove
sudo from the below commands.
Install all modules
Execute the top-level installer, it will ask you which modules to install:
Install one or more modules
Execute the top-level installer with one or more arguments (one per module, order doesn't matter):
sudo phundamental/install nodejs php nginx
phundamental is based on modules. The current out-of-the-box modules are as follows:
- mariadb - An open-source drop-in replacement for MySQL
- nginx - A fast and lightweight alternative to Apache
- php - PHP with FPM if you choose to install v5.3.3+ (or any version now listed in
Each module is designed to allow for the installation of multiple concurrent versions. For example you could run both PHP versions 5.3.20 and 5.4.10 and have nginx use a different version of PHP per virtual host. Configuration examples are included in the modules and are installed at the same time as the binaries.
Source code and binaries will be downloaded and compiled at installation time. This allows phundamental to stay small and portable. A full git clone currently weighs in at about 2 MiB (including all git ojects).
- Oracle Instant Client oic
If you'd like add the optional modules, execute the following in your phundamental installation directory prior to executing the installer:
git submodule update --init
You can update all submodules in future by executing:
git submodule foreach git pull origin master
- postfix (MariaDB backend) + roundcube client