Skip to main content

Automatically generate Docker Swarm mode node

Project description

labels for each constraint label in each
service in a Docker Compose / Docker Stack file.
Home-page: https://github.com/tiangolo/docker_auto_labels
Author: Sebastian Ramirez
Author-email: tiangolo@gmail.com
License: MIT license
Description: # Docker Auto Labels
[![](https://img.shields.io/pypi/v/docker-auto-labels.svg)](https://pypi.python.org/pypi/docker-auto-labels)

[![](https://img.shields.io/travis/tiangolo/docker-auto-labels.svg)](https://travis-ci.org/tiangolo/docker-auto-labels)


Automatically generate Docker Swarm mode node labels for each constraint label in each service in a Docker Compose / Docker Stack file.


## Description

This command line package is made to be used with a Docker Swarm mode cluster.

It will:
* Read a Docker Compose / Docker Stack file.
* Extract the node label constraints for each service.
* Check that all the labels exist in the Docker Swarm mode cluster.
* For each label that doesn't exist, create it in a random node in the cluster.

Adding label constraints helps you ensure that all the "stateful"
Docker services (like databases) are always deployed to the same
node (specially useful in a multi-node cluster).

This program will ensure that those labels exist in one node
in the cluster, if they don't exist, they are created in one
node chosen randomly.

That way, the first time you deploy a stack, a random node will be assigned
to each stateful service (by this command, right before the deployment).

And for all subsequent deployments, the stateful services will go to the
same nodes that they were using.

For examples on how to use it, check: https://github.com/tiangolo/full-stack

## Credits

This package was created with Cookiecutter_ and the `elgertam/cookiecutter-pipenv`_ project template, based on `audreyr/cookiecutter-pypackage`_.

[Cookiecutter](https://github.com/audreyr/cookiecutter)
[`elgertam/cookiecutter-pipenv`](https://github.com/elgertam/cookiecutter-pipenv)
[`audreyr/cookiecutter-pypackage`](https://github.com/audreyr/cookiecutter-pypackage)

## License

MIT License


=======
History
=======

0.1.0 (2018-05-01)
------------------

* First release on PyPI.

Keywords: docker_auto_labels
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6

Project details


Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
docker_auto_labels-0.2.3-py2.py3-none-any.whl (4.6 kB) Copy SHA256 hash SHA256 Wheel py2.py3 Sep 24, 2018
docker_auto_labels-0.2.3.tar.gz (9.9 kB) Copy SHA256 hash SHA256 Source None Sep 24, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page