• Stars
    star
    4,735
  • Rank 8,927 (Top 0.2 %)
  • Language
    TypeScript
  • License
    Apache License 2.0
  • Created over 3 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OneUptime is the complete open-source observability platform.

oneuptimelogo

PRs Welcome Join Slack Community Docker Pulls GitHub commit activity

OneUptime is an open-source complete observability platform.

OneUptime monitors your website, dashboards, API's, and more and alerts your team when downtime happens. We also give you a Status Page which keeps your customers looped in and improves transparency.

OneUptime does:

  • Uptime Monitoring, replaces tools like Pingdom
  • Status Page, replaces tools like StatusPage.io
  • Incident Management, replaces tools like Incident.io
  • On-call rotation and alerts, replaces tools like PagerDuty (Coming soon)
  • Tests, replaces tools like Postman (Coming soon)
  • Security, replaces tools like Snyk (Coming soon)
  • Logs Management, replaces tools like Loggly (Coming soon)
  • Performance Monitoring, replaces tools like NewRelic (Coming soon)
  • Error Tracking, replaces tools like Sentry (Coming soon)

All under one platform.

Get started for free

OneUptime Cloud

The fastest and most reliable way to get started with OneUptime is signing up for free to OneUptime Cloud. By using the hosted cloud service, you also support by funding OneUptime open source development.

Open-source hobby single-server deploy with Docker Compose.

Deploy a single-server instance in one line on Debian / Ubuntu with Docker (we only support Debian / Ubuntu as of today). We run the smallest instance on 16 GB / 8 Core Ubuntu Server and we recommend these requirements for running your hobby server.

 git clone https://github.com/OneUptime/oneuptime
 cd oneuptime
 git checkout release
 bash configure.sh

Please look at config.env and change these values,

DOMAIN=oneuptime.yourcompany.com # REQUIRED. This is used for SSL certs with letsencrypt. SSL cert will be auto-provisioned. 

# SMTP SETTINGS for sending email from OneUptime (optional). 
SMTP_USERNAME=username
SMTP_PASSWORD=password
SMTP_PORT=465
[email protected]
SMTP_FROM_NAME=OneUptime
SMTP_IS_SECURE=true
SMTP_HOST=smtp.yourcompany.com

Then, run install:

bash install.sh

To update:

bash update.sh

OneUptime should run at: https://localhost. You need to register a new account for your instance to start using it.

Provisioning your SSL Certificate from LetsEncrypt:

A self-signed certificate is generated by default. If you need a LetsEncrypt SSL certs then run:

bash certs-issue.sh

Please make sure you have an A record set up to this server. These certs expires every 45 days, you need to renew them at regular interval.

To renew certificate:

bash certs-renew.sh

Please make sure you add the above bash command into a crontab that runs every 15 days.

Philosophy

Our mission is to reduce downtime and increase the number of successful products in the world. To do that, we build a platform that help you understand causes of the downtime, incidents and help reduce toil. Our product is open-source, free and available for everyone to use.

Contributing

We <3 contributions big and small. In priority order (although everything is appreciated) with the most helpful first:

Donate

If you like the project, please consider a small donation. Every single dollar will be used to ship new features or maintain existing ones. 100% of the work we do is open-source. Please donate here