From 763e21ee579cc15e73658305e2352326e0e4ab5a Mon Sep 17 00:00:00 2001 From: Sameer Memon Date: Sun, 18 Feb 2024 00:42:30 +0530 Subject: [PATCH 1/3] docker-install.sh --- docker-install.sh | 149 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 149 insertions(+) create mode 100644 docker-install.sh diff --git a/docker-install.sh b/docker-install.sh new file mode 100644 index 0000000..0a49a47 --- /dev/null +++ b/docker-install.sh @@ -0,0 +1,149 @@ +#!/bin/bash + +# Function to check the OS type and print the message +checkAndPrintOSType() { + if [ -f /etc/os-release ]; then + source /etc/os-release + if [ "$ID" == "ubuntu" ]; then + if [ "$VERSION_ID" == "20.04" ]; then + echo "Installed OS is Ubuntu 20.04." + elif [ "$VERSION_ID" == "22.04" ]; then + echo "Installed OS is Ubuntu 22.04." + else + echo "Installed OS is Ubuntu, but version is not 20.04 or 22.04." + fi + elif [ "$ID" == "debian" ]; then + echo "Installed OS is Debian." + elif [ "$ID" == "centos" ]; then + echo "Installed OS is CentOS." + elif [ "$ID" == "fedora" ]; then + echo "Installed OS is Fedora." + elif [ "$ID" == "amzn" ] || [ "$ID" == "amzn2" ]; then + echo "Installed OS is Amazon Linux." + elif [ "$ID" == "opensuse" ]; then + echo "Installed OS is OpenSUSE." + else + echo "Unknown OS." + fi + else + echo "OS release file not found." + fi +} + +checkDockerInstalled() { + if ! command -v docker &>/dev/null; then + echo "Docker is not installed." + return 1 + else + echo "Docker is already installed." + return 0 + fi +} + +# Function to install Docker +installDocker(){ + if ! checkDockerInstalled; then + echo "##############################################################################################################################" + echo "Docker is an open platform for developing, shipping, and running applications." + echo "It enables you to separate your applications from your infrastructure so you can deliver software quickly." + echo "" + echo "Please select your operating system/distribution to install Docker:" + echo "##############################################################################################################################" + echo "" + + PS3="Select your OS/Distribution: " + select os_option in \ + "Ubuntu 20.04 or 22.04" \ + "Debian" \ + "CentOS" \ + "Fedora" \ + "Amazon Linux" \ + "OpenSUSE" \ + "Quit" + do + case $REPLY in + 1) installDockerUbuntu ;; + 2) installDockerDebian ;; + 3) installDockerCentOS ;; + 4) installDockerFedora ;; + 5) installDockerAmazonLinux ;; + 6) installDockerOpenSUSE ;; + 7) exit ;; + *) echo "Invalid selection, please try again..." ;; + esac + done + else + echo "Docker is already installed." + exit 0 + fi +} + +# Function to install Docker on Ubuntu +installDockerUbuntu() { + clear + echo "Installing Docker on Ubuntu..." + sudo apt update + sudo apt install -y docker.io + echo "Docker installed successfully!" + exit 0 +} + +# Function to install Docker on Debian +installDockerDebian() { + clear + echo "Installing Docker on Debian..." + sudo apt update + sudo apt install -y docker.io + echo "Docker installed successfully!" + exit 0 +} + +# Function to install Docker on CentOS +installDockerCentOS() { + clear + echo "Installing Docker on CentOS..." + sudo yum install -y docker + sudo systemctl start docker + sudo systemctl enable docker + echo "Docker installed successfully!" + exit 0 +} + +# Function to install Docker on Fedora +installDockerFedora() { + clear + echo "Installing Docker on Fedora..." + sudo dnf install -y docker + sudo systemctl start docker + sudo systemctl enable docker + echo "Docker installed successfully!" + exit 0 +} + +# Function to install Docker on Amazon Linux +installDockerAmazonLinux() { + clear + echo "Installing Docker on Amazon Linux..." + sudo yum install -y docker + sudo systemctl start docker + sudo systemctl enable docker + echo "Docker installed successfully!" + exit 0 +} + +# Function to install Docker on OpenSUSE +installDockerOpenSUSE() { + clear + echo "Installing Docker on OpenSUSE..." + sudo zypper install -y docker + sudo systemctl start docker + sudo systemctl enable docker + echo "Docker installed successfully!" + exit 0 +} + +# Call the function to check and print the OS type +checkAndPrintOSType + +# Call the function to install Docker +installDocker From 7ecd0ccbbf285f7633353c93037a9a73ff462104 Mon Sep 17 00:00:00 2001 From: sameermemon93 Date: Wed, 21 Feb 2024 19:53:09 +0000 Subject: [PATCH 2/3] Challenge accepted and file added --- s3bucket.sh | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 s3bucket.sh diff --git a/s3bucket.sh b/s3bucket.sh new file mode 100755 index 0000000..b792f75 --- /dev/null +++ b/s3bucket.sh @@ -0,0 +1,55 @@ +#!/bin/bash + +aws_cli(){ +if ! command -v aws &> /dev/null; then + echo "AWS CLI is not installed" + echo "Installing AWS CLI" + sudo apt update + sudo apt install awscli + echo "AWS CLI is successfully installed." +else + echo "AWS CLI is already installed and version is" + aws --version + return 1 +fi +} + + +create_s3(){ + local name=$1 + local region=$2 + local bucket_config_arg +#AWS CLI command to create s3 bucket + s3=$(aws s3api create-bucket \ + --bucket $name \ + --region $region \ + --create-bucket-configuration LocationConstraint=$region) + + if (bucket_exists "$name"); then + exit 1 + fi + +#If we want to create bucket outside us-east-1 location, otherwise you will get error of (IllegalLocationConstraintException) + +if [[ "$region" != "us-east-1" ]]; then + bucket_config_arg="--create-bucket-configuration LocationConstraint=$region" + fi + +} + +bucket_exists(){ + + aws s3api head-bucket --bucket $name --region $region 2>/dev/null + return 1 +} + +main(){ +aws_cli +echo "Creating s3 bucket" +name="lastshell22" +region="eu-west-2" +create_s3 $name $region +bucket_exists +} + +main From ba0c23b08e512a6088d57966e876e33463b9896a Mon Sep 17 00:00:00 2001 From: sameermemon93 Date: Wed, 21 Feb 2024 20:06:47 +0000 Subject: [PATCH 3/3] Challenge accepted and created shellscript --- s3bucket.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/s3bucket.sh b/s3bucket.sh index b792f75..8305dff 100755 --- a/s3bucket.sh +++ b/s3bucket.sh @@ -23,7 +23,7 @@ create_s3(){ s3=$(aws s3api create-bucket \ --bucket $name \ --region $region \ - --create-bucket-configuration LocationConstraint=$region) + --create-bucket-configuration LocationConstraint=$region) #by using this command you can create s3 bucket rest of the region except us-east-1 region, by default the regiuon is us-east-1 if (bucket_exists "$name"); then exit 1 @@ -46,7 +46,7 @@ bucket_exists(){ main(){ aws_cli echo "Creating s3 bucket" -name="lastshell22" +name="enteruniquebucketname33" region="eu-west-2" create_s3 $name $region bucket_exists