2015-04-03 17:10:20 +01:00
# Cachet
2015-01-01 17:54:18 +00:00
2015-02-19 13:44:22 +00:00
[![StyleCI ](https://styleci.io/repos/26730195/shield )](https://styleci.io/repos/26730195/)
2015-01-01 17:54:18 +00:00
[![Build Status ](https://img.shields.io/travis/cachethq/Cachet.svg?style=flat-square )](https://travis-ci.org/cachethq/Cachet)
[![Quality Score ](https://img.shields.io/scrutinizer/g/cachethq/Cachet.svg?style=flat-square )](https://scrutinizer-ci.com/g/cachethq/Cachet)
2015-06-02 14:29:17 +01:00
[![Software License ](https://img.shields.io/badge/license-BSD3-brightgreen.svg?style=flat-square )](LICENSE)
2015-01-01 17:59:29 +00:00
[![Gitter ](https://img.shields.io/badge/gitter-join%20chat-brightgreen.svg?style=flat-square )](https://gitter.im/cachethq/Cachet?utm_source=badge& utm_medium=badge& utm_campaign=pr-badge)
2014-11-20 19:29:06 +00:00
2015-03-13 10:40:43 +00:00
![Screenshot ](https://cachethq.io/img/main-interface.jpg )
2014-11-24 09:10:56 +00:00
2014-12-30 10:50:31 +00:00
**Currently in development. Things may change or break until a solid release has been announced.**
2014-11-24 10:43:08 +00:00
2015-01-01 17:56:11 +00:00
## Features
2014-12-22 12:46:25 +00:00
2014-12-31 21:13:51 +00:00
- List your services components.
2014-12-22 12:46:25 +00:00
- Log incidents.
- Apply a custom stylesheet to the status page.
2014-12-30 10:47:27 +00:00
- Markdown support for incident messages.
2014-12-31 21:16:45 +00:00
- RESTful API.
2015-03-13 10:40:43 +00:00
- Translated into several languages.
- Metrics.
- Cross-database support: MySQL, PostgreSQL and SQLite.
2014-12-22 12:46:25 +00:00
2015-01-01 17:56:11 +00:00
## Requirements
2014-12-30 22:09:22 +00:00
2015-06-16 09:41:56 +01:00
- PHP 5.5.9+ or newer
2015-03-13 10:40:43 +00:00
- [Composer ](https://getcomposer.org )
2015-02-25 14:58:34 +00:00
2015-03-13 10:40:43 +00:00
### Development Requirements
2015-02-25 14:58:34 +00:00
The following extra dependencies are required to develop Cachet.
2014-12-30 22:09:22 +00:00
- Node.js
+ Bower
+ Gulp
2014-11-20 17:27:01 +00:00
2015-05-19 08:39:00 +01:00
## Installation, Upgrades and Documentation
2014-11-20 17:27:01 +00:00
2015-04-05 22:55:16 +01:00
You can now find our documentation at [https://docs.cachethq.io ](https://docs.cachethq.io ) or, directly at [http://cachet.readme.io ](http://cachet.readme.io ) if the first link fails to load. [Cachet Demo ](https://demo.cachethq.io ).
2015-05-19 08:39:00 +01:00
If you're upgrading from an earlier version of Cachet, which uses Laravel 4 then you'll need to follow the upgrade instructions [found here ](https://docs.cachethq.io/v1.0/docs/upgrading-from-laravel-4 ).
2015-04-05 22:55:16 +01:00
### Demo Account
To test out the demo, you may login to the [Dashboard ](https://demo.cachethq.io/dashboard ) with the following:
- **Username:** test@test .com
- **Password:** test123
The demo is reset every half past the hour.
2014-11-24 10:22:46 +00:00
2015-01-23 08:37:52 +00:00
## What Cachet is not
Here is a list of things that Cachet is not or does not do:
2015-03-13 10:40:43 +00:00
1. It does not monitor your services. It works only as a way to display the status of your services. *However, Cachet is able to receive updates from third-party services via its API.*
2015-01-23 08:37:52 +00:00
2. It does not work on a plugin system. There are no monitoring services to extend.
3. It's not a Twitter clone.
2015-01-13 22:50:26 -05:00
## Quickstart with Docker
2015-01-23 08:38:53 +00:00
Run a DB container (you can either pass in environment variables for the DB, or mount a config with `-v /my/database.php:/var/www/html/app/config/database.php` ):
2015-01-13 22:50:26 -05:00
2015-01-23 08:39:41 +00:00
```bash
$ export DB_USERNAME=cachet
$ export DB_PASSWORD=cachet
2015-02-18 16:21:35 +11:00
$ export DB_ROOT_PASSWORD=cachet
2015-01-23 08:39:41 +00:00
$ export DB_DATABASE=cachet
2015-02-18 16:21:35 +11:00
$ docker run --name mysql -e MYSQL_USER=$DB_USERNAME -e MYSQL_PASSWORD=$DB_PASSWORD -e MYSQL_ROOT_PASSWORD=$DB_ROOT_PASSWORD -e MYSQL_DATABASE=$DB_DATABASE -d mysql
2015-01-14 15:12:40 -05:00
```
2015-01-13 22:50:26 -05:00
2015-03-13 10:40:43 +00:00
Initialize the DB if you haven't yet:
2015-01-13 22:50:26 -05:00
2015-01-23 08:39:41 +00:00
```bash
2015-06-16 11:11:04 +02:00
$ docker run --rm --link mysql:mysql -e DB_HOST=mysql -e DB_DATABASE=$DB_DATABASE -e DB_USERNAME=$DB_USERNAME -e DB_PASSWORD=$DB_PASSWORD cachethq/cachet:latest php artisan migrate --force
2015-01-14 15:12:40 -05:00
```
2015-01-13 22:50:26 -05:00
Run Cachet:
2015-01-23 08:39:41 +00:00
```bash
2015-02-21 15:49:58 +11:00
$ docker run -d --name cachet --link mysql:mysql -p 80:8000 -e DB_HOST=mysql -e DB_DATABASE=$DB_DATABASE -e DB_USERNAME=$DB_USERNAME -e DB_PASSWORD=$DB_PASSWORD cachethq/cachet:latest
2015-01-14 15:12:40 -05:00
```
2015-01-13 22:50:26 -05:00
2015-01-23 08:38:53 +00:00
Now go to `http://<ipdockerisboundto>/setup` and have fun!
2015-01-13 22:50:26 -05:00
2015-02-19 19:49:57 +11:00
Note: When running in production you should ensure that you enable SSL.
2015-03-13 10:40:43 +00:00
This is commonly achieved by running Nginx with your certificates on your Docker host, service or load balancers in-front of the running container, or by adding your custom SSL certificates and configuration to the supplied Nginx configuration.
2015-06-18 11:18:00 -07:00
### docker-compose
Quickly launch Cachet and MySQL docker images with [docker-compose ](https://docs.docker.com/compose/ )
```bash
git clone https://github.com/cachethq/Cachet.git
cd Cachet
docker-compose build
docker-compose up
```
To initialize the database, utilize [docker exec ](https://docs.docker.com/reference/commandline/cli/#exec ):
```bash
docker exec -it cachet_cachet_1 php artisan migrate --force
```
Continue to `http://<ipdockerisboundto>/setup` to configure Cachet.
2015-03-26 15:07:16 -06:00
## Addons
2015-04-20 09:45:12 +01:00
- [cachet-monitor ](https://github.com/castawaylabs/cachet-monitor ) - For URL monitoring. Automatic incident updates.
- [sensu-cachet ](https://github.com/bimlendu/sensu-cachethq ) - Sensu handler for updating CachetHQ.
2015-03-26 15:07:16 -06:00
2015-03-13 10:40:43 +00:00
## Read more about Cachet
2015-02-19 19:49:57 +11:00
2015-03-13 10:40:43 +00:00
For more information on why I started developing Cachet, check out my [Cachet articles on my blog ](https://james-brooks.uk/tag/cachet/?utm_source=github&utm_medium=readme&utm_campaign=github-cachet ).
2015-02-19 19:49:57 +11:00
2015-01-01 17:56:11 +00:00
## Translations
2014-12-27 17:54:58 +00:00
2015-01-08 17:09:27 +00:00
A special thank you to our [translators ](https://crowdin.com/project/cachet/activity_stream ), who have allowed us to share Cachet with the world. If you'd like to contribute translations, please check out our [CrowdIn project ](https://crowdin.com/project/cachet ).