Skip to main content

Daemon for Docker Automation

Project description

autodock is a Daemon for Docker Automation.

autodock is MIT licensed.

Installation

Either pull the automatically updated Docker image:

$ docker pull prologic/autodock

Or install from the development repository:

$ git clone https://github.com/prologic/autodock.git
$ cd autodock
$ pip install -r requirements.txt

Plugins

autodock comes with a number of plugins where each piece of functionality is provided by a separate plugin. Each plugin is “linked” to autodock to receive Docker events and issue new Docker API commands. The following list is a list of the currently available plugins for production use:

Example #1 – Logging Docker Events

Start the daemon:

$ docker run -d -v /var/run/docker.sock:/var/run/docker.sock --name autodock:autodock prologic/autodock

Link and start an autodock plugin:

$ docker run -i -t --link autodock prologic/autodock-logger

Now whenever you start a new container autodock will listen for Docker events. The autodock-logger plugin will log all Docker Events received by autodock.

Example #2 – Automatic Virtual Hosting with hipache

Start the daemon:

$ docker run -d --name autodock prologic/autodock

Link and start an autodock plugin:

$ docker run -d --link autodock prologic/autodock-hipache

Now whenever you start a new container autodock will listen for Docker events and discover containers that have been started. The autodock-hipache plugin will specifically listen for starting containers that have a VIRTUALHOST environment variable and reconfigure the running hipache container.

Start a “Hello World” Web Application:

$ docker run -d -e VIRTUALHOST=hello.local prologic/hello

Now assuming you had hello.local configured in your /etc/hosts pointing to your hipache container you can now visit http://hello.local/

echo "127.0.0.1 hello.local" >> /etc/hosts
curl -q -o - http://hello.local/
Hello World!

Example #3 – Cron-like Scheduling of Containers

Start the daemon:

$ docker run -d --name autodock prologic/autodock

Link and start an autodock plugin:

$ docker run -d --link autodock prologic/autodock-cron

Now whenever you create a new container autodock will listen for Docker events and discover containers that have been created. The autodock-cron plugin will specifically listen for created containers that have a CRON environment variable and schedule a job based on the cron expression supplied and re-run that container when its scheduled has triggered.

Start a “Hello” Busybox Container:

$ docker run -i -t --name hello busybox sh -c "echo Hello"

After about three minutes or so you should see the following in the logs:

$ docker logs hello
Hello
Hello
Hello

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autodock-0.0.2.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

autodock-0.0.2-py2-none-any.whl (12.0 kB view details)

Uploaded Python 2

File details

Details for the file autodock-0.0.2.tar.gz.

File metadata

  • Download URL: autodock-0.0.2.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for autodock-0.0.2.tar.gz
Algorithm Hash digest
SHA256 eae631ac3fca190f24fca80132a5312cf108f8c0c7ea174f1b3a52f8b7c3c714
MD5 8fa45cac7bac3ac3fe5076af8c109a5b
BLAKE2b-256 416af044707f9e86635e3af54719999def12816972cd27cd68dc2af8df85d0ed

See more details on using hashes here.

File details

Details for the file autodock-0.0.2-py2-none-any.whl.

File metadata

File hashes

Hashes for autodock-0.0.2-py2-none-any.whl
Algorithm Hash digest
SHA256 397f62ea60c45da2ea3e075ef536f218e676a84df1ca2a1c37b311383dab154c
MD5 fd95530ec951cdb8c9cf30f0ce7fe425
BLAKE2b-256 90dfcfd2ce1344f47266ee1f46a3f7319f819d03f8655fee2fc7eb80ca77a8a1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page