Node.js run from GitHub in Generic Docker Container backed by Dockerized Redis Cache

In a previous article I talked about a generic Docker Container Image that can be used to run any Node.js application directly from GitHub or some other Git instance by feeding the Git repo url as Docker run parameter (see https://technology.amis.nl/2017/05/21/running-node-js-applications-from-github-in-generic-docker-container/). In this article, I create a simple Node.js application that will be pushed to GitHub and run in that generic Docker container. It will use a Redis cache that (more...)

Running Node.js applications from GitHub in generic Docker Container

This article shows how I create a generic Docker Container Image to run any Node.JS application based on sources for that application on GitHub. The usage of this image is shown in this picture:

 

image

Any Node.JS application in any public GitHub repo can be run using this Docker Container Image. When a container is run from this image, the url for the GitHub Repo is passed in as environment variable – as (more...)

Sequential Asynchronous calls in Node.JS – using callbacks, async and ES6 Promises

One of the challenges with programming in JavaScript (ECMA Script) in general and Node.JS in particular is having to deal with asynchronous operations. Whenever a call is made to a function that will handle the request asynchronously, care has to be taken to be prepared to receive the result from the function in an asynchronous fashion. Additionally, we have to ensure that the program flow does not continue prematurely – only those steps that (more...)

Oracle Database standard Geo Location Support using Locator (included in every edition!)

imageMany databases have native support for locations en geodata – and determining distance and closest locations (within a certain perimeter). Oracle Database has the [Graph and] Spatial Option – that supports even the most advanced and exotic forms of location related data querying (including multidimensional shapes and probably relativistic effects); this option comes on top of Enterprise Edition and carries additional costs. What may be not as well know is the Locator functionality that is (more...)

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

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 (more...)

Server Sent Events from Node.js to Web Client – pushing user command line input to all Subscribed Browser Sessions

imageNode can push messages to browser clients, using WebSockets and the simpler Server Sent Events (SSE) mechanism. We will use the latter in this article – to push updates (event) to all subscribed browser clients.

The browser loads index.html from the Node.js server. This file contains a JavaScript fragment that makes an AJAX call to the Node.js server (URL: /updates ) to register as a SSE Client. As part of that subscription, (more...)

Quickest way to get going with Node.js and MongoDB – using the mongodb Node driver and a free MongoDB instance in the cloud with mLab

imageWhile preparing for a workshop on Node.js, I ran into the by far quickest way to get some a simple Node.js application  running against a  MongoDB database. I stumbled into mLab (https://mlab.com/) for database hosting. This company offers various plans for cloud based MongoDB environments – including a free plan for an environment with up to 500 MB data. Plenty for a quick trial of the Node.JS => MongoDB (more...)