Skip to main content

Album is a framework for unifying computational tools across frameworks, languages, and environments.

Project description

Album plugin for creating Docker images from solutions

Plugin for creating Docker images from Album solutions.

The plugin allows you to package an Album solution into a Docker image, which can then be used to run the solution in a containerized environment, containing all necessary dependencies and configurations. Behavior of the container will be similar to the album run command, but the solution will be installed in a Docker image instead of the local environment. This is particularly useful for ensuring that the solution runs with all its dependencies in a consistent environment.

Installation:

  1. Install Album
  2. Activate the album environment:
micromamba activate album
  1. Install the album docker plugin:
micromamba install album-docker -c conda-forge

Or via pip:

pip install album-docker

Usage:

To create a docker image which contains Album with the passed solution installed run following command:

If your solution is in a directory, you can copy the solution.py file into a new folder, e.g. mySolutionFolder, and then run the command from that folder.

mkdir mySolutionFolder
cp /path/to/your/solution.py mySolutionFolder/

Then run the following command to create the docker image:


album docker --solution mySolutionFolder --output_path /your/output/path

The outcome will be a docker image with the tag <group>:<name>:<version> of the solution, where <group>, <name>, and <version> are defined in the solution.py file.

Input parameter:

  • solution: The album solution which should be packed into an executable.
  • output_path: The path where the executable should be saved
  • install-flags: Flags to pass to the album install command, e.g. '--allow-recursive'.
  • install-deps: Dependencies to install in the docker image, e.g. 'gxx' or 'gxx cmake'. This line will be added to the Dockerfile as a RUN command, so you can use any command that is valid in a Dockerfile.

Example:

album docker --solution mySolutionFolder --output_path /your/output/path --install-flags="--allow-recursive" --install-deps="apt update && apt install -y gxx cmake"

This will create a docker image with the tag group:name:version of the solution. Inside the image, the solution is installed together with the dependencies gxx and cmake.

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

album_docker-0.2.1.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

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

album_docker-0.2.1-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file album_docker-0.2.1.tar.gz.

File metadata

  • Download URL: album_docker-0.2.1.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for album_docker-0.2.1.tar.gz
Algorithm Hash digest
SHA256 a3fa18a4be1b4844e2ebd234377f76005d7c65a8a099ac26f07de5d0d5bacca8
MD5 ae2cfadf6f772abd53c079696d12f3f3
BLAKE2b-256 e440200d6dbf3ef7b909310092f54d4ab7a508252a7e82bd9d14f605603e6200

See more details on using hashes here.

File details

Details for the file album_docker-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: album_docker-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 6.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for album_docker-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 69ffdef419c54f981765df65aafb3e47f0be475da8f288c9501f58712b2159d9
MD5 c8d56982c7fd462ba74f4404b9ec1189
BLAKE2b-256 773003111a1374e885c0060886d3eb29f63b893c8658662f157f5d27f6604581

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 Pingdom Monitoring Sentry Error logging StatusPage Status page