Advanced Scheduling for Docker and Tutum.co
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.assets
server
.gitignore
.release
.release.details
Dockerfile
LICENSE
README.md
README.tmpl.md
build.sh
circle.yml
dev-build.sh
docker-compose.yml
tutum.yml
update.sh

README.md

Scheduler Pre Alpha

Screenshot 1

Scheduler is very much a work in progress. It's aim is to provide work scheduling for distributed Docker based systems.


If you use this project please consider giving us a star on GitHub. Also if you can spare 30 secs of your time please let us know your priorities here https://sillelien.wufoo.com/forms/zv51vc704q9ary/ - thanks, that really helps!

Please contact us through chat or through GitHub Issues.

GitHub Issues

Join the chat at https://gitter.im/sillelien/scheduler


Please use a tagged version:

FROM sillelien/scheduler:0.1.85

Setting Up

Sillelien Scheduler, uses Sillelien Configurator to configure schedules. Configurator is simply a combination of a git repository and an editor to allow you to alter config in Docker images in a sensible and permanent manner.

Below is a typical docker-compose file

worker:
  image: sillelien/jessie
  command: "sleep 1000000"


scheduler:
  image: sillelien/scheduler:0.1.85
  links:
    - test:test
    - scserver:scserver

scserver:
  image: sillelien/sc-server:0.0.56
  volumes:
    - /var/sc/config/server:/repo
  ports:
    - "1500"
    - "9418"

sceditor:
  image: sillelien/sc-editor:0.0.56
  volumes:
    - /var/sc/config/editor:/config
  links:
    - scserver:scserver
  ports:
    - "8080:8080"

Here you can see the three parts: the Configurator server, the Configurator editor and the Scheduler. The editor allows you to create and modify Scheduler YAML files, the server stores them in a git repository and Scheduler uses them to Schedule work.

When you first start up this docker-compose arrangement Scheduler will create the appropriate directories and files for you to use.

Deploy to Tutum

Creating a Job

Scheduler schedules Jobs, these jobs are read from a YAML file. An example schedule is:

date_job:
  cron: "* * * * *"
  action: 
    type: tutum_exec
    service: "test"
    command: "date"

Currently the supported action types are tutum_exec, tutum_start_service and debug only.

tutum_exec

The action should contain type: tutum_exec, the service field is the name of the Tutum service to use and the command is the command string to be executed on that service.

tutum_start_service

The action should contain type: tutum_start_service, the service field is the name of the Tutum service to start.

Badges

Docker Registry

Image Layers

Circle CI


GitHub License

(c) 2015 Sillelien all rights reserved. Please see LICENSE for license details of this project. Please visit http://sillelien.com for help and commercial support or raise issues on GitHub.