I'm looking to make a virtual machine running some flavor of Linux, install a Java application server, deploy my proprietary software to the VM/app server, then distribute the VM as a virtual appliance. I'm not well versed with either Linux or Java, so I seek the collective wisdom of AnandTech. So here are the needs: 1. Operating system must be able to be freely distributed even though the software it ships with will NOT be free. 2. The application server/dev stack must implement Java EE 6, but 7 would be nice. 3. The app server must also be freely distributable, even when shipped with non-free, paid software. 4. Setup and management of the OS and AS should be simple. I don't want any "1337 h4xer LiNuX" crap; I just want something straight forward and effective. Here's what I'm thinking so far for the OS (one of these): 1. CentOS - free alternative to RedHat, rock solid SE-Linux, great support 2. Oracle JeOS - designed for application distribution, small footprint, not sure about support 3. ??? Here's what I've come up with for the application server and development stack (one of these): 1. JBoss - if using CentOS, this would kind of make sense. RHEL and JBoss are packaged together routinely, and CentOS is a free alternative to RHEL. 2. Glassfish - reference Java EE platform maintained by Oracle. If using Oracle JeOS, this would kind of make sense, too. 3. ?? What do you guys think? edit: I just started messing around with Oracle Linux... Looks all fine and dandy until you realize that it will not receive updates unless you pay for support! What a load of crap. What's the point of touting it as a free, enterprise solution if it can't even receive security updates for free?