wip3
This commit is contained in:
@@ -1,39 +1,78 @@
|
||||
#!/usr/bin/env bash
|
||||
##makedesc: Install docker (latest) + ppa
|
||||
source "$( dirname $(readlink -e -- "${BASH_SOURCE}"))/../helpers.sh" || exit 255
|
||||
##makedesc: Docker + ppa
|
||||
|
||||
# https://docs.docker.com/engine/install/ubuntu/
|
||||
# https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user
|
||||
|
||||
title
|
||||
set -eo pipefail
|
||||
|
||||
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do
|
||||
apt_remove $pkg
|
||||
done
|
||||
doRemove() {
|
||||
sudo apt purge -y docker* podman-docker containerd runc
|
||||
}
|
||||
|
||||
require ca-certificates lsb-release
|
||||
source /etc/os-release
|
||||
install_() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Installing Docker"
|
||||
echo "==============================================="
|
||||
echo
|
||||
doRemove
|
||||
sudo apt install -y ca-certificates lsb-release
|
||||
source /etc/os-release
|
||||
codename="$VERSION_CODENAME"
|
||||
key="/etc/apt/keyrings/docker.asc"
|
||||
arch=$(dpkg --print-architecture)
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
curl -fsSL "https://download.docker.com/linux/ubuntu/gpg" -o "$key"
|
||||
sudo chmod a+r $key
|
||||
echo "deb [arch=$arch signed-by=$key] https://download.docker.com/linux/ubuntu $codename stable" \
|
||||
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
sudo apt update
|
||||
sudo apt install -y \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin \
|
||||
docker-compose-plugin
|
||||
sudo usermod -aG docker "$(whoami)"
|
||||
newgrp docker
|
||||
echo
|
||||
echo "Finish! $(docker --version)"
|
||||
echo "Probably, you need to relogin to apply 'docker' group permanently."
|
||||
echo
|
||||
}
|
||||
|
||||
key="/etc/apt/keyrings/docker.asc"
|
||||
upgrade() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Upgrading Docker"
|
||||
echo "==============================================="
|
||||
echo
|
||||
sudo apt upgrade -y \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin \
|
||||
docker-compose-plugin
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
sudo install -m 0755 -d /etc/apt/keyrings
|
||||
sudo cdownload https://download.docker.com/linux/ubuntu/gpg $key
|
||||
sudo chmod a+r $key
|
||||
remove() {
|
||||
echo
|
||||
echo "==============================================="
|
||||
echo "Removing Docker"
|
||||
echo "==============================================="
|
||||
echo
|
||||
doRemove
|
||||
echo
|
||||
echo "Finish!"
|
||||
echo
|
||||
}
|
||||
|
||||
echo "deb [arch=$(dpkg_arch) signed-by=$key] https://download.docker.com/linux/ubuntu $VERSION_CODENAME stable" \
|
||||
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
|
||||
apt_update
|
||||
apt_install \
|
||||
docker-ce \
|
||||
docker-ce-cli \
|
||||
containerd.io \
|
||||
docker-buildx-plugin \
|
||||
docker-compose-plugin
|
||||
|
||||
sudo usermod -aG docker $(whoami)
|
||||
newgrp docker
|
||||
|
||||
success "Docker installed!"
|
||||
docker --version
|
||||
info "Probably, you need to relogin to apply 'docker' group permanently."
|
||||
case "$1" in
|
||||
u|upgrade|update) upgrade ;;
|
||||
r|remove|d|delete|p|purge) remove ;;
|
||||
*) install ;;
|
||||
esac
|
||||
|
||||
Reference in New Issue
Block a user