You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.9 KiB
70 lines
1.9 KiB
println("=====================");
|
|
println("Uptime Kuma Installer");
|
|
println("=====================");
|
|
println("");
|
|
println("---------------------------------------");
|
|
println("This script is designed for Linux and basic usage.");
|
|
println("For advanced usage, please go to https://github.com/louislam/uptime-kuma/wiki/Installation");
|
|
println("---------------------------------------");
|
|
println("");
|
|
println("Local - Install Uptime Kuma in your current machine with git, Node.js 14 and pm2");
|
|
println("Docker - Install Uptime Kuma Docker container");
|
|
println("");
|
|
|
|
if ("$1" != "") {
|
|
type = "$1";
|
|
} else {
|
|
call("read", "-p", "Which installation method do you prefer? [DOCKER/local]: ", "type");
|
|
}
|
|
|
|
if (type == "local") {
|
|
|
|
if ("$1" != "") {
|
|
port = "$3";
|
|
} else {
|
|
call("read", "-p", "Listening Port [3001]: ", "port");
|
|
}
|
|
|
|
if (exists("/etc/redhat-release")) {
|
|
os = call("cat", "/etc/redhat-release");
|
|
distribution = "rhel";
|
|
}
|
|
|
|
bash("arch=$(uname -i)");
|
|
|
|
println("Your OS: " ++ os);
|
|
println("Distribution: " ++ distribution);
|
|
println("Arch: " ++ arch);
|
|
|
|
if (distribution == "rhel") {
|
|
bash("nodePath=$(command -v node)");
|
|
|
|
if (nodePath != "") {
|
|
bash("nodeVersion=$(node -e 'console.log(process.versions.node.split(`.`)[0])')");
|
|
println("Node Version: " ++ nodeVersion);
|
|
|
|
if (nodeVersion < "12") {
|
|
println("Error: Required Node.js 14");
|
|
call("exit", "1");
|
|
|
|
} else {
|
|
if (nodeVersion == "12") {
|
|
println("Warning: NodeJS " ++ nodeVersion ++ " is not tested.");
|
|
}
|
|
println("OK");
|
|
}
|
|
|
|
} else {
|
|
|
|
}
|
|
|
|
|
|
|
|
call("yum", "install", "git", "-y");
|
|
}
|
|
|
|
} else {
|
|
call("read", "-p", "Expose Port [3001]: ", "port");
|
|
call("read", "-p", "Volume Name [uptime-kuma]: ", "volume");
|
|
}
|