Welcome to KumaCloudWatch! This repository contains the code to set up and run Uptime-Kuma on Azure App Service using Terraform for deployment. Uptime-Kuma is a self-hosted monitoring tool that helps you track the uptime of your services.
KumaCloudWatch leverages Azure App Service to host Uptime-Kuma, allowing you to monitor the availability and performance of your applications and services. The setup is defined using HashiCorp Configuration Language (HCL) for easy infrastructure management and deployment.
- Easy Setup: Deploy Uptime-Kuma on Azure App Service with minimal configuration.
- Scalability: Utilize Azure's robust infrastructure to ensure your monitoring tool can handle large-scale environments.
- Persistent Data Storage: Mounted Azure Storage File Share to the web app to ensure data retention even when the Docker container is rebooted.
- Continuous Integration: CI enabled to keep the application up to date with the latest features and improvements.
- Customizable: Define your monitoring parameters and thresholds using HCL.
- Self-Hosted: Maintain control over your monitoring data by hosting Uptime-Kuma yourself.
- One-Command Deployment and Destruction: Shell scripts provided to deploy and destroy the infrastructure in a single command.
Before you begin, ensure you have the following:
- An Azure account.
- Azure CLI installed and configured.
- Terraform installed on your local machine.
Follow these steps to deploy Uptime-Kuma on Azure App Service:
-
Clone the Repository:
git clone https://github.com/yourusername/KumaCloudWatch.git cd KumaCloudWatch
-
Configure Azure CLI:
az login
-
Deploy the Infrastructure:
./deploy.sh
Once the deployment is complete, the script will output the URL of your Uptime-Kuma instance.
Access your Uptime-Kuma instance via the provided URL. You can start adding services to monitor and configure your uptime checks as needed.
If you need to tear down the infrastructure, simply run:
./destroy.sh
The main.tf
file contains the primary configuration for deploying Uptime-Kuma on Azure App Service. You can customize the settings such as resource group name, app service plan, and other parameters according to your requirements.
We welcome contributions to improve KumaCloudWatch! If you have suggestions, bug reports, or feature requests, feel free to open an issue or submit a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.