Quick Start | FAQ | Javadocs | Contributing | Slack
========= DC/OS SDK is a collection of tools, libraries, and documentation for easy integration and automation of stateful services, such as databases, message brokers, and caching services.
DC/OS SDK is currently in alpha stage: it can run services, but APIs change regularly, and features are under active development.
-
Simple and Flexible: The SDK provides the simplicity of a declarative YAML API as well as the flexibility to use the full Java programming language.
-
Automate Maintenance: Stateful services need to be maintained. With the SDK, you can automate maintenance routines, such as backup and restore, to simplify operations.
-
Available and Durable: When servers fail, you need to reschedule the tasks without data loss or performance impact. With the SDK, you develop automated recovery strategies so services heal themselves.
-
Production-Proven: Building reliable services is hard. Uber and Bing platform teams use the SDK for mission-critical databases and message brokers.
===============
From a workstation with 8G Memory, Git, VirtualBox 5.0.x, and Vagrant 1.8.4, run:
- Download the DC/OS SDK.
git clone https://github.com/mesosphere/dcos-commons.git
- Create your local development environment.
cd dcos-commons/ && ./get-dcos-docker.sh
- Visit the DC/OS cluster dashboard to verify your development environment is running.
- Enter your development environment.
cd tools/vagrant/ && vagrant ssh
- Build your hello-world example project.
cd /dcos-commons/frameworks/helloworld/ && ./build.sh local
- Start your hello-world DC/OS service.
dcos package install hello-world
- Explore your hello-world service.
- Visit the dashboard to see your hello-world service running.
- Click through to one of your tasks (e.g.
world-server-1-<uuid>
), select the Files tab, select world-container-path, and finally select the output file.
===============
- Developer Guide ... coming soon!
- Javadocs
===============
Contributions are welcome! See CONTRIBUTING.
===============
DC/OS SDK is licensed under the Apache License, Version 2.0.