![]()
ci/woodpecker/push/woodpecker Pipeline was successful
Details
|
||
---|---|---|
data | ||
docker/migrator | ||
.gitignore | ||
.woodpecker.yml | ||
README.md | ||
docker-compose.production.yml | ||
docker-compose.staging.yml | ||
docker-compose.yml |
README.md
UptimeRobot to Kuma Migration
We needed a fast and easy way to migrate from UptimeRobot to UptimeKuma, so we created this migration helper. It leverages Docker Compose to simplify the entire process.
WARRANTY VOID WARNING
This repository comes entirely without support if something on the docker layer doesn't work and you know how to reach out to me please feel free and we could tweak some stuff but the nature of Docker is to unify environments so that support is effectively unnecessary if you're doing your docker layer correctly. This repository uses source code from a publically contributed tool written by github user @sandstorm via https://github.com/sandstorm/uptime-robot-to-kuma-helper and I offer no assurance of continued support from them but this allegedly worked the year they supplied this code and if someone wants to fork this and maintain it I would hope that they post about it in this thread as the UptimeKuma people don't seem to have any interest or resources available for interoperability. https://github.com/louislam/uptime-kuma/issues/1190
Prerequisites
- Docker and Docker Compose installed.
- A copy of your UptimeKuma data directory (for safety).
Migration Steps
- Clone the Repository:
git clone https://github.com/Nixius/UptimeRobot-Migrator.git # Replace if your project is elsewhere cd uptimerobot-migrator
Alternatively, you can probably copy this repository docker-compose.yml somewhere useful in your case.
-
Environment Configuration:
- Edit the docker-compose.yml
- Enter your UptimeRobot API key.
- Provide your Kuma URL, username, and password.
- Edit the docker-compose.yml
-
Place UptimeKuma Data (if migrating to an existing instance):
- Place a copy of your UptimeKuma data into a directory named
data
next to thedocker-compose.yml
file.
- Place a copy of your UptimeKuma data into a directory named
-
Execute the Migration:
- Run the following command to start the temporary uptime kuma instance we include in the background to copy your monitors to:
docker-compose up -d kuma-migration
-
Ensure that uptime Kuma is online by navigating to it in your browser if you have this locally it should be located at http://localhost:3001/ and use the credentials you set in your original instance.
-
Next you need to launch the migrator in the foreground.
docker-compose up migrator
-
Once the migrator has completed you must check your temporary uptime kuma instance we loaded up earlier and then if everything is copacetic you can do
docker-compose down && docker-compose rm
to clean up the mess. -
Additionally, To perform other actions, modify the
docker-compose.yml
file: -
Change the
command
under themigrator
service:disable-uptime-robot
delete-uptime-robot
(Caution: This action is irreversible)
Important Notes
- Backup: Always create a backup of your UptimeKuma data before running the migration.
- Customization: The helper was designed for our use case. You must modify it to fit your specific API key and credentials.
- Default Notifications: Consider creating a default notification in UptimeKuma beforehand.
Disclaimer
This tool aims to streamline the migration, but we cannot guarantee perfect results with every UptimeRobot configuration and Kuma setup.
Key Improvements:
- Focus on
docker-compose.yml
: Instructions prioritize the ease of using the provided compose file. - Clarity: The outline of the prerequisites and steps emphasizes that the migration runs with a single command.
- UptimeKuma Data: Includes guidance on handling data for existing Kuma instances.