You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+43-18
Original file line number
Diff line number
Diff line change
@@ -12,48 +12,73 @@ Dkron is a distributed cron service, easy to setup and fault tolerant with focus
12
12
- Reliable: Completely fault tolerant
13
13
- Highly scalable: Able to handle high volumes of scheduled jobs and thousands of nodes
14
14
15
-
Dkron is written in Go and leverage the power of the Raft protocol and Serf for providing fault tolerance, reliability and scalability while keeping simple and easily installable.
15
+
Dkron is written in Go and leverage the power of the Raft protocol and Serf for providing fault tolerance, reliability
16
+
and scalability while keeping simple and easily installable.
16
17
17
-
Dkron is inspired by the google whitepaper [Reliable Cron across the Planet](https://queue.acm.org/detail.cfm?id=2745840) and by Airbnb Chronos borrowing the same features from it.
18
+
Dkron is inspired by the google
19
+
whitepaper [Reliable Cron across the Planet](https://queue.acm.org/detail.cfm?id=2745840) and by Airbnb Chronos
20
+
borrowing the same features from it.
18
21
19
-
Dkron runs on Linux, OSX and Windows. It can be used to run scheduled commands on a server cluster using any combination of servers for each job. It has no single points of failure due to the use of the Gossip protocol and fault tolerant distributed databases.
22
+
Dkron runs on Linux, OSX and Windows. It can be used to run scheduled commands on a server cluster using any combination
23
+
of servers for each job. It has no single points of failure due to the use of the Gossip protocol and fault tolerant
24
+
distributed databases.
20
25
21
26
You can use Dkron to run the most important part of your company, scheduled jobs.
Full, comprehensive documentation is viewable on the [Dkron website](http://dkron.io)
32
+
Full, comprehensive documentation is accessible on the [Dkron website](http://dkron.io)
28
33
29
-
## Development Quick start
34
+
## Quickstart
30
35
31
-
The best way to test and develop dkron is using docker, you will need [Docker](https://www.docker.com/) installed before proceeding.
36
+
### Deploying Dkron using Docker
32
37
33
-
Clone the repository.
38
+
The best way to test and develop dkron is using docker, you will need [Docker](https://www.docker.com/) with Docker
39
+
compose installed before proceeding.
34
40
35
-
Next, run the included Docker Compose config:
41
+
```bash
42
+
docker compose up -d
43
+
```
36
44
37
-
`docker-compose up`
45
+
The UI should be available on http://localhost:8080/ui.
38
46
39
-
This will start Dkron instances. To add more Dkron instances to the clusters:
47
+
### Using Dkron
40
48
41
-
```
42
-
docker-compose up --scale dkron-server=4
43
-
docker-compose up --scale dkron-agent=10
49
+
To add jobs to the system read the [API docs](https://dkron.io/api/).
50
+
51
+
### Scaling the cluster
52
+
53
+
To add more Dkron instances to the cluster:
54
+
55
+
```bash
56
+
docker compose up -d --scale dkron-server=4
57
+
docker compose up -d --scale dkron-agent=10
44
58
```
45
59
46
-
Check the port mapping using `docker-compose ps` and use the browser to navigate to the Dkron dashboard using one of the ports mapped by compose.
60
+
## Development
47
61
48
-
To add jobs to the system read the [API docs](https://dkron.io/api/).
62
+
To develop Dkron, you can deploy the cluster with local changes applied with the following steps:
63
+
64
+
1. Clone the repository.
65
+
66
+
2. Run the `docker compose`:
67
+
68
+
```bash
69
+
docker compose -f docker-compose.dev.yml up
70
+
```
49
71
50
-
## Frontend development
72
+
### Frontend development
51
73
52
74
Dkron dashboard is built using [React Admin](https://marmelab.com/react-admin/) as a single page application.
53
75
54
-
To start developing the dashboard enter the `ui` directory and run `npm install` to get the frontend dependencies and then start the local server with `npm start` it should start a new local web server and open a new browser window serving de web ui.
76
+
To start developing the dashboard enter the `ui` directory and run `npm install` to get the frontend dependencies and
77
+
then start the local server with `npm start` it should start a new local web server and open a new browser window
78
+
serving de web ui.
55
79
56
-
Make your changes to the code, then run `make ui` to generate assets files. This is a method of embedding resources in Go applications.
80
+
Make your changes to the code, then run `make ui` to generate assets files. This is a method of embedding resources in
0 commit comments