diff --git a/docker/vitis-vivado/Dockerfile b/docker/vitis-vivado/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..e6cd3dbff1a45acb6f2887985b9142ebbb27eb21
--- /dev/null
+++ b/docker/vitis-vivado/Dockerfile
@@ -0,0 +1,46 @@
+# Use Ubuntu 22.04 as the base image
+FROM ubuntu:22.04
+
+# Set environment variables to ensure non-interactive installs
+ENV DEBIAN_FRONTEND=noninteractive
+
+# Update package lists and install necessary packages
+RUN apt-get update && apt-get install -y \
+    wget \
+    curl \
+    unzip \
+    build-essential \
+    locales \
+    usbutils \
+    vim \
+    emacs \
+    libudev1 \
+    libudev-dev \
+    && rm -rf /var/lib/apt/lists/*
+
+# Generate the en_US.UTF-8 locale
+RUN locale-gen en_US.UTF-8
+
+# Set the locale environment variables
+ENV LANG=en_US.UTF-8 \
+    LC_ALL=en_US.UTF-8 \
+    LANGUAGE=en_US.UTF-8
+
+# Set LD_PRELOAD to automatically load the required libudev.so.1
+ENV LD_PRELOAD=/lib/x86_64-linux-gnu/libudev.so.1
+
+# Create the required directory (if needed) and copy your script or other necessary files
+# Assuming the installLibs.sh script is available in the build context
+COPY ./installLibs.sh /installLibs.sh
+
+# Make sure the script is executable
+RUN chmod +x /installLibs.sh
+
+# Run the installation script during the build process
+RUN /installLibs.sh
+
+ENV XILINXD_LICENSE_FILE="2100@10.136.142.218"
+ENV LM_LICENSE_FILE="2100@10.136.142.218"
+
+# Make the script run automatically when the container starts
+ENTRYPOINT ["/bin/bash", "-c", "source /tools/Xilinx/Vivado/2024.2/settings64.sh && exec bash"]
\ No newline at end of file
diff --git a/docker/vitis-vivado/installLibs.sh b/docker/vitis-vivado/installLibs.sh
new file mode 100755
index 0000000000000000000000000000000000000000..2e254b6e10a9c04cd4807c4cef2b84bb49d28810
--- /dev/null
+++ b/docker/vitis-vivado/installLibs.sh
@@ -0,0 +1,127 @@
+#!/bin/bash
+#############################################################
+# Copyright (c) 1986-2019 Xilinx, Inc. All rights reserved.  #
+#############################################################
+
+if [ "$EUID" -ne 0 ]; then
+   echo "This script must be run as root" 
+   exit 1
+fi
+
+user=`who am i | awk '{print $1}'`
+if [ "foo${user}" == "foo" ] ; then
+        tmp=`tty`
+        user=`ls -l ${tmp} | awk '{print $3}'`
+fi
+tstamp=$(date '+%Y-%m-%d_%H-%M-%S')
+scriptName=`basename "$0"`
+logFile=$PWD/${scriptName}_${tstamp}
+touch $logFile; chmod 777 $logFile
+
+root=$(readlink -f $(dirname ${BASH_SOURCE[0]}))
+
+ ############################### Check OS version requirement ###################
+# use lsb_release to get the OS info, if lsb_release is not installed then       #
+# try to extract the os inof from  /etc/os-release                               #
+ ################################################################################
+test=$(lsb_release >/dev/null; echo $?)
+if [ $test == 0 ]; then
+  OSDIST=`lsb_release -i |awk -F: '{print tolower($2)}' | tr -d ' \t'`
+  OSREL=`lsb_release -r |awk -F: '{print tolower($2)}' |tr -d ' \t' | awk -F. '{print $1}'`
+elif [ -f /etc/os-release ] ; then
+  echo "No lsb_release found, extracting info from: /etc/os-release "  >> $logFile
+  echo "No lsb_release found, trying to extract OS info from: /etc/os-release"
+  OSDIST=$(awk -F= '$1=="ID" { print $2 ;}' /etc/os-release)
+  OSDIST=$(echo "$OSDIST" | tr -d '"')
+  OSREL=$(awk -F= '$1=="VERSION_ID" { print $2 ;}' /etc/os-release)
+  OSREL=$(echo "$OSREL" | tr -d '"')
+else
+ echo "I could not detect the OS and version. Please install lsb and run this script again."
+ echo "To install lsb_release on Ubuntu run: 'sudo apt-get install -y lsb"
+ echo "To install lsb_release on CentOS/REHL run: sudo yum install -y lsb"
+ echo "Could not detect the OS and version. please install lsb_release and run this script again" >> $logFile
+ echo "To install lsb_release on Ubuntu run: 'sudo apt-get install -y lsb" >> $logFile
+ echo "To install lsb_release on CentOS/REHL run: sudo yum install -y lsb" >> $logFile
+ exit 1
+fi
+echo "$OSDIST-$OSREL install"
+echo "$OSDIST-$OSREL install" >> $logFile
+
+doUbuntu()
+{
+### AIE Tools prerequisite libraries
+   apt-get update | tee -a $logFile
+   apt-get install -y libc6-dev-i386 net-tools | tee -a $logFile
+   apt-get install -y graphviz | tee -a $logFile
+   apt-get install -y make | tee -a $logFile
+### Vitis Tools prerequisite libraries
+   apt-get install -y unzip | tee -a $logFile
+   apt-get install -y zip | tee -a $logFile
+   apt-get install -y g++ | tee -a $logFile
+   apt-get install -y libtinfo5 | tee -a $logFile
+   apt-get install -y xvfb | tee -a $logFile
+   apt-get install -y git | tee -a $logFile
+   apt-get install -y libncursesw5 | tee -a $logFile
+   apt-get install -y libc6-dev-i386 | tee -a $logFile
+   apt-get install -y libnss3-dev | tee -a $logFile
+   apt-get install -y libgdk-pixbuf2.0-dev | tee -a $logFile
+   apt-get install -y libgtk-3-dev | tee -a $logFile
+   apt-get install -y libxss-dev  | tee -a $logFile
+   apt-get install -y libasound2   | tee -a $logFile
+   apt-get install -y compat-openssl10  | tee -a $logFile
+   apt-get install -y fdisk  | tee -a $logFile
+}
+
+doCentOs_RHEL_common()
+{
+### AIE Tools prerequisite libraries
+    yum install -y graphviz | tee -a $logFile
+    yum install -y redhat-lsb | tee -a $logFile
+    yum install -y openssl | tee -a $logFile
+    yum install -y libXScrnSaver | tee -a $logFile
+    yum install -y xorg-x11-utils | tee -a $logFile
+### Vitis Tools prerequisite libraries
+    yum install -y gcc | tee -a $logFile
+    yum install -y gcc-c++ | tee -a $logFile
+    yum install -y git | tee -a $logFile
+    ### To install kernel headers and kernel development packages
+    yum install -y kernel-headers-`uname -r` | tee -a $logFile
+    yum install -y kernel-devel-`uname -r` | tee -a $logFile
+    yum install -y Xvfb | tee -a $logFile
+}
+
+doCentOs()
+{
+    yum install -y epel-release | tee -a $logFile
+}
+
+doRHELOs()
+{
+    LIBTINFO=$(find "/lib64/" -type f -name "libtinfo.so*") 
+    ln -s $LIBTINFO /lib64/libtinfo.so.5
+}
+
+if [[ $OSDIST == "ubuntu" ]]; then
+  doUbuntu
+fi
+
+if [[ $OSDIST == "centos" ]]; then
+  doCentOs_RHEL_common
+  doCentOs
+fi
+
+if [[ $OSDIST == "redhat"* ]]; then
+  doCentOs_RHEL_common
+fi
+
+if [[ $OSDIST == "rhel"* ]]; then
+  doCentOs_RHEL_common
+  doRHELOs
+fi
+
+if [[ $OSDIST == "almalinux"* ]]; then
+  doCentOs_RHEL_common
+  doRHELOs
+fi
+
+echo "INFO: For more information please check $logFile log."