Forked from pablodz/install_docker_in_ubuntu_21-10.sh
Last active
February 6, 2023 21:47
-
-
Save virtualex-itv/62776f0f0970dcad5aa4bc6d13054b22 to your computer and use it in GitHub Desktop.
Install Docker in Ubuntu 20.04+, Install Docker-Compose on Ubuntu 20.04+
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Copyright (c) Alex Lopez 2023 | |
# All rights reserved | |
# vim: tabstop=4 shiftwidth=4 | |
# [OPTIONAL] Uninstall old docker versions | |
sudo apt-get remove docker docker-engine docker.io containerd runc | |
# Refresh latest version | |
sudo apt-get update | |
# Install pre-req | |
sudo apt-get install -y \ | |
apt-transport-https \ | |
ca-certificates \ | |
curl \ | |
gnupg \ | |
lsb-release | |
# Add docker official GPG key | |
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --yes -o /usr/share/keyrings/docker-archive-keyring.gpg | |
# x86 and amd_64 HERE WE CHANGE | |
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null | |
# Install docker | |
sudo apt-get update | |
sudo apt-get install -y docker-ce docker-ce-cli containerd.io | |
# Give docker permissions | |
getent group docker > /dev/null | |
if [ $? -eq 1 ]; then | |
sudo groupadd docker | |
fi | |
sudo usermod -aG docker $USER | |
newgrp docker << EONG | |
EONG | |
# Check version | |
docker --version | |
# Check if installed | |
#sudo docker run hello-world | |
# If still fails, reboot OS | |
# Download docker compose stable | |
#sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose #original | |
#LATEST_RELEASE=`wget -qO - https://github.com/docker/compose/releases/latest | grep '<title' | awk '{print $2}'` #this works but could stop if formatting is changed on github | |
#LATEST_RELEASE=`curl --silent "https://api.github.com/repos/docker/compose/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")'` #this works - same as below but without sed | |
LATEST_RELEASE=`curl --silent "https://api.github.com/repos/docker/compose/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/'` | |
sudo curl -L "https://github.com/docker/compose/releases/download/${LATEST_RELEASE}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | |
# Apply executable to binary | |
sudo chmod +x /usr/local/bin/docker-compose | |
# Check version | |
docker-compose --version |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment