Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

docker-composition

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

docker-composition

Docker-compose package manager

  • 1.0.5
  • PyPI
  • Socket score

Maintainers
1

Description

Still very much in alpha. But a package manager similar to that of helm but for docker-compose applications.
Handles sub-applications and values.yaml files with templates similar to that used for kubernetes.yaml files.

To start you need three files (see examples here: https://github.com/sam-technesci/composer/tree/main/examples):
app.yaml
template.yaml
values.yaml
The templating language used is Jinja2 and you substitute variables from your values.yaml(s) into the template.

Quick install

cd examples/basic_application && composer install
See the README.md at examples/basic_application/README.md for a walk-through.
Defaults to using values.yaml in the same directory.
To view your template before installing it you can do composer template or you can save a template with composer template > docker-compose.yaml
For more commands do: composer --help

Installation

Helper Script

curl -fsSL https://raw.githubusercontent.com/sam-technesci/composer/main/install.sh -o get-composer.sh && sudo /bin/bash get-composer.sh

Manual

Install python39 and pip3. Then do: pip3 install --upgrade docker-composition

.deb Creation

Install sudo apt-get install python3-stdeb

Project setup

Using hatch as a tool to manage package: https://hatch.pypa.io/latest/intro/

hatch new composition

Publishing

Ensured the pyproject.toml looked like this:

[build-system]
requires = [
    "hatchling>=1.7.0",
]
build-backend = "hatchling.build"

[project]
name = "docker-composition"
description = "Docker-compose package manager"
readme = "README.md"
license = ""
authors = [
    { name = "sam", email = "sam@fake.com" },
]
dependencies = [
    "humanize",
    "petname",
    "PyYAML",
    "Jinja2",
    "click"
]
dynamic = [
    "version",
]

[project.scripts]
composer = "composition.composer:entrypoint"

[project.urls]
Homepage = "https://github.com/sam-technesci/composer"

[tool.hatch.version]
path = "composition/__init__.py"

[tool.hatch.build.targets.sdist]
include = [
    "/composition",
]

Note: remember to update __version__.py
Then run:
sudo hatch build && sudo hatch publish

Generating requirements

pip3 install pip-tools pip-compile requirements.in > requirements.txt

To install locally

pip3 install --upgrade docker-composition

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc