mirror of
				https://github.com/louislam/uptime-kuma.git
				synced 2025-10-31 19:39:20 +08:00 
			
		
		
		
	Merge branch 'master' into master
This commit is contained in:
		
							
								
								
									
										78
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										78
									
								
								README.md
									
									
									
									
									
								
							| @@ -19,79 +19,51 @@ It is a self-hosted monitoring tool like "Uptime Robot". | ||||
|  | ||||
| ## 🔧 How to Install | ||||
|  | ||||
| ### 🐳 Docker | ||||
| ### 🚀 Installer via cli | ||||
|  | ||||
| Interactive cli installer, supports Docker or without Docker.  | ||||
|  | ||||
| ```bash | ||||
| # Create a volume | ||||
| docker volume create uptime-kuma | ||||
|  | ||||
| # Start the container | ||||
| docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1 | ||||
| curl -o kuma_install.sh https://raw.githubusercontent.com/louislam/uptime-kuma/master/install.sh && sudo bash kuma_install.sh | ||||
| ``` | ||||
|  | ||||
| Browse to http://localhost:3001 after started. | ||||
|  | ||||
| ### ☸️ Kubernetes | ||||
|  | ||||
| See more [here](kubernetes/README.md)  | ||||
|  | ||||
|  | ||||
| If you want to change **port** and **volume**, or need to browse via a reserve proxy, please read <a href="https://github.com/louislam/uptime-kuma/wiki/Installation#docker">wiki</a>. | ||||
|  | ||||
| ### 💪🏻 Without Docker (Recommended for x86/x64 only) | ||||
|  | ||||
| Required Tools: Node.js >= 14, git and pm2. | ||||
| ======= | ||||
| ### 🐳 Docker | ||||
|  | ||||
| ```bash | ||||
| git clone https://github.com/louislam/uptime-kuma.git | ||||
| cd uptime-kuma | ||||
| npm run setup | ||||
|  | ||||
| # Option 1. Try it | ||||
| npm run start-server | ||||
|  | ||||
| # (Recommended) | ||||
| # Option 2. Run in background using PM2 | ||||
| # Install PM2 if you don't have: npm install pm2 -g | ||||
| pm2 start npm --name uptime-kuma -- run start-server | ||||
|  | ||||
| ``` | ||||
|  | ||||
| Browse to http://localhost:3001 after started. | ||||
|  | ||||
| If you want to change **port** and **hostname**, or need to browse via a reserve proxy, please read <a href="https://github.com/louislam/uptime-kuma/wiki/Installation#without-docker-x86x64-only">wiki</a>. | ||||
|  | ||||
| ## 🆙 How to Update | ||||
|  | ||||
| ### 🆙🐳 Docker | ||||
|  | ||||
| Re-pull the latest docker image and create another container with the same volume. | ||||
|  | ||||
| For someone who used my "How-to-use" commands to install Uptime Kuma, you can update by this: | ||||
|  | ||||
| ```bash | ||||
| docker pull louislam/uptime-kuma:1 | ||||
| docker stop uptime-kuma | ||||
| docker rm uptime-kuma | ||||
| docker volume create uptime-kuma | ||||
| docker run -d --restart=always -p 3001:3001 -v uptime-kuma:/app/data --name uptime-kuma louislam/uptime-kuma:1 | ||||
| ``` | ||||
|  | ||||
| PS: For every new release, it takes some time to build the docker image, please be patient if it is not available yet. | ||||
| ### ☸️ Kubernetes | ||||
|  | ||||
| ### 🆙 💪🏻 Without Docker | ||||
| See more [here](kubernetes/README.md)  | ||||
|  | ||||
| ```bash | ||||
| cd <uptime-kuma-directory> | ||||
| git fetch --all | ||||
| git checkout 1.2.0 --force | ||||
| npm install | ||||
| npm run build | ||||
| pm2 restart uptime-kuma | ||||
| ``` | ||||
| Browse to http://localhost:3001 after started. | ||||
|  | ||||
| ### Advanced Installation | ||||
|  | ||||
| If you need more options or need to browse via a reserve proxy, please read: | ||||
|  | ||||
| https://github.com/louislam/uptime-kuma/wiki/%F0%9F%94%A7-How-to-Install | ||||
|  | ||||
|  | ||||
| ## 🆙 How to Update | ||||
|  | ||||
| Please read: | ||||
|  | ||||
| https://github.com/louislam/uptime-kuma/wiki/%F0%9F%86%99-How-to-Update | ||||
|  | ||||
| ## 🆕 What's Next? | ||||
|  | ||||
| I will mark requests/issues to the next milestone. | ||||
|  | ||||
| https://github.com/louislam/uptime-kuma/milestones | ||||
|  | ||||
| ## 🖼 More Screenshots | ||||
| @@ -126,5 +98,3 @@ If you want to report a bug or request a new feature. Free feel to open a new is | ||||
| If you want to modify Uptime Kuma, this guideline maybe useful for you: https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md | ||||
|  | ||||
| English proofreading is needed too, because my grammar is not that great sadly. Feel free to correct my grammar in this Readme, source code or wiki. | ||||
|  | ||||
| 🐻 | ||||
|   | ||||
							
								
								
									
										14
									
								
								SECURITY.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								SECURITY.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| # Security Policy | ||||
|  | ||||
| ## Supported Versions | ||||
|  | ||||
| Use this section to tell people about which versions of your project are | ||||
| currently being supported with security updates. | ||||
|  | ||||
| | Version | Supported          | | ||||
| | ------- | ------------------ | | ||||
| | 1.x.x  | :white_check_mark: | | ||||
|  | ||||
| ## Reporting a Vulnerability | ||||
|  | ||||
| https://github.com/louislam/uptime-kuma/issues | ||||
| @@ -1,13 +1,15 @@ | ||||
| // install.sh is generated by ./extra/install.batsh, do not modify it directly. | ||||
| // "npm run compile-install-script" to compile install.sh | ||||
| // The command is working on Windows PowerShell and Docker for Windows only. | ||||
|  | ||||
|  | ||||
| // curl -o kuma_install.sh https://raw.githubusercontent.com/louislam/uptime-kuma/master/install.sh && sudo bash kuma_install.sh | ||||
| println("====================="); | ||||
| println("Uptime Kuma Installer"); | ||||
| println("====================="); | ||||
| println(""); | ||||
| println("Supported OS: CentOS 7/8, Ubuntu >= 16.04 and Debian"); | ||||
| println("---------------------------------------"); | ||||
| println("This script is designed for Linux and basic usage."); | ||||
| println("Tested with CentOS 7/8"); | ||||
| println("For advanced usage, please go to https://github.com/louislam/uptime-kuma/wiki/Installation"); | ||||
| println("---------------------------------------"); | ||||
| println(""); | ||||
| @@ -21,8 +23,64 @@ if ("$1" != "") { | ||||
|     call("read", "-p", "Which installation method do you prefer? [DOCKER/local]: ", "type"); | ||||
| } | ||||
|  | ||||
| defaultPort = "3001"; | ||||
|  | ||||
| function checkNode() { | ||||
|     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"); | ||||
|     } | ||||
|  | ||||
|     if (nodeVersion == "12") { | ||||
|         println("Warning: NodeJS " ++ nodeVersion ++ " is not tested."); | ||||
|     } | ||||
| } | ||||
|  | ||||
| function deb() { | ||||
|     bash("nodeCheck=$(node -v)"); | ||||
|     bash("apt --yes update"); | ||||
|  | ||||
|     if (nodeCheck != "") { | ||||
|         checkNode(); | ||||
|     } else { | ||||
|  | ||||
|         // Old nodejs binary name is "nodejs" | ||||
|         bash("check=$(nodejs --version)"); | ||||
|         if (check != "") { | ||||
|             println("Error: 'node' command is not found, but 'nodejs' command is found. Your NodeJS should be too old."); | ||||
|             bash("exit 1"); | ||||
|         } | ||||
|  | ||||
|         bash("curlCheck=$(curl --version)"); | ||||
|         if (curlCheck == "") { | ||||
|             println("Installing Curl"); | ||||
|             bash("apt --yes install curl"); | ||||
|         } | ||||
|  | ||||
|         println("Installing Node.js 14"); | ||||
|         bash("curl -sL https://deb.nodesource.com/setup_14.x | bash - > log.txt"); | ||||
|         bash("apt --yes install nodejs"); | ||||
|         bash("node -v"); | ||||
|  | ||||
|         bash("nodeCheckAgain=$(node -v)"); | ||||
|  | ||||
|         if (nodeCheckAgain == "") { | ||||
|             println("Error during Node.js installation"); | ||||
|             bash("exit 1"); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     bash("check=$(git --version)"); | ||||
|     if (check == "") { | ||||
|         println("Installing Git"); | ||||
|         bash("apt --yes install git"); | ||||
|     } | ||||
| } | ||||
|  | ||||
| if (type == "local") { | ||||
|     defaultPort = "3001"; | ||||
|     defaultInstallPath = "/opt/uptime-kuma"; | ||||
|  | ||||
|     if (exists("/etc/redhat-release")) { | ||||
| @@ -34,7 +92,9 @@ if (type == "local") { | ||||
|         if (os == "Ubuntu") { | ||||
|             distribution = "ubuntu"; | ||||
|         } | ||||
|  | ||||
|         if (os == "Debian") { | ||||
|             distribution = "debian"; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     bash("arch=$(uname -i)"); | ||||
| @@ -46,7 +106,7 @@ if (type == "local") { | ||||
|     if ("$3" != "") { | ||||
|         port = "$3"; | ||||
|     } else { | ||||
|         call("read", "-p", "Listening Port [$port]: ", "port"); | ||||
|         call("read", "-p", "Listening Port [$defaultPort]: ", "port"); | ||||
|  | ||||
|         if (port == "") { | ||||
|             port = defaultPort; | ||||
| @@ -56,28 +116,19 @@ if (type == "local") { | ||||
|     if ("$2" != "") { | ||||
|         installPath = "$2"; | ||||
|     } else { | ||||
|         call("read", "-p", "Installation Path [$installPath]: ", "installPath"); | ||||
|         call("read", "-p", "Installation Path [$defaultInstallPath]: ", "installPath"); | ||||
|  | ||||
|         if (installPath == "") { | ||||
|             installPath = defaultInstallPath; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     // CentOS | ||||
|     if (distribution == "rhel") { | ||||
|         bash("nodeCheck=$(node -v)"); | ||||
|  | ||||
|         if (nodeCheck != "") { | ||||
|             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"); | ||||
|             } | ||||
|  | ||||
|             if (nodeVersion == "12") { | ||||
|                 println("Warning: NodeJS " ++ nodeVersion ++ " is not tested."); | ||||
|             } | ||||
|             checkNode(); | ||||
|         } else { | ||||
|  | ||||
|             bash("curlCheck=$(curl --version)"); | ||||
| @@ -105,28 +156,90 @@ if (type == "local") { | ||||
|             bash("yum -y -q install git"); | ||||
|         } | ||||
|  | ||||
|         bash("check=$(pm2 --version)"); | ||||
|     // Ubuntu | ||||
|     } else if (distribution == "ubuntu") { | ||||
|         deb(); | ||||
|  | ||||
|     // Debian | ||||
|     } else if (distribution == "debian") { | ||||
|         deb(); | ||||
|  | ||||
|     } else { | ||||
|         // Unknown distribution | ||||
|         error = 0; | ||||
|  | ||||
|         bash("check=$(git --version)"); | ||||
|         if (check == "") { | ||||
|             println("Installing PM2"); | ||||
|             bash("npm install pm2 -g"); | ||||
|             bash("pm2 startup"); | ||||
|             error = 1; | ||||
|             println("Error: git is missing"); | ||||
|         } | ||||
|  | ||||
|         bash("mkdir -p $installPath"); | ||||
|         bash("cd $installPath"); | ||||
|         bash("git clone https://github.com/louislam/uptime-kuma.git ."); | ||||
|         bash("npm run setup"); | ||||
|         bash("check=$(node -v)"); | ||||
|         if (check == "") { | ||||
|             error = 1; | ||||
|             println("Error: node is missing"); | ||||
|         } | ||||
|  | ||||
|         bash("pm2 start npm --name uptime-kuma -- run start-server -- --port=$port"); | ||||
|         bash("pm2 list"); | ||||
|     } | ||||
|  | ||||
|    if (distribution == "ubuntu") { | ||||
|         println("TODO"); | ||||
|         // TODO | ||||
|         if (error > 0) { | ||||
|             println("Please install above missing software"); | ||||
|             bash("exit 1"); | ||||
|         } | ||||
|    } | ||||
|  | ||||
|    bash("check=$(pm2 --version)"); | ||||
|    if (check == "") { | ||||
|        println("Installing PM2"); | ||||
|        bash("npm install pm2 -g"); | ||||
|        bash("pm2 startup"); | ||||
|    } | ||||
|  | ||||
|    bash("mkdir -p $installPath"); | ||||
|    bash("cd $installPath"); | ||||
|    bash("git clone https://github.com/louislam/uptime-kuma.git ."); | ||||
|    bash("npm run setup"); | ||||
|  | ||||
|    bash("pm2 start npm --name uptime-kuma -- run start-server -- --port=$port"); | ||||
|  | ||||
| } else { | ||||
|     call("read", "-p", "Expose Port [3001]: ", "port"); | ||||
|     call("read", "-p", "Volume Name [uptime-kuma]: ", "volume"); | ||||
|     defaultVolume = "uptime-kuma"; | ||||
|  | ||||
|     bash("check=$(docker -v)"); | ||||
|     if (check == "") { | ||||
|         println("Error: docker is not found!"); | ||||
|         bash("exit 1"); | ||||
|     } | ||||
|  | ||||
|     bash("check=$(docker info)"); | ||||
|  | ||||
|     bash("if [[ \"$check\" == *\"Is the docker daemon running\"* ]]; then | ||||
|       echo \"Error: docker is not running\" | ||||
|       exit 1 | ||||
|     fi"); | ||||
|  | ||||
|     if ("$3" != "") { | ||||
|         port = "$3"; | ||||
|     } else { | ||||
|         call("read", "-p", "Expose Port [$defaultPort]: ", "port"); | ||||
|  | ||||
|         if (port == "") { | ||||
|             port = defaultPort; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     if ("$2" != "") { | ||||
|         volume = "$2"; | ||||
|     } else { | ||||
|         call("read", "-p", "Volume Name [$defaultVolume]: ", "volume"); | ||||
|  | ||||
|         if (volume == "") { | ||||
|             volume = defaultVolume; | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     println("Port: $port"); | ||||
|     println("Volume: $volume"); | ||||
|     bash("docker volume create $volume"); | ||||
|     bash("docker run -d --restart=always -p $port:3001 -v $volume:/app/data --name uptime-kuma louislam/uptime-kuma:1"); | ||||
| } | ||||
|  | ||||
| println("http://localhost:$port"); | ||||
|   | ||||
							
								
								
									
										155
									
								
								install.sh
									
									
									
									
									
								
							
							
						
						
									
										155
									
								
								install.sh
									
									
									
									
									
								
							| @@ -1,13 +1,13 @@ | ||||
| # install.sh is generated by ./extra/install.batsh, do not modify it directly. | ||||
| # "npm run compile-install-script" to compile install.sh | ||||
| # The command is working on Windows PowerShell and Docker for Windows only. | ||||
| # curl -o kuma_install.sh https://raw.githubusercontent.com/louislam/uptime-kuma/master/install.sh && sudo bash kuma_install.sh | ||||
| "echo" "-e" "=====================" | ||||
| "echo" "-e" "Uptime Kuma Installer" | ||||
| "echo" "-e" "=====================" | ||||
| "echo" "-e" "" | ||||
| "echo" "-e" "Supported OS: CentOS 7/8, Ubuntu >= 16.04 and Debian" | ||||
| "echo" "-e" "---------------------------------------" | ||||
| "echo" "-e" "This script is designed for Linux and basic usage." | ||||
| "echo" "-e" "Tested with CentOS 7/8" | ||||
| "echo" "-e" "For advanced usage, please go to https://github.com/louislam/uptime-kuma/wiki/Installation" | ||||
| "echo" "-e" "---------------------------------------" | ||||
| "echo" "-e" "" | ||||
| @@ -19,8 +19,54 @@ if [ "$1" != "" ]; then | ||||
| else | ||||
|   "read" "-p" "Which installation method do you prefer? [DOCKER/local]: " "type" | ||||
| fi | ||||
| defaultPort="3001" | ||||
| function checkNode { | ||||
|   local _0 | ||||
|   nodeVersion=$(node -e 'console.log(process.versions.node.split(`.`)[0])') | ||||
|   "echo" "-e" "Node Version: ""$nodeVersion" | ||||
|   _0="12" | ||||
|   if [ $(($nodeVersion < $_0)) == 1 ]; then | ||||
|     "echo" "-e" "Error: Required Node.js 14" | ||||
|     "exit" "1"   | ||||
| fi | ||||
|   if [ "$nodeVersion" == "12" ]; then | ||||
|     "echo" "-e" "Warning: NodeJS ""$nodeVersion"" is not tested."   | ||||
| fi | ||||
| } | ||||
| function deb { | ||||
|   nodeCheck=$(node -v) | ||||
|   apt --yes update | ||||
|   if [ "$nodeCheck" != "" ]; then | ||||
|     "checkNode"  | ||||
|   else | ||||
|     # Old nodejs binary name is "nodejs" | ||||
|     check=$(nodejs --version) | ||||
|     if [ "$check" != "" ]; then | ||||
|       "echo" "-e" "Error: 'node' command is not found, but 'nodejs' command is found. Your NodeJS should be too old." | ||||
|       exit 1     | ||||
| fi | ||||
|     curlCheck=$(curl --version) | ||||
|     if [ "$curlCheck" == "" ]; then | ||||
|       "echo" "-e" "Installing Curl" | ||||
|       apt --yes install curl     | ||||
| fi | ||||
|     "echo" "-e" "Installing Node.js 14" | ||||
|     curl -sL https://deb.nodesource.com/setup_14.x | bash - > log.txt | ||||
|     apt --yes install nodejs | ||||
|     node -v | ||||
|     nodeCheckAgain=$(node -v) | ||||
|     if [ "$nodeCheckAgain" == "" ]; then | ||||
|       "echo" "-e" "Error during Node.js installation" | ||||
|       exit 1     | ||||
| fi | ||||
|   fi | ||||
|   check=$(git --version) | ||||
|   if [ "$check" == "" ]; then | ||||
|     "echo" "-e" "Installing Git" | ||||
|     apt --yes install git   | ||||
| fi | ||||
| } | ||||
| if [ "$type" == "local" ]; then | ||||
|   defaultPort="3001" | ||||
|   defaultInstallPath="/opt/uptime-kuma" | ||||
|   if [ -e "/etc/redhat-release" ]; then | ||||
|     os=$("cat" "/etc/redhat-release") | ||||
| @@ -30,6 +76,9 @@ if [ "$type" == "local" ]; then | ||||
|       os=$(head -n1 /etc/issue | cut -f 1 -d ' ') | ||||
|       if [ "$os" == "Ubuntu" ]; then | ||||
|         distribution="ubuntu"       | ||||
| fi | ||||
|       if [ "$os" == "Debian" ]; then | ||||
|         distribution="debian"       | ||||
| fi     | ||||
| fi | ||||
|   fi | ||||
| @@ -40,7 +89,7 @@ fi | ||||
|   if [ "$3" != "" ]; then | ||||
|     port="$3" | ||||
|   else | ||||
|     "read" "-p" "Listening Port [$port]: " "port" | ||||
|     "read" "-p" "Listening Port [$defaultPort]: " "port" | ||||
|     if [ "$port" == "" ]; then | ||||
|       port="$defaultPort"     | ||||
| fi | ||||
| @@ -48,24 +97,16 @@ fi | ||||
|   if [ "$2" != "" ]; then | ||||
|     installPath="$2" | ||||
|   else | ||||
|     "read" "-p" "Installation Path [$installPath]: " "installPath" | ||||
|     "read" "-p" "Installation Path [$defaultInstallPath]: " "installPath" | ||||
|     if [ "$installPath" == "" ]; then | ||||
|       installPath="$defaultInstallPath"     | ||||
| fi | ||||
|   fi | ||||
|   # CentOS | ||||
|   if [ "$distribution" == "rhel" ]; then | ||||
|     nodeCheck=$(node -v) | ||||
|     if [ "$nodeCheck" != "" ]; then | ||||
|       nodeVersion=$(node -e 'console.log(process.versions.node.split(`.`)[0])') | ||||
|       "echo" "-e" "Node Version: ""$nodeVersion" | ||||
|       _0="12" | ||||
|       if [ $(($nodeVersion < $_0)) == 1 ]; then | ||||
|         "echo" "-e" "Error: Required Node.js 14" | ||||
|         "exit" "1"       | ||||
| fi | ||||
|       if [ "$nodeVersion" == "12" ]; then | ||||
|         "echo" "-e" "Warning: NodeJS ""$nodeVersion"" is not tested."       | ||||
| fi | ||||
|       "checkNode"  | ||||
|     else | ||||
|       curlCheck=$(curl --version) | ||||
|       if [ "$curlCheck" == "" ]; then | ||||
| @@ -87,24 +128,76 @@ fi | ||||
|       "echo" "-e" "Installing Git" | ||||
|       yum -y -q install git     | ||||
| fi | ||||
|     check=$(pm2 --version) | ||||
|     if [ "$check" == "" ]; then | ||||
|       "echo" "-e" "Installing PM2" | ||||
|       npm install pm2 -g | ||||
|       pm2 startup     | ||||
|     # Ubuntu | ||||
|   else | ||||
|     if [ "$distribution" == "ubuntu" ]; then | ||||
|       "deb"  | ||||
|       # Debian | ||||
|     else | ||||
|       if [ "$distribution" == "debian" ]; then | ||||
|         "deb"  | ||||
|       else | ||||
|         # Unknown distribution | ||||
|         error=$((0)) | ||||
|         check=$(git --version) | ||||
|         if [ "$check" == "" ]; then | ||||
|           error=$((1)) | ||||
|           "echo" "-e" "Error: git is missing"         | ||||
| fi | ||||
|     mkdir -p $installPath | ||||
|     cd $installPath | ||||
|     git clone https://github.com/louislam/uptime-kuma.git . | ||||
|     npm run setup | ||||
|     pm2 start npm --name uptime-kuma -- run start-server -- --port=$port | ||||
|     pm2 list   | ||||
|         check=$(node -v) | ||||
|         if [ "$check" == "" ]; then | ||||
|           error=$((1)) | ||||
|           "echo" "-e" "Error: node is missing"         | ||||
| fi | ||||
|   if [ "$distribution" == "ubuntu" ]; then | ||||
|     "echo" "-e" "TODO" | ||||
|     # TODO   | ||||
|         if [ $(($error > 0)) == 1 ]; then | ||||
|           "echo" "-e" "Please install above missing software" | ||||
|           exit 1         | ||||
| fi | ||||
|       fi | ||||
|     fi | ||||
|   fi | ||||
|   check=$(pm2 --version) | ||||
|   if [ "$check" == "" ]; then | ||||
|     "echo" "-e" "Installing PM2" | ||||
|     npm install pm2 -g | ||||
|     pm2 startup   | ||||
| fi | ||||
|   mkdir -p $installPath | ||||
|   cd $installPath | ||||
|   git clone https://github.com/louislam/uptime-kuma.git . | ||||
|   npm run setup | ||||
|   pm2 start npm --name uptime-kuma -- run start-server -- --port=$port | ||||
| else | ||||
|   "read" "-p" "Expose Port [3001]: " "port" | ||||
|   "read" "-p" "Volume Name [uptime-kuma]: " "volume" | ||||
|   defaultVolume="uptime-kuma" | ||||
|   check=$(docker -v) | ||||
|   if [ "$check" == "" ]; then | ||||
|     "echo" "-e" "Error: docker is not found!" | ||||
|     exit 1   | ||||
| fi | ||||
|   check=$(docker info) | ||||
|   if [[ "$check" == *"Is the docker daemon running"* ]]; then | ||||
|       echo "Error: docker is not running" | ||||
|       exit 1 | ||||
|     fi | ||||
|   if [ "$3" != "" ]; then | ||||
|     port="$3" | ||||
|   else | ||||
|     "read" "-p" "Expose Port [$defaultPort]: " "port" | ||||
|     if [ "$port" == "" ]; then | ||||
|       port="$defaultPort"     | ||||
| fi | ||||
|   fi | ||||
|   if [ "$2" != "" ]; then | ||||
|     volume="$2" | ||||
|   else | ||||
|     "read" "-p" "Volume Name [$defaultVolume]: " "volume" | ||||
|     if [ "$volume" == "" ]; then | ||||
|       volume="$defaultVolume"     | ||||
| fi | ||||
|   fi | ||||
|   "echo" "-e" "Port: $port" | ||||
|   "echo" "-e" "Volume: $volume" | ||||
|   docker volume create $volume | ||||
|   docker run -d --restart=always -p $port:3001 -v $volume:/app/data --name uptime-kuma louislam/uptime-kuma:1 | ||||
| fi | ||||
| "echo" "-e" "http://localhost:$port" | ||||
|   | ||||
							
								
								
									
										22940
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										22940
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -25,7 +25,11 @@ | ||||
|         "mark-as-nightly": "node extra/mark-as-nightly.js", | ||||
|         "reset-password": "node extra/reset-password.js", | ||||
|         "compile-install-script": "@powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./extra/compile-install-script.ps1", | ||||
|         "test-install-script": "docker build --no-cache -f test/test_install_script/centos7.dockerfile ." | ||||
|         "test-install-script-centos7": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/centos7.dockerfile .", | ||||
|         "test-install-script-alpine3": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/alpine3.dockerfile .", | ||||
|         "test-install-script-ubuntu": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/ubuntu.dockerfile .", | ||||
|         "test-install-script-ubuntu1604": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/ubuntu1604.dockerfile .", | ||||
|         "test-install-script-debian": "npm run compile-install-script && docker build --progress plain -f test/test_install_script/debian.dockerfile ." | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@fortawesome/fontawesome-svg-core": "^1.2.36", | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| <template> | ||||
|     <LineChart :chart-data="chartData" :height="100" :options="chartOptions" /> | ||||
|     <LineChart :chart-data="chartData" :options="chartOptions" /> | ||||
| </template> | ||||
|  | ||||
| <script> | ||||
| @@ -31,6 +31,19 @@ export default { | ||||
|         chartOptions() { | ||||
|             return { | ||||
|                 responsive: true, | ||||
|                 maintainAspectRatio: false, | ||||
|                 onResize: (chart) => { | ||||
|                     chart.canvas.parentNode.style.position = "relative"; | ||||
|                     if (screen.width < 576) { | ||||
|                         chart.canvas.parentNode.style.height = "275px"; | ||||
|                     } else if (screen.width < 768) { | ||||
|                         chart.canvas.parentNode.style.height = "320px"; | ||||
|                     } else if (screen.width < 992) { | ||||
|                         chart.canvas.parentNode.style.height = "300px"; | ||||
|                     } else { | ||||
|                         chart.canvas.parentNode.style.height = "250px"; | ||||
|                     } | ||||
|                 }, | ||||
|                 layout: { | ||||
|                     padding: { | ||||
|                         left: 10, | ||||
|   | ||||
| @@ -74,7 +74,7 @@ | ||||
|         </div> | ||||
|     </div> | ||||
|  | ||||
|     <div v-if="showPingChartBox" class="shadow-box big-padding text-center"> | ||||
|     <div v-if="showPingChartBox" class="shadow-box big-padding text-center ping-chart-wrapper"> | ||||
|         <div class="row"> | ||||
|             <div class="col"> | ||||
|                 <PingChart :monitor-id="monitor.id" /> | ||||
| @@ -322,13 +322,13 @@ export default { | ||||
| <style lang="scss" scoped> | ||||
| @import "../assets/vars.scss"; | ||||
|  | ||||
| @media (max-width: 767px) {  | ||||
| @media (max-width: 767px) { | ||||
|     .badge { | ||||
|         margin-top: 14px; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @media (max-width: 550px) {  | ||||
| @media (max-width: 550px) { | ||||
|     .functions { | ||||
|         text-align: center; | ||||
|     } | ||||
| @@ -337,9 +337,13 @@ export default { | ||||
|         margin-left: 10px !important; | ||||
|         margin-right: 10px !important; | ||||
|     } | ||||
|  | ||||
|     .ping-chart-wrapper { | ||||
|         padding: 10px !important; | ||||
|     } | ||||
| } | ||||
|  | ||||
| @media (max-width: 400px) {  | ||||
| @media (max-width: 400px) { | ||||
|     .btn { | ||||
|         display: inline-flex; | ||||
|         flex-direction: column; | ||||
|   | ||||
							
								
								
									
										4
									
								
								test/test_install_script/alpine3.dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								test/test_install_script/alpine3.dockerfile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| FROM alpine:3 | ||||
| RUN apk add --update nodejs npm git | ||||
| COPY ./install.sh . | ||||
| RUN /bin/sh install.sh local /opt/uptime-kuma 3000 0.0.0.0 | ||||
							
								
								
									
										10
									
								
								test/test_install_script/debian.dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								test/test_install_script/debian.dockerfile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| FROM debian | ||||
|  | ||||
| # Test invalid node version, these commands install nodejs 10 | ||||
| # RUN apt-get update | ||||
| # RUN apt --yes install nodejs | ||||
| # RUN ln -s /usr/bin/nodejs /usr/bin/node | ||||
| # RUN node -v | ||||
|  | ||||
| COPY ./install.sh . | ||||
| RUN bash install.sh local /opt/uptime-kuma 3000 0.0.0.0 | ||||
							
								
								
									
										10
									
								
								test/test_install_script/ubuntu.dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								test/test_install_script/ubuntu.dockerfile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,10 @@ | ||||
| FROM ubuntu | ||||
|  | ||||
| # Test invalid node version, these commands install nodejs 10 | ||||
| # RUN apt-get update | ||||
| # RUN apt --yes install nodejs | ||||
| # RUN ln -s /usr/bin/nodejs /usr/bin/node | ||||
| # RUN node -v | ||||
|  | ||||
| COPY ./install.sh . | ||||
| RUN bash install.sh local /opt/uptime-kuma 3000 0.0.0.0 | ||||
| @@ -1,4 +1,10 @@ | ||||
| FROM ubuntu:16.04 | ||||
|  | ||||
| # Test invalid node version, these commands install nodejs 10 | ||||
| RUN apt-get update | ||||
| RUN apt --yes install nodejs | ||||
| # RUN ln -s /usr/bin/nodejs /usr/bin/node | ||||
| # RUN node -v | ||||
|  | ||||
| COPY ./install.sh . | ||||
| RUN bash install.sh local /opt/uptime-kuma 3000 0.0.0.0 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user