Skip to main content

Salt Container-Map

Configuration management and implicit dependency setup for Docker containers in SaltStack.

Project: https://github.com/merll/salt-container-map

Docs: Basic usage is provided in the state module. Details about container configurations are available in the docs for Docker-Map.

Overview

This package contains SaltStack modules for configuring Docker containers. They do not replace, but complement Salt’s built-in dockerio module in the following aspects:

  • Container dependencies that have to be followed during startup and shutdown do not have to be modelled via require or require_in. Instead, these are implicitly defined through their shared volumes and links.

  • For the purpose of sharing data between containers, virtual volumes can be created via a minimal runnable image (tianon/true obtained from the public Docker registry). These are considered during the dependency check and become adjusted with necessary file system permissions during startup.

  • When the configuration of a container is modified, the affected containers and their dependents can automatically be shut down and recreated.

  • Image updates can also result in an automated shutdown and recreation of containers and their dependents, without explicit watch or onchanges.

An example is documented in the state module.

Installation

Besides the usual package installation, a few simple post-installation steps are required. They are described in the docs.

Modules

Custom renderer

Container configurations can be set in both pillars and states. Pillars have the advantage that they are loaded automatically before any state (e.g. container_map.updated) or execution module uses it. Usually the disadvantage is that pillars cannot refer to other pillars. This package however provides a custom renderer lazy_yaml along with custom tags !pillar and !grain, which are resolved to their values on the minion just before the container maps and their configurations are instantiated.

By default, container maps are loaded from a pillar container_maps. This can be changed in the configuration by setting the configuration value container_map.pillar_name.

State and execution module

The modules distributed to the minions provide the functionality as outlined in the overview. A usage example is included in the state module documentation.

Download files

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

Source Distribution

salt-container-map-0.2.0.tar.gz (21.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

salt_container_map-0.2.0-py2.7.egg (53.7 kB view details)

Uploaded Egg

File details

Details for the file salt-container-map-0.2.0.tar.gz.

File metadata

File hashes

Hashes for salt-container-map-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8dbfd58deed03bfe79a3b12b75f963dff32d4092f1f75bfbdada3d45eab41996
MD5 e8c4d440f08edad5e0cac71b0b37407f
BLAKE2b-256 10d267f3e30b2293a32d5cecae5f4610c9a428a30caa90f83ce98451ae6b92b1

See more details on using hashes here.

File details

Details for the file salt_container_map-0.2.0-py2.7.egg.

File metadata

File hashes

Hashes for salt_container_map-0.2.0-py2.7.egg
Algorithm Hash digest
SHA256 c1862e879a0da1504f7891bddd305bd9275834f3f91b12c05a7fa2dfbb12948a
MD5 830feabfdbce4f35757835aa026b6819
BLAKE2b-256 c8e0244024a95e9e2e53acee230e40e421ccf3a67b5ca6d09bda9a9e0cfbbbb2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page