Following are the key points described later in this article:
Following tools are installed to make Javascript development environment.
Following dockerfile (nodejs_base.df) could be used to create NodeJS base image and represents NodeJS runtime.
# Use centos6 base image
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
Following Dockerfile (javascript.df) is used to create Javascript Dev Environment image representing following tools:
FROM nodejs_base
# Install Typescript
RUN npm install -g typescript
# Install Grunt CLI
RUN npm install -g grunt-cli
# Install Bower
RUN npm install -g bower
# Install jshint
RUN npm install -g jshint
# Install Browserify
RUN npm install -g browserify
# Install JSCS
RUN npm install -g jscs
# Install Jasmine
RUN npm install -g jasmine
RUN mkdir /spec
RUN mkdir /spec/support
RUN jasmine init
Following script (installJS.sh) could be used to create Javascript Dev environment. It includes following:
#!/bin/sh
if [ $# == 0 ]; then
echo "This script expect container name argument. Example: ./installTS.sh jsdev"
exit 100
fi
docker stop $1;docker rm $1
# 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
#
js_image="javascript"
js_df="javascript.df"
if [ `docker images $js_image | wc -l` -lt 2 ]; then
echo "Docker Image $js_image do not exist..."
echo "Builing docker image $js_image"
if [ -f $js_df ]; then
docker build -t $js_image -f $js_df .
else
echo "Can't find Dockerfile $js_df in the current location"
exit 200
fi
fi
docker run --privileged=true -ti -dP --name $1 -v /c/Users:/mnt/Users $js_image /bin/bash
When building a Retrieval-Augmented Generation (RAG) application powered by Large Language Models (LLMs), which combine…
Last updated: 25th Jan, 2025 Have you ever wondered how to seamlessly integrate the vast…
Artificial Intelligence (AI) agents have started becoming an integral part of our lives. Imagine asking…
In the ever-evolving landscape of agentic AI workflows and applications, understanding and leveraging design patterns…
In this blog, I aim to provide a comprehensive list of valuable resources for learning…
Have you ever wondered how systems determine whether to grant or deny access, and how…