Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

TypeScript Sample Application

This repository provides a simple starting point for running TypeScript applications on OpenShift. It can also be applied to applications that use Babel or other transpilers.

A blogpost that runs through the details of this repository and OpenShift can be found here.

You can use this repository as a template, just click the green "Use this template" button at the top of this page on GitHub.

Running on OpenShift via NodeShift

To use this method of deployment you'll need:

NodeShift is a neat CLI that simplifies deployment of Node.js applications on OpenShift. This project incldues NodeShift in devDependencies.

You can run the following to deploy it on an OpenShift instance:

$ git clone ts-openshift

$ cd ts-openshift

# Ensure you are logged into your openshift instance
$ oc login

# Choose the project you'd like to deploy this applicaion into
$ oc new-project ts-example

# Build, deploy, and expose an endpoint for the service
$ npm run nodeshift -- --expose

If you're deploying on a locally running instance of OpenShift you might need to do the following to bypass the self-signed certificate issues:

$ npm run nodeshift -- --expose --strictSSL=false

Running Locally without Docker

To run this application locally you'll need:

  • Node.js v12 or later
  • npm v6 or later
  • Git

Exectute the following commands to start the program locally:

$ git clone ts-openshift

$ cd ts-openshift

$ npm install

$ npm run build

$ npm start

If you're developing locally, start a live reload server like so:

npm run start-dev

Running Locally using Docker and s2i

To perform the following steps you'll need:

With both tools installed, execute the following commands to run your application locally. This will create a container that matches the one created using an OpenShift Build.

# Upstream builder image
export BASE_IMAGE=centos/nodejs-12-centos7

# Official Red Hat builder image
# You can use this if you have logged in to
# export

# Build the latest local commit into a container image. The "--copy" flag
# indicates we build the local source and not remote git origin
$ s2i build --copy . $BASE_IMAGE openshift-ts

# Run our container image
$ docker run -p 8080:8080 -dit --name openshift-ts openshift-ts