update
This commit is contained in:
parent
a2da384dfd
commit
4f090bd873
@ -49,6 +49,27 @@ check_bash_installed() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# 动态安装软件包
|
||||||
|
install_package() {
|
||||||
|
local package_name=$1
|
||||||
|
if command -v "$package_name" &> /dev/null; then
|
||||||
|
echo "$package_name 已安装, 跳过."
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "安装 $package_name..."
|
||||||
|
package_manager=$(get_package_manager)
|
||||||
|
if [ "$package_manager" == "apt-get" ]; then
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y "$package_name"
|
||||||
|
elif [ "$package_manager" == "yum" ]; then
|
||||||
|
sudo yum install -y "$package_name"
|
||||||
|
else
|
||||||
|
echo "未知的包管理器, 请手动安装 $package_name."
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# 生成密码
|
# 生成密码
|
||||||
gen_password() {
|
gen_password() {
|
||||||
@ -59,4 +80,4 @@ gen_password() {
|
|||||||
rand=$(< /dev/urandom tr -dc "$chars" | head -c "$pass_length")
|
rand=$(< /dev/urandom tr -dc "$chars" | head -c "$pass_length")
|
||||||
|
|
||||||
echo "$rand"
|
echo "$rand"
|
||||||
}
|
}
|
||||||
|
|||||||
37
install.sh
37
install.sh
@ -7,36 +7,29 @@ source "${script_dir}/utils/base.sh"
|
|||||||
check_bash_installed
|
check_bash_installed
|
||||||
|
|
||||||
install(){
|
install(){
|
||||||
if command -v docker >/dev/null 2>&1; then
|
if ! command -v curl >/dev/null 2>&1; then
|
||||||
echo "docker 已安装, 跳过."
|
install_package curl
|
||||||
else
|
fi
|
||||||
|
|
||||||
|
if ! command -v wget >/dev/null 2>&1; then
|
||||||
|
install_package wget
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v jq >/dev/null 2>&1; then
|
||||||
|
echo 安装jq...
|
||||||
|
install_package jq
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v docker >/dev/null 2>&1; then
|
||||||
echo 安装docker...
|
echo 安装docker...
|
||||||
curl -fsSL https://get.docker.com | bash -s docker
|
curl -fsSL https://get.docker.com | bash -s docker
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if command -v docker-compose >/dev/null 2>&1; then
|
if ! command -v docker-compose >/dev/null 2>&1; then
|
||||||
echo "docker-compose 已安装, 跳过."
|
|
||||||
else
|
|
||||||
echo 安装docker-compose...
|
echo 安装docker-compose...
|
||||||
wget -O /usr/local/bin/docker-compose https://github.com/docker/compose/releases/download/v2.29.0/docker-compose-linux-x86_64
|
wget -O /usr/local/bin/docker-compose https://github.com/docker/compose/releases/download/v2.29.0/docker-compose-linux-x86_64
|
||||||
chmod +x /usr/local/bin/docker-compose
|
chmod +x /usr/local/bin/docker-compose
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if command -v jq >/dev/null 2>&1; then
|
|
||||||
echo "jq 已安装, 跳过."
|
|
||||||
else
|
|
||||||
echo 安装jq...
|
|
||||||
package_manager=get_package_manager
|
|
||||||
if [ "$package_manager" == "apt" ]; then
|
|
||||||
sudo apt-get update
|
|
||||||
sudo apt-get install -y jq
|
|
||||||
elif [ "$package_manager" == "yum" ]; then
|
|
||||||
sudo yum install -y jq
|
|
||||||
else
|
|
||||||
echo "未知的包管理器, 请手动安装jq."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# 显示菜单
|
# 显示菜单
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user