Following are the key points described later in this article:
- Build NodeJS & NPM image
- Build Typescript image
- Create Typescript container
- One script to create images & Typescript container
Build NodeJS & NPM Image
Following code can be used to create NodeJS/NPM image.
# Use base image of centos6
FROM centos:centos6
# Enable Extra Packages for Enterprise Linux (EPEL) for CentOS
RUN yum install -y epel-release
# Install Node.js and npm
RUN yum install -y nodejs npm
Place the code in a file and name it as nodejs_base.df. The above code could be used to build the nodejs image using following command:
docker build -t nodejs_base -f nodejs_base.df .
Build Typescript Image
Following code assumes that above image is built with tag “nodejs_base”.
FROM nodejs_base
RUN npm install -g typescript
Place the code in a file and name it as typescript.df. The above code could be used to build the typescript image using following command:
docker build -t typescript -f typescript.df .
Create Typescript Container
Once the “typescript” image is built, one could create the container where typescript files could be compiled. Following command could be used to build the typescript container.
docker run -ti -dP --name ts1 -v /c/Users:/mnt/Users typescript /bin/bash
Type “tsc –help” command and it should print the information in relation with tsc and different options.
One Script to Create Node/NPM Image & Typescript Container
Following script could be used to create Typescript container.
#!/bin/sh
if [ $# == 0 ]; then
echo "This script expect container name argument. Example: ./installTS.sh ts1"
exit 100
fi
# Build NodeJS image if it does not exists
#
nb_image="nodejs_base"
nb_df="nodejs_base.df"
if [ `docker images $nb_image | wc -l` -lt 2 ]; then
echo "Docker Image $nb_image do not exist..."
echo "Builing docker image $nb_image"
if [ -f $nb_df ]; then
docker build -t $nb_image -f $nb_df .
else
echo "Can't find Dockerfile $nb_df in the current location"
exit 200
fi
fi
# Build Typescript image if it does not exists
#
ts_image="typescript"
ts_df="typescript.df"
if [ `docker images $ts_image | wc -l` -lt 2 ]; then
echo "Docker Image $ts_image do not exist..."
echo "Builing docker image $ts_image"
if [ -f $ts_df ]; then
docker build -t $ts_image -f $ts_df .
else
echo "Can't find Dockerfile $ts_df in the current location"
exit 200
fi
fi
docker run --privileged=true -ti -dP --name $1 -v /c/Users:/mnt/Users $ts_image /bin/bash
- Agentic Reasoning Design Patterns in AI: Examples - October 18, 2024
- LLMs for Adaptive Learning & Personalized Education - October 8, 2024
- Sparse Mixture of Experts (MoE) Models: Examples - October 6, 2024
I found it very helpful. However the differences are not too understandable for me