feat: add amazon linux 2023
This commit is contained in:
parent
a922497f5d
commit
25e3c4fcdc
@ -6,7 +6,7 @@ set -e # Exit immediately if a command exits with a non-zero status
|
|||||||
#set -u # Treat unset variables as an error and exit
|
#set -u # Treat unset variables as an error and exit
|
||||||
set -o pipefail # Cause a pipeline to return the status of the last command that exited with a non-zero status
|
set -o pipefail # Cause a pipeline to return the status of the last command that exited with a non-zero status
|
||||||
|
|
||||||
VERSION="1.2.3"
|
VERSION="1.3.0"
|
||||||
DOCKER_VERSION="24.0"
|
DOCKER_VERSION="24.0"
|
||||||
|
|
||||||
CDN="https://cdn.coollabs.io/coolify"
|
CDN="https://cdn.coollabs.io/coolify"
|
||||||
@ -18,6 +18,11 @@ else
|
|||||||
OS_VERSION=$(grep -w "VERSION_ID" /etc/os-release | cut -d "=" -f 2 | tr -d '"')
|
OS_VERSION=$(grep -w "VERSION_ID" /etc/os-release | cut -d "=" -f 2 | tr -d '"')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Install xargs on Amazon Linux 2023 - lol
|
||||||
|
if [ "$OS_TYPE" = 'amzn' ]; then
|
||||||
|
dnf install -y findutils >/dev/null 2>&1
|
||||||
|
fi
|
||||||
|
|
||||||
LATEST_VERSION=$(curl --silent $CDN/versions.json | grep -i version | sed -n '2p' | xargs | awk '{print $2}' | tr -d ',')
|
LATEST_VERSION=$(curl --silent $CDN/versions.json | grep -i version | sed -n '2p' | xargs | awk '{print $2}' | tr -d ',')
|
||||||
DATE=$(date +"%Y%m%d-%H%M%S")
|
DATE=$(date +"%Y%m%d-%H%M%S")
|
||||||
|
|
||||||
@ -27,7 +32,7 @@ if [ $EUID != 0 ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
case "$OS_TYPE" in
|
case "$OS_TYPE" in
|
||||||
arch | ubuntu | debian | raspbian | centos | fedora | rhel | ol | rocky | sles | opensuse-leap | opensuse-tumbleweed | almalinux) ;;
|
arch | ubuntu | debian | raspbian | centos | fedora | rhel | ol | rocky | sles | opensuse-leap | opensuse-tumbleweed | almalinux | amzn) ;;
|
||||||
*)
|
*)
|
||||||
echo "This script only supports Debian, Redhat, Arch Linux, or SLES based operating systems for now."
|
echo "This script only supports Debian, Redhat, Arch Linux, or SLES based operating systems for now."
|
||||||
exit
|
exit
|
||||||
@ -64,8 +69,12 @@ ubuntu | debian | raspbian)
|
|||||||
apt update -y >/dev/null 2>&1
|
apt update -y >/dev/null 2>&1
|
||||||
apt install -y curl wget git jq >/dev/null 2>&1
|
apt install -y curl wget git jq >/dev/null 2>&1
|
||||||
;;
|
;;
|
||||||
centos | fedora | rhel | ol | rocky | almalinux)
|
centos | fedora | rhel | ol | rocky | almalinux | amzn)
|
||||||
dnf install -y curl wget git jq >/dev/null 2>&1
|
if [ "$OS_TYPE" = "amzn" ]; then
|
||||||
|
dnf install -y wget git jq >/dev/null 2>&1
|
||||||
|
else
|
||||||
|
dnf install -y curl wget git jq >/dev/null 2>&1
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
sles | opensuse-leap | opensuse-tumbleweed)
|
sles | opensuse-leap | opensuse-tumbleweed)
|
||||||
zypper refresh >/dev/null 2>&1
|
zypper refresh >/dev/null 2>&1
|
||||||
@ -133,6 +142,7 @@ if [ -x "$(command -v snap)" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
if ! [ -x "$(command -v docker)" ]; then
|
if ! [ -x "$(command -v docker)" ]; then
|
||||||
|
# Almalinux
|
||||||
if [ "$OS_TYPE" == 'almalinux' ]; then
|
if [ "$OS_TYPE" == 'almalinux' ]; then
|
||||||
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
|
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
|
||||||
dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
dnf install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
|
||||||
@ -146,6 +156,7 @@ if ! [ -x "$(command -v docker)" ]; then
|
|||||||
set +e
|
set +e
|
||||||
if ! [ -x "$(command -v docker)" ]; then
|
if ! [ -x "$(command -v docker)" ]; then
|
||||||
echo "Docker is not installed. Installing Docker."
|
echo "Docker is not installed. Installing Docker."
|
||||||
|
# Arch Linux
|
||||||
if [ "$OS_TYPE" = "arch" ]; then
|
if [ "$OS_TYPE" = "arch" ]; then
|
||||||
pacman -Sy docker docker-compose --noconfirm
|
pacman -Sy docker docker-compose --noconfirm
|
||||||
systemctl enable docker.service
|
systemctl enable docker.service
|
||||||
@ -157,19 +168,38 @@ if ! [ -x "$(command -v docker)" ]; then
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
curl https://releases.rancher.com/install-docker/${DOCKER_VERSION}.sh | sh
|
# Amazon Linux 2023
|
||||||
if [ -x "$(command -v docker)" ]; then
|
if [ "$OS_TYPE" = "amzn" ]; then
|
||||||
echo "Docker installed successfully."
|
dnf install docker -y
|
||||||
else
|
DOCKER_CONFIG=${DOCKER_CONFIG:-/usr/local/lib/docker}
|
||||||
echo "Docker installation failed with Rancher script. Trying with official script."
|
mkdir -p $DOCKER_CONFIG/cli-plugins
|
||||||
curl https://get.docker.com | sh -s -- --version ${DOCKER_VERSION}
|
curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o $DOCKER_CONFIG/cli-plugins/docker-compose
|
||||||
|
chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose
|
||||||
|
systemctl start docker
|
||||||
|
systemctl enable docker
|
||||||
if [ -x "$(command -v docker)" ]; then
|
if [ -x "$(command -v docker)" ]; then
|
||||||
echo "Docker installed successfully."
|
echo "Docker installed successfully."
|
||||||
else
|
else
|
||||||
echo "Docker installation failed with official script."
|
echo "Failed to install Docker with pacman. Try to install it manually."
|
||||||
echo "Maybe your OS is not supported?"
|
echo "Please visit https://wiki.archlinux.org/title/docker for more information."
|
||||||
echo "Please visit https://docs.docker.com/engine/install/ and install Docker manually to continue."
|
exit
|
||||||
exit 1
|
fi
|
||||||
|
else
|
||||||
|
# Automated Docker installation
|
||||||
|
curl https://releases.rancher.com/install-docker/${DOCKER_VERSION}.sh | sh
|
||||||
|
if [ -x "$(command -v docker)" ]; then
|
||||||
|
echo "Docker installed successfully."
|
||||||
|
else
|
||||||
|
echo "Docker installation failed with Rancher script. Trying with official script."
|
||||||
|
curl https://get.docker.com | sh -s -- --version ${DOCKER_VERSION}
|
||||||
|
if [ -x "$(command -v docker)" ]; then
|
||||||
|
echo "Docker installed successfully."
|
||||||
|
else
|
||||||
|
echo "Docker installation failed with official script."
|
||||||
|
echo "Maybe your OS is not supported?"
|
||||||
|
echo "Please visit https://docs.docker.com/engine/install/ and install Docker manually to continue."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
Loading…
x
Reference in New Issue
Block a user