Installing Docker

This section will cover how to install Docker on a linux operating system. This script assumes that you run the script as a root user.
Custom script
Section titled “Custom script”This script will automatically install Docker on your Linux system.
curl -fsSL cdn.aio.sh/docker.sh | shPost installation
Section titled “Post installation”Create the docker group:
sudo groupadd dockerAdd the user to the Docker group:
sudo usermod -aG docker $USERActivate the changes:
newgrp dockerVerify if you can use docker:
docker psThe script:
Section titled “The script:”#!/bin/bash
# Define logging functionsecho_fail() { printf "\e[31m✘ \033\e[0m$@\n"}echo_pass() { printf "\e[32m✔ \033\e[0m$@\n"}echo_warn() { printf "\e[33m• \033\e[0m$@\n"}echo_pause() { printf "\e[34mâ¸ï¸Ž \033\e[0m$1\n"}echo_question() { if [ "$2" = "" ]; then printf "\e[33m? \033\e[0m$@\n" else printf "\e[33m? \033\e[0m$@" fi}echo_info() { printf "\e[34mℹ \033\e[0m$1\n"}echo_point() { if [ "$2" = "" ]; then printf "\e[34m→ \033\e[0m$1\n" else printf "\e[34m→ \033\e[0m$1" fi}echo_bullet() { printf "\e[34m• \033\e[0m$1\n"}echo_wait() { if [ "$2" = "" ]; then printf "\e[33mâ²ï¸Ž \033\e[0m$1\n" else printf "\e[33mâ²ï¸Ž \033\e[0m$1" fi}
# Update package listecho_info "Updating package list..."if sudo apt-get update > /dev/null 2>&1; then echo_pass "Package list updated successfully."else echo_fail "Failed to update package list." exit 1fi
# Install required packagesecho_info "Installing required packages (ca-certificates, curl)..."if sudo apt-get install -y ca-certificates curl > /dev/null 2>&1; then echo_pass "Required packages installed successfully."else echo_fail "Failed to install required packages." exit 1fi
# Create directory for APT keyringsecho_info "Creating directory for APT keyrings..."if sudo install -m 0755 -d /etc/apt/keyrings > /dev/null 2>&1; then echo_pass "Directory created successfully."else echo_fail "Failed to create directory." exit 1fi
# Download Docker's GPG keyecho_info "Downloading Docker's GPG key..."if sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc > /dev/null 2>&1; then echo_pass "Docker's GPG key downloaded successfully."else echo_fail "Failed to download Docker's GPG key." exit 1fi
# Add read permissions for everyone to the GPG keyecho_info "Setting read permissions for the GPG key..."if chmod a+r /etc/apt/keyrings/docker.asc > /dev/null 2>&1; then echo_pass "Read permissions set successfully."else echo_fail "Failed to set read permissions." exit 1fi
# Add Docker's APT repositoryecho_info "Adding Docker's APT repository..."if echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null; then echo_pass "Docker's APT repository added successfully."else echo_fail "Failed to add Docker's APT repository." exit 1fi
# Update package list againecho_info "Updating package list again..."if sudo apt-get update > /dev/null 2>&1; then echo_pass "Package list updated successfully."else echo_fail "Failed to update package list." exit 1fi
# Install Docker packagesecho_info "Installing Docker packages (docker-ce, docker-ce-cli, containerd.io, docker-buildx-plugin, docker-compose-plugin)..."if sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin > /dev/null 2>&1; then echo_pass "Docker packages installed successfully."else echo_fail "Failed to install Docker packages." exit 1fi