<commit_before>[![Vagrant LEMTL v2.0.0](https://img.shields.io/badge/vagrant--lemtl-v2.0.0-000033.svg)](https://github.com/mikesprague/vagrant-lemtl)
[![Vagrant v1.8.6](https://img.shields.io/badge/vagrant-v1.8.6-212121.svg)](https://www.vagrantup.com/downloads.html)
[![Virtual Box v5.1.8](https://img.shields.io/badge/virtualbox-v5.1.8-003300.svg)](https://www.virtualbox.org/wiki/Downloads)
[![Lucee v5.1.0.31](https://img.shields.io/badge/lucee-v5.1.0.31-2e0854.svg)](http://lucee.org/downloads.html)

# Vagrant LEMTL

Vagrant box with Linux, Nginx, MariaDB (or MySQL), Tomcat, and Lucee for local development with CFML and Java

---

Find this project useful? [Show some love :revolving_hearts:](https://www.creatorlove.com/mikesprague/vagrant-lemtl) and buy me a cup of cofee! :coffee:

---

**Last Updated October 21, 2016**

## Prerequisites

NOTE: All version numbers used in this document are confirmed to work, and are current, as of the above last updated date

### Required

It is assumed you have Virtual Box and Vagrant installed. If not, then grab the latest version of each at the links below:

* [Virtual Box and Virtual Box Extension Pack](https://www.virtualbox.org/wiki/Downloads) (v5.1.8)
* [Vagrant](https://www.vagrantup.com/downloads.html) (v1.8.6)

### Highly Recommended

Once Vagrant is installed, or if it already is, it's highly recommended that you install the following Vagrant plugins:

* [vagrant-hostsupdater](https://github.com/cogitatio/vagrant-hostsupdater) (v1.0.2)

  ```bash
  vagrant plugin install vagrant-hostsupdater
  ```

---

## What's Included

* Ubuntu Server v14.04.4 LTS (Trusty Tahr) 64bit
  * Make sure curl, wget, unzip, zip, iptables, debconf-utils, and software-properties-common are installed
  * Set vm timezone (configure in Vagrantfile)
  * NOTE: Tested and working with Ubuntu v12.04, v14.04, v14.10, v15.04 (configurable via Vagrantfile)
* Nginx v1.11.2
  * Set up to serve all static content and reverse-proxy cfm/cfc/jsp requests to Tomcat
  * MariaDB v10.1.x or MySQL v5.7.x (defaults to MariaDB, configurable in Vagrantfile)
  * lower_case_table_names = 1 (disables case sensitivity)
  * bind-address set to 0.0.0.0 so database server can be accessed from the host machine directly (without ssh tunnel)
* Tomcat v7.0.52 with Java (OpenJDK) v1.8.0_91
  * catalina.properties tweaks for improved performance
* Lucee v172.16.58.3 (dev)
  * [cfspreadsheet-lucee-5](https://github.com/Leftbower/cfspreadsheet-lucee-5) pre-installed
    * Many thanks to <NAME> for his work updating cfspreadsheet-lucee for Lucee 5 compatibility
  * [jsoup v1.9.2](http://jsoup.org/) included in Lucee server bundles directory
    * Example instantiation:

      ```java
        objJsoup = createObject( "java", "org.jsoup.Jsoup" );
      ```
    * jsoup documentation:
      * [API Docs -  http://jsoup.org/apidocs/](http://jsoup.org/apidocs/)
      * [Cookbook - http://jsoup.org/cookbook/](http://jsoup.org/cookbook/)
  * Tweaks to Lucee via server admin
    * Smart whitespace suppression
    * Preserve single quotes option enabled for dataase queries
    * Update provider set to Development Releases
    * Default cache (ehcache) setup so cacheGet/cachePut/etc work out of the box

---

## Installation

The first time you clone the repo and bring the box up, it may take several minutes.
If it doesn't explicitly fail/quit, then it is still working (the Linux updates, on<commit_msg>Note current version of nginx<commit_after>[![Vagrant LEMTL v2.0.0](https://img.shields.io/badge/vagrant--lemtl-v2.0.0-000033.svg)](https://github.com/mikesprague/vagrant-lemtl)
[![Vagrant v1.8.6](https://img.shields.io/badge/vagrant-v1.8.6-212121.svg)](https://www.vagrantup.com/downloads.html)
[![Virtual Box v5.1.8](https://img.shields.io/badge/virtualbox-v5.1.8-003300.svg)](https://www.virtualbox.org/wiki/Downloads)
[![Lucee v5.1.0.17](https://img.shields.io/badge/lucee-v5.1.0.17-2e0854.svg)](http://lucee.org/downloads.html)

# Vagrant LEMTL

Vagrant box with Linux, Nginx, MariaDB (or MySQL), Tomcat, and Lucee for local development with CFML and Java

---

Find this project useful? [Show some love :revolving_hearts:](https://www.creatorlove.com/mikesprague/vagrant-lemtl) and buy me a cup of cofee! :coffee:

---

**Last Updated October 21, 2016**

## Prerequisites

NOTE: All version numbers used in this document are confirmed to work, and are current, as of the above last updated date

### Required

It is assumed you have Virtual Box and Vagrant installed. If not, then grab the latest version of each at the links below:

* [Virtual Box and Virtual Box Extension Pack](https://www.virtualbox.org/wiki/Downloads) (v5.1.8)
* [Vagrant](https://www.vagrantup.com/downloads.html) (v1.8.6)

### Highly Recommended

Once Vagrant is installed, or if it already is, it's highly recommended that you install the following Vagrant plugins:

* [vagrant-hostsupdater](https://github.com/cogitatio/vagrant-hostsupdater) (v1.0.2)

  ```bash
  vagrant plugin install vagrant-hostsupdater
  ```

---

## What's Included

* Ubuntu Server v14.04.4 LTS (Trusty Tahr) 64bit
  * Make sure curl, wget, unzip, zip, iptables, debconf-utils, and software-properties-common are installed
  * Set vm timezone (configure in Vagrantfile)
  * NOTE: Tested and working with Ubuntu v12.04, v14.04, v14.10, v16.04 (configurable via Vagrantfile)
* Nginx v1.11.5
  * Set up to serve all static content and reverse-proxy cfm/cfc/jsp requests to Tomcat
  * MariaDB v10.1.x or MySQL v5.7.x (defaults to MariaDB, configurable in Vagrantfile)
  * lower_case_table_names = 1 (disables case sensitivity)
  * bind-address set to 0.0.0.0 so database server can be accessed from the host machine directly (without ssh tunnel)
* Tomcat v7.0.52 with Java (OpenJDK) v1.8.0_91
  * catalina.properties tweaks for improved performance
* Lucee v172.16.58.3 (dev)
  * [cfspreadsheet-lucee-5](https://github.com/Leftbower/cfspreadsheet-lucee-5) pre-installed
    * Many thanks to <NAME> for his work updating cfspreadsheet-lucee for Lucee 5 compatibility
  * [jsoup v1.9.2](http://jsoup.org/) included in Lucee server bundles directory
    * Example instantiation:

      ```java
        objJsoup = createObject( "java", "org.jsoup.Jsoup" );
      ```
    * jsoup documentation:
      * [API Docs -  http://jsoup.org/apidocs/](http://jsoup.org/apidocs/)
      * [Cookbook - http://jsoup.org/cookbook/](http://jsoup.org/cookbook/)
  * Tweaks to Lucee via server admin
    * Smart whitespace suppression
    * Preserve single quotes option enabled for dataase queries
    * Update provider set to Development Releases
    * Default cache (ehcache) setup so cacheGet/cachePut/etc work out of the box

---

## Installation

The first time you clone the repo and bring the box up, it may take several minutes.
If it doesn't explicitly fail/quit, then it is still working (the Linux updates, on
{'fraction_non_alphanumeric': 0.12256752831832704, 'fraction_numerical': 0.03659599186755736, 'mean_word_length': 3.929849677881174, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 24, 'lorem ipsum': 0, 'www.': 10, 'xml': 0}, 'pii_count': 8, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 12, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3645329', 'n_tokens_mistral': 2543, 'n_tokens_neox': 2359, 'n_words': 687}