Fastest creation of a Lean VirtualBox VM Image with Oracle Database 11gR2 XE, the Node.JS 7.x and the Oracle DB Driver for Node

1
Share this on .. Tweet about this on TwitterShare on LinkedIn4Share on Facebook0Share on Google+0Email this to someoneShare on Tumblr0Buffer this page

For a workshop on Node.js I needed a VM to demonstrate and students try out the Oracle DB Driver for Node. I wanted a lean VM with the bare minimum: Oracle Database XE, Node, the Oracle DB Driver for Node and the Git client (for fetching sources from GitHub). I stumbled across the OXAR repository in GitHub (https://github.com/OraOpenSource/OXAR ) – Oracle XE & APEX build script along with images for popular cloud platforms http://www.oraopensource.com/oxar/ . Using the sources I found here, I could create my VM in a few simple, largely automated steps. I ended up with a 4.5 GB sized VM image (which exports as a 1.5 GB appliance) that runs in 1 GB. It is more than adequate for my needs.

The steps – for myself if I need to go through them again and of course for you, the reader, to also create this handsome, useful VM.

The steps for creating your own VM image are as follows:

1. make sure that you have Vagrant and VirtualBox installed locally (https://www.vagrantup.com/ and https://www.virtualbox.org/)

2. get the OXAR repository content

git clone https://github.com/OraOpenSource/OXAR

3. Download Oracle 11gR2 XE  installer for Linux from OTN: http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html and copy the downloaded file oracle-xe-11.2.0-1.0.x86_64.rpm.zip (the Linux installer for Oracle 11gR2 XE Database downloaded from OTN) to the OXAR/files directory
image

4. edit the file config.properties in the OXAR root directory

SNAGHTML93536f

– set parameter OOS_ORACLE_FILE_URL to file:///vagrant/files/oracle-xe-11.2.0-1.0.x86_64.rpm.zip and save the change:

OOS_ORACLE_FILE_URL=file:///vagrant/files/oracle-xe-11.2.0-1.0.x86_64.rpm.zip

image

Use the OOS_MODULE_XXX flags to specify which components should be installed. Here I have chosen not to install APEX and NODE4ORDS.

5. run vagrant using the statement:

vagrant up

this will run for a file, download the CentOS base image and create the VM (with NAT network configuration), install all of Git client, Oracle 11gR2 XE Database, Node and Node OracleDB Driver
SNAGHTML9564ec

6. after rebooting the system, the VM will be started (or you can start it using vagrant up again or by using the VirtualBox manager).

SNAGHTML973989

You can start an SSH session into it by connecting to localhost:50022, then login to Linux using vagrant/vagrant

image

7. connect to the database using sqlplus hr/oracle

image

8. Try out Node.js

image

9. To try out Node against Oracle Database using the driver, you can clone the GitHub Repository:

git clone https://github.com/lucasjellema/nodejs-oracledbdriver-quickstart

image

Next, cd into the newly created directory

image

and run the file select.js:

image

10. To try out PL/SQL as well:

Create the procedure get_salary using the file get_salary_proc.sql

 

image

Run Node program plsql.js:

image

Share this on .. Tweet about this on TwitterShare on LinkedIn4Share on Facebook0Share on Google+0Email this to someoneShare on Tumblr0Buffer this page

About Author

Lucas Jellema, active in IT (and with Oracle) since 1994. Oracle ACE Director and Oracle Developer Champion. Solution architect and developer on diverse areas including SQL, JavaScript, Docker, Machine Learning, Java, SOA and microservices, events in various shapes and forms and many other things. Author of the Oracle Press books: Oracle SOA Suite 11g Handbook and Oracle SOA Suite 12c Handbook. Frequent presenter on community events and conferences such as JavaOne, Oracle Code and Oracle OpenWorld.

1 Comment

  1. Hey Lucas, can I suggest you guys make your blog titles shorter? Quite often they are longer than the 140 character limit Twitter imposes, so I have to edit them if I want to tweet it! 🙂

    Pete

Leave a Reply