Skip to content

Releases: containers/podman-compose

v1.4.0

10 May 12:25
v1.4.0
Compare
Choose a tag to compare

Bug fixes

  • Fixed handling of relative includes and extends in compose files
  • Fixed error when merging arguments in list and dictionary syntax
  • Fixed issue where short-lived containers could execute twice when using up in detached mode
  • Fixed up command hanging on Podman versions earlier than 4.6.0
  • Fixed issue where service_healthy conditions weren't enforced during up command
  • Fixed support for the --scale flag
  • Fixed bug causing dependent containers to start despite --no-deps flag
  • Fixed port command behavior for dynamic host ports
  • Fixed interpolation of COMPOSE_PROJECT_NAME when set from top-level name in compose file
  • Fixed project name evaluation order to match compose spec
  • Fixed build context when using git URLs
  • Fixed KeyError when down is called with non-existent service
  • Skip down during up when no active containers exist
  • Fixed non-zero exit code on failure when using up -d
  • Fixed SIGINT handling during up command for graceful shutdown
  • Fixed NotImplementedError when interrupted on Windows

Features

  • Added --quiet flag to config command to suppress output
  • Added support for pids_limit and deploy.resources.limits.pids
  • Added --abort-on-container-failure option
  • Added --rmi argument to down command for image removal
  • Added support for x-podman.disable-dns to disable DNS plugin on defined networks
  • Added support for x-podman.dns to set DNS nameservers for defined networks
  • Improved file descriptor handling - no longer closes externally created descriptors.
    This allows descriptors created e.g. via systemd socket activation to be passed to
    containers.
  • Added support for cpuset configuration
  • Added support for reset and override tags when merging compose files
  • Added support for x-podman.interface_name to set network interface names
  • Added support for x-podman.pod_args to override default --pod-args

v1.3.0

07 Jan 19:18
v1.3.0
Compare
Choose a tag to compare

Bug fixes

  • Fixed support for de-facto alternative Dockerfile names (e.g. Containerfile)
  • Fixed a bug that caused attempts to create already existing pods multiple times.
  • Fixed compatibility with docker-compose in how symlinks to docker-compose.yml are handled.
  • Fixed freeze caused by too long log lines without a newline.
  • Fixed support for network_mode: none.
  • Improved error detection by rejecting service definitions that contain both network_mode and
    networks keys, which is not allowed.

Features

  • Added support for build labels.
  • Added support for "platform" property in the build command.
  • Added support for "ssh" property in the build command.
  • Added support for cache_from and cache_to fields in build section.
  • Added support for honoring the condition in the depends_on section of the service, if stated.
  • Added x-podman.no_hosts setting to pass --no-hosts to podman run
  • Added support for compatibility with docker compose for default network behavior when no network
    defined in service. This is controlled via default_net_behavior_compat feature flag.
  • Added a way to get compatibility of default network names with docker compose.
    This is selected by setting default_net_name_compat: true on x-podman global dictionary.
  • Added support for the device_cgroup_rules property in services.
  • Added support for removing networks in podman-compose down.
  • Added support for network scoped service aliases.
  • Added support for network level mac_address attribute.
  • Added ability to substitute variables with the environment of the service.

Misc

  • Declared compatibility with Python 3.13.

v1.2.0

26 Jun 07:45
v1.2.0
d38b26b
Compare
Choose a tag to compare

Bug fixes

  • Fixed handling of --in-pod argument. Previously it was hard to provide false value to it.
  • podman-compose no longer creates pods when registering systemd unit.
  • Fixed warning RuntimeWarning: coroutine 'create_pods' was never awaited
  • Fixed error when setting up IPAM network with default driver.
  • Fixed support for having list and dictionary depends_on sections in related compose files.
  • Fixed logging of failed build message.
  • Fixed support for multiple entries in include section.
  • Fixed environment variable precedence order.

Changes

  • x-podman dictionary in container root has been migrated to x-podman.* fields in container root.

New features

  • Added support for --publish in podman-compose run.
  • Added support for Podman external root filesystem management (--rootfs option).
  • Added support for podman-compose images command.
  • Added support for env_file being configured via dictionaries.
  • Added support for enabling GPU access.
  • Added support for selinux in verbose mount specification.
  • Added support for additional_contexts section.
  • Added support for multi-line environment files.
  • Added support for passing contents of podman-compose.yml via stdin.
  • Added support for specifying the value for --in-pod setting in podman-compose.yml file.
  • Added support for environmental secrets.

Documentation

  • Added instructions on how to install podman-compose on Homebrew.
  • Added explanation that netavark is an alternative to dnsname plugin

v1.1.0

19 Apr 10:00
v1.1.0
Compare
Choose a tag to compare

Bug fixes

  • Fixed support for values with equals sign in -e argument of run and exec commands.
  • Fixed duplicate arguments being emitted in stop and restart commands.
  • Removed extraneous debug output. --verbose flag has been added to preserve verbose output.
  • Links aliases are now added to service aliases.
  • Fixed image build process to use defined environmental variables.
  • Empty list is now allowed to be COMMAND and ENTRYPOINT.
  • Environment files are now resolved relative to current working directory.
  • Exit code of container build is now preserved as return code of build command.

New features

  • Added support for uidmap, gidmap, http_proxy and runtime service configuration keys.
  • Added support for enable_ipv6 network configuration key.
  • Added --parallel option to support parallel pulling and building of images.
  • Implemented support for maps in sysctls container configuration key.
  • Implemented stats command.
  • Added --no-normalize flag to config command.
  • Added support for include global configuration key.
  • Added support for build command.
  • Added support to start containers with multiple networks.
  • Added support for profile argument.
  • Added support for starting podman in existing network namespace.
  • Added IPAM driver support.
  • Added support for file secrets being passed to podman build via --secret argument.
  • Added support for multiple networks with separately specified IP and MAC address.
  • Added support for service.build.ulimits when building image.