Recent Releases of docker-py
docker-py - 7.1.0
Upgrade Notes
- Bumped minimum engine API version to 1.24
- Bumped default engine API version to 1.44 (Moby 25.0)
Bugfixes
- Fixed issue with tag parsing when the registry address includes ports that resulted in
invalid tag formaterrors - Fixed issue preventing creating new configs (
ConfigCollection), which failed with aKeyErrordue to thenamefield - Fixed an issue due to an update in the requests package breaking
docker-pyby applying the suggested fix
Miscellaneous
- Documentation improvements
- Updated Ruff (linter) and fixed minor linting issues
- Packaging/CI updates
- Started using hatch for packaging (https://github.com/pypa/hatch)
- Updated
setup-pythongithub action
- Updated tests
- Stopped checking for deprecated container and image related fields (
ContainerandContainerConfig) - Updated tests that check
NetworkSettings.Networks.<network>.Aliasesdue to engine changes
- Stopped checking for deprecated container and image related fields (
What's Changed
- Bump default API version to 1.43 (Moby 24.0) by @vvoland in https://github.com/docker/docker-py/pull/3199
- integration/commit: Don't check for deprecated fields by @vvoland in https://github.com/docker/docker-py/pull/3203
- fix: tag regex should allow ports by @artificial-intelligence in https://github.com/docker/docker-py/pull/3196
- utils: Fix datetimetotimestamp by @vvoland in https://github.com/docker/docker-py/pull/3208
- fix: keyerror when creating new config(#3110) by @Khushiyant in https://github.com/docker/docker-py/pull/3200
- Update Ruff, fix some minor issues by @akx in https://github.com/docker/docker-py/pull/3206
- docs: change image.history() return type to list (#3076) by @Khushiyant in https://github.com/docker/docker-py/pull/3202
- lint: fix string formatting by @milas in https://github.com/docker/docker-py/pull/3211
- Drop
packagingdependency by @akx in https://github.com/docker/docker-py/pull/3205 - Bump default API version to 1.44 (Moby 25.0) by @vvoland in https://github.com/docker/docker-py/pull/3231
- Modernize build to use
hatchlingandhatch-vcsby @akx in https://github.com/docker/docker-py/pull/3207 - Enable Ruff I (import sort), autofix by @akx in https://github.com/docker/docker-py/pull/3212
- chore(ci): fix-ups across Make / Docker / GitHub Actions by @milas in https://github.com/docker/docker-py/pull/3241
- chore: fix return type docs for
container.logs()by @BobDu in https://github.com/docker/docker-py/pull/2240 - CI fix by @krissetto in https://github.com/docker/docker-py/pull/3260
- Fix for requests 2.32 by @felixfontein in https://github.com/docker/docker-py/pull/3257
- Added 7.1.0 changelog by @krissetto in https://github.com/docker/docker-py/pull/3262
- Fix env var name in release pipeline by @krissetto in https://github.com/docker/docker-py/pull/3263
- Change env var name in release pipeline to match hatch expectations by @krissetto in https://github.com/docker/docker-py/pull/3264
New Contributors
- @vvoland made their first contribution in https://github.com/docker/docker-py/pull/3199
- @artificial-intelligence made their first contribution in https://github.com/docker/docker-py/pull/3196
- @Khushiyant made their first contribution in https://github.com/docker/docker-py/pull/3200
- @BobDu made their first contribution in https://github.com/docker/docker-py/pull/2240
- @krissetto made their first contribution in https://github.com/docker/docker-py/pull/3260
Full Changelog: https://github.com/docker/docker-py/compare/7.0.0...7.1.0
- Python
Published by github-actions[bot] about 2 years ago
docker-py - 7.0.0
Upgrade Notes (from 6.x) β οΈ
- Removed SSL version (
ssl_version) and explicit hostname check (assert_hostname) options (#3185)assert_hostnamehas not been used since Python 3.6 and was removed in 3.12- Python 3.7+ supports TLSv1.3 by default
- Websocket support is no longer included by default (#3123)
- Use
pip install docker[websockets]to includewebsocket-clientdependency - By default,
docker-pyhijacks the TCP connection and does not use Websockets - Websocket client is only required to use
attach_socket(container, ws=True)
- Use
- Python 3.7 no longer supported (reached end-of-life June 2023) (#3187)
Features β¨
- Python 3.12 support (#3185)
- Full
networking_configsupport forcontainers.create()(#3121)- Replaces
network_driver_opt(added in 6.1.0)
- Replaces
- Add
health()property to container that returns status (e.g.unhealthy) (#3147) - Add
pauseoption tocontainer.commit()(#3159) - Add support for bind mount propagation (e.g.
rshared,private) (#3164) - Add support for
filters,keep_storage, andallinprune_builds()on API v1.39+ (#3192)
Bugfixes π
- Consistently return
docker.errors.NotFoundon 404 responses (#3156) - Validate tag format before push (#3191)
Miscellaneous π§
- Upgraded urllib3 version in
requirements.txt(used for development/tests) (#3183) - Documentation typo fixes & formatting improvements (#3130)
- Fixed integration test compatibility for newer Moby engine versions (#3165, #3166, #3145, #3169, #3170)
- Switch to ruff for linting (#3126)
What's Changed
- fix user_guides/multiplex.rst by @Longin-Yu in https://github.com/docker/docker-py/pull/3130
- tests/integration: fix flake8 failures (E721 do not compare types), and fix Dockerfile for debian "bookworm" by @thaJeztah in https://github.com/docker/docker-py/pull/3166
- tests/integration: update some tests for updated error-messages by @thaJeztah in https://github.com/docker/docker-py/pull/3165
- README: fix link for CI status badge by @thaJeztah in https://github.com/docker/docker-py/pull/3167
- fix: use response.text to get string rather than bytes by @mndeveci in https://github.com/docker/docker-py/pull/3156
- feat: add pause option to commit api by @VincentLeeMax in https://github.com/docker/docker-py/pull/3159
- build(deps): Bump requests from 2.28.1 to 2.31.0 by @dependabot in https://github.com/docker/docker-py/pull/3136
- test: remove APT_MIRROR from Dockerfile by @thaJeztah in https://github.com/docker/docker-py/pull/3145
- Switch linting to ruff, use f-strings, fix lint errors and possible bugs by @akx in https://github.com/docker/docker-py/pull/3126
- integration: Fix bad subnet declaration by @akerouanton in https://github.com/docker/docker-py/pull/3169
- integration: Remove testcreatecheck_duplicate by @akerouanton in https://github.com/docker/docker-py/pull/3170
- Support all
Network.connectparameters inclient.containers.runandclient.containers.createby @Skazza94 in https://github.com/docker/docker-py/pull/3121 - feat: move websocket-client to extra dependency by @akx in https://github.com/docker/docker-py/pull/3123
- Add health property to Containers model by @TurnrDev in https://github.com/docker/docker-py/pull/3147
- build(deps): Bump urllib3 from 1.26.11 to 1.26.18 by @dependabot in https://github.com/docker/docker-py/pull/3183
- breaking: Python 3.12 compatibility & remove custom SSL adapter by @milas in https://github.com/docker/docker-py/pull/3185
- chore: add changelog for 7.0.0 by @milas in https://github.com/docker/docker-py/pull/3186
- chore: remove support for Python 3.7 by @milas in https://github.com/docker/docker-py/pull/3187
- chore: update MAINTAINERS and remove CODEOWNERS by @milas in https://github.com/docker/docker-py/pull/3188
- chore: fix missing setuptools in CI by @milas in https://github.com/docker/docker-py/pull/3189
- Fix #3153 - Validate tag before build using OCI regex by @LombardiDaniel in https://github.com/docker/docker-py/pull/3191
- feat: accept filters and keepstorage in prunebuilds by @emranbm in https://github.com/docker/docker-py/pull/3192
- chore: update changelog and maintainer by @milas in https://github.com/docker/docker-py/pull/3193
New Contributors
- @Longin-Yu made their first contribution in https://github.com/docker/docker-py/pull/3130
- @mndeveci made their first contribution in https://github.com/docker/docker-py/pull/3156
- @VincentLeeMax made their first contribution in https://github.com/docker/docker-py/pull/3159
- @akerouanton made their first contribution in https://github.com/docker/docker-py/pull/3169
- @TurnrDev made their first contribution in https://github.com/docker/docker-py/pull/3147
- @LombardiDaniel made their first contribution in https://github.com/docker/docker-py/pull/3191
- @emranbm made their first contribution in https://github.com/docker/docker-py/pull/3192
Full Changelog: https://github.com/docker/docker-py/compare/6.1.3...7.0.0
- Python
Published by github-actions[bot] over 2 years ago
docker-py - 7.0.0b3
βΉοΈ See 7.0.0b2 for full release notes
Upgrade Notes (from 6.x) β οΈ
- Removed SSL version (
ssl_version) and explicit hostname check (assert_hostname) options (#3185)assert_hostnamehas not been used since Python 3.6 and was removed in 3.12- Python 3.7+ supports TLSv1.3 by default
- Websocket support is no longer included by default (#3123)
- Use
pip install docker[websockets]to includewebsocket-clientdependency - By default,
docker-pyhijacks the TCP connection and does not use Websockets - Websocket client is only required to use
attach_socket(container, ws=True)
- Use
- Python 3.7 no longer supported (reached end-of-life June 2023) (#3187)
Features β¨
- Add support for
filters,keep_storage, andallinprune_builds()on API v1.39+ (#3192)
Bugfixes π
- Validate tag format before push (#3191)
Full Changelog
- Fix #3153 - Validate tag before build using OCI regex by @LombardiDaniel in https://github.com/docker/docker-py/pull/3191
- feat: accept filters and keepstorage in prunebuilds by @emranbm in https://github.com/docker/docker-py/pull/3192
Commit Log: https://github.com/docker/docker-py/compare/7.0.0b2...7.0.0b3
New Contributors
- @LombardiDaniel made their first contribution in https://github.com/docker/docker-py/pull/3191
- @emranbm made their first contribution in https://github.com/docker/docker-py/pull/3192
- Python
Published by github-actions[bot] over 2 years ago
docker-py - 7.0.0b2
βΉοΈ This is identical to 7.0.0b1, which was not correctly released due to a CI pipeline issue.
Upgrade Notes β οΈ
- Removed SSL version (
ssl_version) and explicit hostname check (assert_hostname) options (#3185)assert_hostnamehas not been used since Python 3.6 and was removed in 3.12- Python 3.7+ supports TLSv1.3 by default
- Websocket support is no longer included by default (#3123)
- Use
pip install docker[websockets]to includewebsocket-clientdependency - By default,
docker-pyhijacks the TCP connection and does not use Websockets - Websocket client is only required to use
attach_socket(container, ws=True)
- Use
- Python 3.7 no longer supported (reached end-of-life June 2023) (#3187)
Features β¨
- Python 3.12 support (#3185)
- Full
networking_configsupport forcontainers.create()(#3121)- Replaces
network_driver_opt(added in 6.1.0)
- Replaces
- Add
health()property to container that returns status (e.g.unhealthy) (#3147) - Add
pauseoption tocontainer.commit()(#3159) - Add support for bind mount propagation (e.g.
rshared,private) (#3164)
Bugfixes π
- Consistently return
docker.errors.NotFoundon 404 responses (#3156)
Miscellaneous π§
- Upgraded urllib3 version in
requirements.txt(used for development/tests) (#3183) - Documentation typo fixes & formatting improvements (#3130)
- Fixed integration test compatibility for newer Moby engine versions (#3165, #3166, #3145, #3169, #3170)
- Switch to ruff for linting (#3126)
Full Changelog
- fix user_guides/multiplex.rst by @Longin-Yu in https://github.com/docker/docker-py/pull/3130
- tests/integration: fix flake8 failures (E721 do not compare types), and fix Dockerfile for debian "bookworm" by @thaJeztah in https://github.com/docker/docker-py/pull/3166
- tests/integration: update some tests for updated error-messages by @thaJeztah in https://github.com/docker/docker-py/pull/3165
- README: fix link for CI status badge by @thaJeztah in https://github.com/docker/docker-py/pull/3167
- fix: use response.text to get string rather than bytes by @mndeveci in https://github.com/docker/docker-py/pull/3156
- feat: add pause option to commit api by @VincentLeeMax in https://github.com/docker/docker-py/pull/3159
- build(deps): Bump requests from 2.28.1 to 2.31.0 by @dependabot in https://github.com/docker/docker-py/pull/3136
- test: remove APT_MIRROR from Dockerfile by @thaJeztah in https://github.com/docker/docker-py/pull/3145
- Switch linting to ruff, use f-strings, fix lint errors and possible bugs by @akx in https://github.com/docker/docker-py/pull/3126
- integration: Fix bad subnet declaration by @akerouanton in https://github.com/docker/docker-py/pull/3169
- integration: Remove testcreatecheck_duplicate by @akerouanton in https://github.com/docker/docker-py/pull/3170
- Support all
Network.connectparameters inclient.containers.runandclient.containers.createby @Skazza94 in https://github.com/docker/docker-py/pull/3121 - feat: move websocket-client to extra dependency by @akx in https://github.com/docker/docker-py/pull/3123
- Add health property to Containers model by @TurnrDev in https://github.com/docker/docker-py/pull/3147
- build(deps): Bump urllib3 from 1.26.11 to 1.26.18 by @dependabot in https://github.com/docker/docker-py/pull/3183
- breaking: Python 3.12 compatibility & remove custom SSL adapter by @milas in https://github.com/docker/docker-py/pull/3185
- chore: add changelog for 7.0.0 by @milas in https://github.com/docker/docker-py/pull/3186
- chore: remove support for Python 3.7 by @milas in https://github.com/docker/docker-py/pull/3187
- chore: update MAINTAINERS and remove CODEOWNERS by @milas in https://github.com/docker/docker-py/pull/3188
New Contributors
- @Longin-Yu made their first contribution in https://github.com/docker/docker-py/pull/3130
- @mndeveci made their first contribution in https://github.com/docker/docker-py/pull/3156
- @VincentLeeMax made their first contribution in https://github.com/docker/docker-py/pull/3159
- @akerouanton made their first contribution in https://github.com/docker/docker-py/pull/3169
- @TurnrDev made their first contribution in https://github.com/docker/docker-py/pull/3147
Full Changelog: https://github.com/docker/docker-py/compare/6.1.3...7.0.0b2
- Python
Published by github-actions[bot] over 2 years ago
docker-py - 7.0.0b1
Upgrade Notes β οΈ
- Removed SSL version (
ssl_version) and explicit hostname check (assert_hostname) options (#3185)assert_hostnamehas not been used since Python 3.6 and was removed in 3.12- Python 3.7+ supports TLSv1.3 by default
- Websocket support is no longer included by default (#3123)
- Use
pip install docker[websockets]to includewebsocket-clientdependency - By default,
docker-pyhijacks the TCP connection and does not use Websockets - Websocket client is only required to use
attach_socket(container, ws=True)
- Use
- Python 3.7 no longer supported (reached end-of-life June 2023) (#3187)
Features β¨
- Python 3.12 support (#3185)
- Full
networking_configsupport forcontainers.create()(#3121)- Replaces
network_driver_opt(added in 6.1.0)
- Replaces
- Add
health()property to container that returns status (e.g.unhealthy) (#3147) - Add
pauseoption tocontainer.commit()(#3159) - Add support for bind mount propagation (e.g.
rshared,private) (#3164)
Bugfixes π
- Consistently return
docker.errors.NotFoundon 404 responses (#3156)
Miscellaneous π§
- Upgraded urllib3 version in
requirements.txt(used for development/tests) (#3183) - Documentation typo fixes & formatting improvements (#3130)
- Fixed integration test compatibility for newer Moby engine versions (#3165, #3166, #3145, #3169, #3170)
- Switch to ruff for linting (#3126)
Full Changelog
- fix user_guides/multiplex.rst by @Longin-Yu in https://github.com/docker/docker-py/pull/3130
- tests/integration: fix flake8 failures (E721 do not compare types), and fix Dockerfile for debian "bookworm" by @thaJeztah in https://github.com/docker/docker-py/pull/3166
- tests/integration: update some tests for updated error-messages by @thaJeztah in https://github.com/docker/docker-py/pull/3165
- README: fix link for CI status badge by @thaJeztah in https://github.com/docker/docker-py/pull/3167
- fix: use response.text to get string rather than bytes by @mndeveci in https://github.com/docker/docker-py/pull/3156
- feat: add pause option to commit api by @VincentLeeMax in https://github.com/docker/docker-py/pull/3159
- build(deps): Bump requests from 2.28.1 to 2.31.0 by @dependabot in https://github.com/docker/docker-py/pull/3136
- test: remove APT_MIRROR from Dockerfile by @thaJeztah in https://github.com/docker/docker-py/pull/3145
- Switch linting to ruff, use f-strings, fix lint errors and possible bugs by @akx in https://github.com/docker/docker-py/pull/3126
- integration: Fix bad subnet declaration by @akerouanton in https://github.com/docker/docker-py/pull/3169
- integration: Remove testcreatecheck_duplicate by @akerouanton in https://github.com/docker/docker-py/pull/3170
- Support all
Network.connectparameters inclient.containers.runandclient.containers.createby @Skazza94 in https://github.com/docker/docker-py/pull/3121 - feat: move websocket-client to extra dependency by @akx in https://github.com/docker/docker-py/pull/3123
- Add health property to Containers model by @TurnrDev in https://github.com/docker/docker-py/pull/3147
- build(deps): Bump urllib3 from 1.26.11 to 1.26.18 by @dependabot in https://github.com/docker/docker-py/pull/3183
- breaking: Python 3.12 compatibility & remove custom SSL adapter by @milas in https://github.com/docker/docker-py/pull/3185
- chore: add changelog for 7.0.0 by @milas in https://github.com/docker/docker-py/pull/3186
- chore: remove support for Python 3.7 by @milas in https://github.com/docker/docker-py/pull/3187
- chore: update MAINTAINERS and remove CODEOWNERS by @milas in https://github.com/docker/docker-py/pull/3188
New Contributors
- @Longin-Yu made their first contribution in https://github.com/docker/docker-py/pull/3130
- @mndeveci made their first contribution in https://github.com/docker/docker-py/pull/3156
- @VincentLeeMax made their first contribution in https://github.com/docker/docker-py/pull/3159
- @akerouanton made their first contribution in https://github.com/docker/docker-py/pull/3169
- @TurnrDev made their first contribution in https://github.com/docker/docker-py/pull/3147
Full Changelog: https://github.com/docker/docker-py/compare/6.1.3...7.0.0b1
- Python
Published by milas over 2 years ago
docker-py - 6.1.3
π Bugfixes
- Fix eventlet compatibility (#3132)
What's Changed
- fix: eventlet compatibility by @tito in https://github.com/docker/docker-py/pull/3132
New Contributors
- @tito made their first contribution in https://github.com/docker/docker-py/pull/3132
Full Changelog: https://github.com/docker/docker-py/compare/6.1.2...6.1.3
- Python
Published by github-actions[bot] about 3 years ago
docker-py - 6.1.2
π Bugfixes
- Fix for socket timeouts on long
docker execcalls (#3125) - Respect
timeoutparam on Windows (#3112)
Full Changelog
- Use windows api to honour timeouts (fixes #3111) by @ImogenBits in https://github.com/docker/docker-py/pull/3112
- Avoid socket timeouts when executing commands by @loicleyendecker in https://github.com/docker/docker-py/pull/3125
- docs: update changelog by @milas in https://github.com/docker/docker-py/pull/3127
New Contributors
- @ImogenBits made their first contribution in https://github.com/docker/docker-py/pull/3112
Full Changelog: https://github.com/docker/docker-py/compare/6.1.1...6.1.2
- Python
Published by github-actions[bot] about 3 years ago
docker-py - 6.1.1
βΉοΈ Upgrade Notes (6.1.x)
- Errors are no longer returned during client initialization if the credential helper cannot be found. A warning will be emitted instead, and an error is returned if the credential helper is used.
π Bugfixes
- Fix
containers.stats()hanging withstream=True - Correct return type in docs for
containers.diff()method
What's Changed
- api: update return type of
diffmethod by @john-b-yang in https://github.com/docker/docker-py/pull/3115 - Fix container.stats infinite blocking on stream mode by @RazCrimson in https://github.com/docker/docker-py/pull/3120
New Contributors
- @john-b-yang made their first contribution in https://github.com/docker/docker-py/pull/3115
- @RazCrimson made their first contribution in https://github.com/docker/docker-py/pull/3120
Full Changelog: https://github.com/docker/docker-py/compare/6.1.0...6.1.1
- Python
Published by github-actions[bot] about 3 years ago
docker-py - 6.1.0
βΉοΈ Upgrade Notes
- Errors are no longer returned during client initialization if the credential helper cannot be found. A warning will be emitted instead, and an error is returned if the credential helper is used.
β¨ Features
- Python 3.11 support
- Use
poll()instead ofselect()on non-Windows platforms - New API fields
network_driver_opton container run / createone-shoton container statsstatuson services list
π Bugfixes
- Support for requests 2.29.0+ and urllib3 2.x
- Do not strip characters from volume names
- Fix connection leak on
container.exec_*operations - Fix errors closing named pipes on Windows
What's Changed
- Add support for Python 3.11 by @hugovk in https://github.com/docker/docker-py/pull/3064
- Avoid stripping characters in volume names by @loicleyendecker in https://github.com/docker/docker-py/pull/3073
- docs: fix wrong command syntax in code annotation by @serieznyi in https://github.com/docker/docker-py/pull/3081
- build(deps): Bump setuptools from 63.2.0 to 65.5.1 by @dependabot in https://github.com/docker/docker-py/pull/3082
- fix(store): warn on init instead of throw by @nomagick in https://github.com/docker/docker-py/pull/3080
- exec: fix file handle leak with container.exec_* APIs by @Lekensteyn in https://github.com/docker/docker-py/pull/2320
- Add
network_driver_optto client.containers run and create by @Skazza94 in https://github.com/docker/docker-py/pull/3083 - Add
one-shotto container APIstatsby @aroxby-wayscript in https://github.com/docker/docker-py/pull/3089 - Add
statusparameter to services list API by @lorinbucher in https://github.com/docker/docker-py/pull/3093 - socket: fix for errors on pipe close in Windows by @milas in https://github.com/docker/docker-py/pull/3099
- put_archive: note the data may also be a stream by @akx in https://github.com/docker/docker-py/pull/2478
- Use poll() instead of select(), unless Windows. by @I-question-this in https://github.com/docker/docker-py/pull/2865
- Make compatible with requests 2.29.0 and urllib3 2.0 by @felixfontein in https://github.com/docker/docker-py/pull/3116
New Contributors
- @loicleyendecker made their first contribution in https://github.com/docker/docker-py/pull/3073
- @serieznyi made their first contribution in https://github.com/docker/docker-py/pull/3081
- @nomagick made their first contribution in https://github.com/docker/docker-py/pull/3080
- @Lekensteyn made their first contribution in https://github.com/docker/docker-py/pull/2320
- @aroxby-wayscript made their first contribution in https://github.com/docker/docker-py/pull/3089
- @lorinbucher made their first contribution in https://github.com/docker/docker-py/pull/3093
- @akx made their first contribution in https://github.com/docker/docker-py/pull/2478
- @I-question-this made their first contribution in https://github.com/docker/docker-py/pull/2865
Full Changelog: https://github.com/docker/docker-py/compare/6.0.1...6.1.0
- Python
Published by github-actions[bot] about 3 years ago
docker-py - 6.0.1
β οΈ Notice
This version is not compatible with requests 2.29+ or urllib3 2.x.
Either add requests < 2.29 and urllib3 < 2 to your requirements or upgrade to to the latest docker-py release.
π Bugfixes
- Fix for
The pipe has been endederrors on Windows (#3056) - Support floats for timestamps in Docker logs (
since/until) (#3031)
What's Changed
- docs: install package in ReadTheDocs build by @milas in https://github.com/docker/docker-py/pull/3032
- Use latest stable syntax for Dockerfiles by @thaJeztah in https://github.com/docker/docker-py/pull/3035
- feat: add support for floats to docker logs params since / until sinc⦠by @ArchiMoebius in https://github.com/docker/docker-py/pull/3031
- Change prune test to use anonymous volumes by @cpuguy83 in https://github.com/docker/docker-py/pull/3051
- socket: handle npipe close by @nicks in https://github.com/docker/docker-py/pull/3056
New Contributors
- @ArchiMoebius made their first contribution in https://github.com/docker/docker-py/pull/3031
- @nicks made their first contribution in https://github.com/docker/docker-py/pull/3056
Full Changelog: https://github.com/docker/docker-py/compare/6.0.0...6.0.1
- Python
Published by github-actions[bot] over 3 years ago
docker-py - 6.0.0
βΉοΈ Upgrade Notes
- Minimum supported Python version is 3.7+
- When installing with pip, the
docker[tls]extra is deprecated and a no-op, usedockerfor same functionality (TLS support is always available now) - Native Python SSH client (used by default /
use_ssh_client=False) will now reject unknown host keys withparamiko.ssh_exception.SSHException - Short IDs are now 12 characters instead of 10 characters (same as Docker CLI)
- Version metadata is now exposed as
__version__
β¨ Features
- Python 3.10 support
- Automatically negotiate most secure TLS version
- Add
platform(e.g.linux/amd64,darwin/arm64) to container create & run - Add support for
GlobalJobandReplicatedJobsfor Swarm - Add
remove()method onImage - Add
forceparam todisable()onPlugin
π Bugfixes
- Fix install issues on Windows related to
pywin32 - Do not accept unknown SSH host keys in native Python SSH mode
- Use 12 character short IDs for consistency with Docker CLI
- Ignore trailing whitespace in
.dockerignorefiles - Fix IPv6 host parsing when explicit port specified
- Fix
ProxyCommandoption for SSH connections - Do not spawn extra subshell when launching external SSH client
- Improve exception semantics to preserve context
- Documentation improvements (formatting, examples, typos, missing params)
π§ Miscellaneous
- Upgrade dependencies in
requirements.txtto latest versions - Remove extraneous transitive dependencies
- Eliminate usages of deprecated functions/methods
- Test suite reliability improvements
- GitHub Actions workflows for linting, unit tests, integration tests, and publishing releases
Changelog
- Update changelog for 5.0.3 by @aiordache in https://github.com/docker/docker-py/pull/2897
- Add support for Python 3.10 by @hugovk in https://github.com/docker/docker-py/pull/2898
- Bump paramiko from 2.8.0 to 2.10.1 by @dependabot in https://github.com/docker/docker-py/pull/2974
- deps: upgrade pywin32 & relax version constraint by @milas in https://github.com/docker/docker-py/pull/3004
- ci: remove Python 3.6 and add 3.11 pre-releases by @milas in https://github.com/docker/docker-py/pull/3005
- utils: fix IPv6 address w/ port parsing by @milas in https://github.com/docker/docker-py/pull/3006
- testcreatewithdevicecgroup_rules: don't check devices.list by @thaJeztah in https://github.com/docker/docker-py/pull/2940
- Fix exception semantics in raisefor_status by @kmaork in https://github.com/docker/docker-py/pull/2954
- tls: use auto-negotiated highest version by @milas in https://github.com/docker/docker-py/pull/3007
- sshcon: remove use of self.ssh_conf by @glicht in https://github.com/docker/docker-py/pull/2993
- Use
packaginginstead ofdistutilsforVersionby @FrancescoCasalegno in https://github.com/docker/docker-py/pull/2931 - test: fix a couple flaky/broken tests by @milas in https://github.com/docker/docker-py/pull/3008
- ci: add flake8 job by @milas in https://github.com/docker/docker-py/pull/3009
- Fixes and improvements by @kinday in https://github.com/docker/docker-py/pull/2947
- deps: test on Python 3.10 by default by @milas in https://github.com/docker/docker-py/pull/3010
- deps: remove backports.sslmatchhostname by @milas in https://github.com/docker/docker-py/pull/3011
- Fix: fix CVE-2020-28243 by @errorcode7 in https://github.com/docker/docker-py/pull/2910
- Fix for CWE-295: Improper Certificate Validation by @avnes in https://github.com/docker/docker-py/pull/2932
- Set daemon attribute instead of using setDaemon method that was deprecated in Python 3.10 by @tirkarthi in https://github.com/docker/docker-py/pull/2823
- Remove unnecessary pass statements by @vilhelmprytz in https://github.com/docker/docker-py/pull/2541
- ci: run SSH integration tests by @milas in https://github.com/docker/docker-py/pull/3012
- docs: fix simple typo, containe -> container by @timgates42 in https://github.com/docker/docker-py/pull/3015
- ci: bump version to 6.0.0-dev by @milas in https://github.com/docker/docker-py/pull/3013
- deps: upgrade & remove unnecessary dependencies by @milas in https://github.com/docker/docker-py/pull/3014
- lint: fix line length violation by @milas in https://github.com/docker/docker-py/pull/3017
- docs: fix markdown rendering by @milas in https://github.com/docker/docker-py/pull/3020
- Return 12 character short_ids by @benfasoli in https://github.com/docker/docker-py/pull/2862
- api: preserve cause when re-raising error by @milas in https://github.com/docker/docker-py/pull/3023
- deps: upgrade websocket-client to latest by @milas in https://github.com/docker/docker-py/pull/3022
- Add platform parameter for create_container() by @felixfontein in https://github.com/docker/docker-py/pull/2927
- Support cgroupns option in containers.run/containers.create by @david0 in https://github.com/docker/docker-py/pull/2930
- Prevent pip cache in Docker image to save image size by @PeterDaveHello in https://github.com/docker/docker-py/pull/2828
- Update: allow "force" parameter in plugin.disable() by @till in https://github.com/docker/docker-py/pull/2843
- Fix: Issue #2832 Allowing Rollback Config Arg for Services by @ercildoune in https://github.com/docker/docker-py/pull/2917
- model: add remove() to Image by @milas in https://github.com/docker/docker-py/pull/3026
- fix(dockerignore): trim trailing whitespace by @kalioz in https://github.com/docker/docker-py/pull/2733
- Fix TLS server check example to actually verify by @scop in https://github.com/docker/docker-py/pull/2574
- Clarify TLSConfig verify parameter docs by @scop in https://github.com/docker/docker-py/pull/2573
- Add healthcheck doc for container.run by @JanoschDeurer in https://github.com/docker/docker-py/pull/2595
- Fix image save example by @hristog in https://github.com/docker/docker-py/pull/2570
- Changed a few words to be more clear by @InnovativeInventor in https://github.com/docker/docker-py/pull/2489
- docs: fix RollbackConfig/Order values by @milas in https://github.com/docker/docker-py/pull/3027
- ci: add workflow for releases by @milas in https://github.com/docker/docker-py/pull/3018
- remove duplicate 'on' in comment by @thomasgassmann in https://github.com/docker/docker-py/pull/2370
- Add
gzipdocumentation toBuildApiMixinby @SauravMaheshkar in https://github.com/docker/docker-py/pull/2929 - Use
preexec_funcalways by @q0w in https://github.com/docker/docker-py/pull/2920 - Remove docker.credentials.utils.find_executable by @n1ngu in https://github.com/docker/docker-py/pull/3028
- Support
global-jobandreplicated-jobmodes in Docker Swarm by @kinday in https://github.com/docker/docker-py/pull/3016 - docs: add changelog for 6.0.0 by @milas in https://github.com/docker/docker-py/pull/3019
- Add sysctl support for docker swarm services by @Aadenei in https://github.com/docker/docker-py/pull/3029
- Connect with mac address by @YuviGold in https://github.com/docker/docker-py/pull/2481
- docs/css: remove hyphens in literals by @jrabbit in https://github.com/docker/docker-py/pull/2452
- Add swarm support for DataPathPort by @dexteradeus in https://github.com/docker/docker-py/pull/2987
- test: add additional tests for cgroupns option by @milas in https://github.com/docker/docker-py/pull/3024
New Contributors
- @hugovk made their first contribution in https://github.com/docker/docker-py/pull/2898
- @milas made their first contribution in https://github.com/docker/docker-py/pull/3004
- @kmaork made their first contribution in https://github.com/docker/docker-py/pull/2954
- @glicht made their first contribution in https://github.com/docker/docker-py/pull/2993
- @FrancescoCasalegno made their first contribution in https://github.com/docker/docker-py/pull/2931
- @kinday made their first contribution in https://github.com/docker/docker-py/pull/2947
- @errorcode7 made their first contribution in https://github.com/docker/docker-py/pull/2910
- @avnes made their first contribution in https://github.com/docker/docker-py/pull/2932
- @tirkarthi made their first contribution in https://github.com/docker/docker-py/pull/2823
- @vilhelmprytz made their first contribution in https://github.com/docker/docker-py/pull/2541
- @timgates42 made their first contribution in https://github.com/docker/docker-py/pull/3015
- @benfasoli made their first contribution in https://github.com/docker/docker-py/pull/2862
- @felixfontein made their first contribution in https://github.com/docker/docker-py/pull/2927
- @david0 made their first contribution in https://github.com/docker/docker-py/pull/2930
- @PeterDaveHello made their first contribution in https://github.com/docker/docker-py/pull/2828
- @till made their first contribution in https://github.com/docker/docker-py/pull/2843
- @ercildoune made their first contribution in https://github.com/docker/docker-py/pull/2917
- @kalioz made their first contribution in https://github.com/docker/docker-py/pull/2733
- @JanoschDeurer made their first contribution in https://github.com/docker/docker-py/pull/2595
- @hristog made their first contribution in https://github.com/docker/docker-py/pull/2570
- @InnovativeInventor made their first contribution in https://github.com/docker/docker-py/pull/2489
- @thomasgassmann made their first contribution in https://github.com/docker/docker-py/pull/2370
- @SauravMaheshkar made their first contribution in https://github.com/docker/docker-py/pull/2929
- @q0w made their first contribution in https://github.com/docker/docker-py/pull/2920
- @n1ngu made their first contribution in https://github.com/docker/docker-py/pull/3028
- @Aadenei made their first contribution in https://github.com/docker/docker-py/pull/3029
- @jrabbit made their first contribution in https://github.com/docker/docker-py/pull/2452
- @dexteradeus made their first contribution in https://github.com/docker/docker-py/pull/2987
Full Changelog: https://github.com/docker/docker-py/compare/5.0.3...6.0.0
- Python
Published by github-actions[bot] almost 4 years ago
docker-py - 6.0.0b2
What's Changed
- remove duplicate 'on' in comment by @thomasgassmann in https://github.com/docker/docker-py/pull/2370
- Add
gzipdocumentation toBuildApiMixinby @SauravMaheshkar in https://github.com/docker/docker-py/pull/2929 - Use
preexec_funcalways by @q0w in https://github.com/docker/docker-py/pull/2920 - Remove docker.credentials.utils.find_executable by @n1ngu in https://github.com/docker/docker-py/pull/3028
- Support
global-jobandreplicated-jobmodes in Docker Swarm by @kinday in https://github.com/docker/docker-py/pull/3016 - docs: add changelog for 6.0.0 by @milas in https://github.com/docker/docker-py/pull/3019
New Contributors
- @thomasgassmann made their first contribution in https://github.com/docker/docker-py/pull/2370
- @SauravMaheshkar made their first contribution in https://github.com/docker/docker-py/pull/2929
- @q0w made their first contribution in https://github.com/docker/docker-py/pull/2920
- @n1ngu made their first contribution in https://github.com/docker/docker-py/pull/3028
Full Changelog: https://github.com/docker/docker-py/compare/6.0.0b1...6.0.0b2
- Python
Published by github-actions[bot] almost 4 years ago
docker-py - 6.0.0b1
What's Changed
- Update changelog for 5.0.3 by @aiordache in https://github.com/docker/docker-py/pull/2897
- Add support for Python 3.10 by @hugovk in https://github.com/docker/docker-py/pull/2898
- Bump paramiko from 2.8.0 to 2.10.1 by @dependabot in https://github.com/docker/docker-py/pull/2974
- deps: upgrade pywin32 & relax version constraint by @milas in https://github.com/docker/docker-py/pull/3004
- ci: remove Python 3.6 and add 3.11 pre-releases by @milas in https://github.com/docker/docker-py/pull/3005
- utils: fix IPv6 address w/ port parsing by @milas in https://github.com/docker/docker-py/pull/3006
- testcreatewithdevicecgroup_rules: don't check devices.list by @thaJeztah in https://github.com/docker/docker-py/pull/2940
- Fix exception semantics in raisefor_status by @kmaork in https://github.com/docker/docker-py/pull/2954
- tls: use auto-negotiated highest version by @milas in https://github.com/docker/docker-py/pull/3007
- sshcon: remove use of self.ssh_conf by @glicht in https://github.com/docker/docker-py/pull/2993
- Use
packaginginstead ofdistutilsforVersionby @FrancescoCasalegno in https://github.com/docker/docker-py/pull/2931 - test: fix a couple flaky/broken tests by @milas in https://github.com/docker/docker-py/pull/3008
- ci: add flake8 job by @milas in https://github.com/docker/docker-py/pull/3009
- Fixes and improvements by @kinday in https://github.com/docker/docker-py/pull/2947
- deps: test on Python 3.10 by default by @milas in https://github.com/docker/docker-py/pull/3010
- deps: remove backports.sslmatchhostname by @milas in https://github.com/docker/docker-py/pull/3011
- Fix: fix CVE-2020-28243 by @errorcode7 in https://github.com/docker/docker-py/pull/2910
- Fix for CWE-295: Improper Certificate Validation by @avnes in https://github.com/docker/docker-py/pull/2932
- Set daemon attribute instead of using setDaemon method that was deprecated in Python 3.10 by @tirkarthi in https://github.com/docker/docker-py/pull/2823
- Remove unnecessary pass statements by @vilhelmprytz in https://github.com/docker/docker-py/pull/2541
- ci: run SSH integration tests by @milas in https://github.com/docker/docker-py/pull/3012
- docs: fix simple typo, containe -> container by @timgates42 in https://github.com/docker/docker-py/pull/3015
- ci: bump version to 6.0.0-dev by @milas in https://github.com/docker/docker-py/pull/3013
- deps: upgrade & remove unnecessary dependencies by @milas in https://github.com/docker/docker-py/pull/3014
- lint: fix line length violation by @milas in https://github.com/docker/docker-py/pull/3017
- docs: fix markdown rendering by @milas in https://github.com/docker/docker-py/pull/3020
- Return 12 character short_ids by @benfasoli in https://github.com/docker/docker-py/pull/2862
- api: preserve cause when re-raising error by @milas in https://github.com/docker/docker-py/pull/3023
- deps: upgrade websocket-client to latest by @milas in https://github.com/docker/docker-py/pull/3022
- Add platform parameter for create_container() by @felixfontein in https://github.com/docker/docker-py/pull/2927
- Support cgroupns option in containers.run/containers.create by @david0 in https://github.com/docker/docker-py/pull/2930
- Prevent pip cache in Docker image to save image size by @PeterDaveHello in https://github.com/docker/docker-py/pull/2828
- Update: allow "force" parameter in plugin.disable() by @till in https://github.com/docker/docker-py/pull/2843
- Fix: Issue #2832 Allowing Rollback Config Arg for Services by @ercildoune in https://github.com/docker/docker-py/pull/2917
- model: add remove() to Image by @milas in https://github.com/docker/docker-py/pull/3026
- fix(dockerignore): trim trailing whitespace by @kalioz in https://github.com/docker/docker-py/pull/2733
- Fix TLS server check example to actually verify by @scop in https://github.com/docker/docker-py/pull/2574
- Clarify TLSConfig verify parameter docs by @scop in https://github.com/docker/docker-py/pull/2573
- Add healthcheck doc for container.run by @JanoschDeurer in https://github.com/docker/docker-py/pull/2595
- Fix image save example by @hristog in https://github.com/docker/docker-py/pull/2570
- Changed a few words to be more clear by @InnovativeInventor in https://github.com/docker/docker-py/pull/2489
- docs: fix RollbackConfig/Order values by @milas in https://github.com/docker/docker-py/pull/3027
- ci: add workflow for releases by @milas in https://github.com/docker/docker-py/pull/3018
New Contributors
- @hugovk made their first contribution in https://github.com/docker/docker-py/pull/2898
- @milas made their first contribution in https://github.com/docker/docker-py/pull/3004
- @kmaork made their first contribution in https://github.com/docker/docker-py/pull/2954
- @glicht made their first contribution in https://github.com/docker/docker-py/pull/2993
- @FrancescoCasalegno made their first contribution in https://github.com/docker/docker-py/pull/2931
- @kinday made their first contribution in https://github.com/docker/docker-py/pull/2947
- @errorcode7 made their first contribution in https://github.com/docker/docker-py/pull/2910
- @avnes made their first contribution in https://github.com/docker/docker-py/pull/2932
- @tirkarthi made their first contribution in https://github.com/docker/docker-py/pull/2823
- @vilhelmprytz made their first contribution in https://github.com/docker/docker-py/pull/2541
- @timgates42 made their first contribution in https://github.com/docker/docker-py/pull/3015
- @benfasoli made their first contribution in https://github.com/docker/docker-py/pull/2862
- @felixfontein made their first contribution in https://github.com/docker/docker-py/pull/2927
- @david0 made their first contribution in https://github.com/docker/docker-py/pull/2930
- @PeterDaveHello made their first contribution in https://github.com/docker/docker-py/pull/2828
- @till made their first contribution in https://github.com/docker/docker-py/pull/2843
- @ercildoune made their first contribution in https://github.com/docker/docker-py/pull/2917
- @kalioz made their first contribution in https://github.com/docker/docker-py/pull/2733
- @JanoschDeurer made their first contribution in https://github.com/docker/docker-py/pull/2595
- @hristog made their first contribution in https://github.com/docker/docker-py/pull/2570
- @InnovativeInventor made their first contribution in https://github.com/docker/docker-py/pull/2489
Full Changelog: https://github.com/docker/docker-py/compare/5.0.3...6.0.0b1
- Python
Published by github-actions[bot] almost 4 years ago
docker-py - 5.0.3
List of PRs / issues for this release
Features
- Add
cap_addandcap_dropparameters to service create and ContainerSpec - Add
templatingparameter to config create
Bugfixes
- Fix getting a read timeout for logs/attach with a tty and slow output
Miscellaneous
- Fix documentation examples
- Python
Published by aiordache over 4 years ago
docker-py - 5.0.2
List of PRs / issues for this release
Bugfixes
- Fix
disable_bufferingregression
- Python
Published by aiordache almost 5 years ago
docker-py - 5.0.1
List of PRs / issues for this release
Bugfixes
- Bring back support for ssh identity file
- Cleanup remaining python-2 dependencies
- Fix image save example in docs
Miscellaneous
- Bump urllib3 to 1.26.5
- Bump requests to 2.26.0
- Python
Published by aiordache almost 5 years ago
docker-py - 5.0.0
List of PRs / issues for this release
Breaking changes
- Remove support for Python 2.7
- Make Python 3.6 the minimum version supported
Features
- Add
limitparameter to image search endpoint
Bugfixes
- Fix
KeyErrorexception on secret create - Verify TLS keys loaded from docker contexts
- Update PORT_SPEC regex to allow square brackets for IPv6 addresses
- Fix containers and images documentation examples
- Python
Published by aiordache about 5 years ago
docker-py - 4.4.4
Warning
This is the last release with support for Python 2.7 and 3.5
List of PRs / issues for this release
Bugfixes
- Remove
LD_LIBRARY_PATHandSSL_CERT_FILEenvironment variables when shelling out to the ssh client
- Python
Published by aiordache over 5 years ago
docker-py - 4.4.3
List of PRs / issues for this release
Features
- Add support for docker.types.Placement.MaxReplicas
Bugfixes
- Fix SSH port parsing when shelling out to the ssh client
- Python
Published by aiordache over 5 years ago
docker-py - 4.4.2
List of PRs / issues for this release
Bugfixes
- Fix SSH connection bug where the hostname was incorrectly trimmed and the error was hidden
- Fix docs example
Miscellaneous
- Add Python3.8 and 3.9 in setup.py classifier list
- Python
Published by aiordache over 5 years ago
docker-py - 4.4.1
List of PRs / issues for this release
Bugfixes
- Avoid setting unsupported parameter for subprocess.Popen on Windows
- Python
Published by ulyssessouza over 5 years ago
docker-py - 4.4.0
List of PRs / issues for this release
Features
- Add an alternative SSH connection to the paramiko one, based on shelling out to the SSh client. Similar to the behaviour of Docker cli
- Default image tag to
latestonpull
Bugfixes
- Fix plugin model upgrade
- Fix examples URL in ulimits
Miscellaneous
- Improve exception messages for server and client errors
- Bump cryptography from 2.3 to 3.2
- Python
Published by aiordache over 5 years ago
docker-py - 4.3.1
List of PRs / issues for this release
Miscellaneous
- Set default API version to
auto - Fix conversion to bytes for
float - Support OpenSSH
identityfileoption
- Python
Published by aiordache almost 6 years ago
docker-py - 4.3.0
Changelog
Features
- Add
DeviceRequesttype to expose host resources such as GPUs - Add support for
DriverOptsin EndpointConfig - Disable compression by default when using container.get_archive method
Miscellaneous
- Update default API version to v1.39
- Update test engine version to 19.03.12
- Python
Published by aiordache almost 6 years ago
docker-py - 4.2.2
4.2.2
List of PRs / issues for this release
Bugfixes
- Fix context load for non-docker endpoints
- Python
Published by ulyssessouza almost 6 years ago
docker-py - 4.2.1
List of PRs / issues for this release
Features
- Add option on when to use
tlson Context constructor - Make context orchestrator field optional
- Python
Published by ulyssessouza about 6 years ago
docker-py - 4.2.0
List of PRs / issues for this release
Bugfixes
- Fix
win32pipe.WaitNamedPipethrow exception in Windows containers - Use
Hostname,Username,PortandProxyCommandsettings from.ssh/configwhen on SSH - Set host key policy for ssh transport to
paramiko.WarningPolicy() - Set logging level of
paramikoto warn
Features
- Add support for docker contexts through
docker.ContextAPI
- Python
Published by ulyssessouza over 6 years ago
docker-py - 4.1.0
List of PRs / issues for this release
Bugfixes
- Correct
INDEX_URLlogic in build.py setauth_headers - Fix for empty auth keys in config.json
Features
- Add
NetworkAttachmentConfigfor service create/update
Miscellaneous
- Bump pytest to 4.3.1
- Adjust
--platformtests for changes in docker engine - Update credentials-helpers to v0.6.3
- Python
Published by chris-crone over 6 years ago
docker-py - 4.0.2
List of PRs / issues for this release
Bugfixes
- Unified the way
HealthCheckis created/configured
Miscellaneous
- Bumped version of websocket-client
- Python
Published by rumpl almost 7 years ago
docker-py - 4.0.1
List of PRs / issues for this release
Bugfixes
- Fixed an obsolete import in the
credentialssubpackage that caused import errors in Python 3.7
Miscellaneous
- Docs building has been repaired
- Python
Published by shin- about 7 years ago
docker-py - 4.0.0
List of PRs / issues for this release
Breaking changes
- Support for Python 3.3 and Python 3.4 has been dropped
APIClient.update_service,APIClient.init_swarm, andDockerClient.swarm.initnow return adictfrom the API's response body- In
APIClient.buildandDockerClient.images.build, theuse_config_proxyparameter now defaults to True init_pathis no longer a valid parameter forHostConfig
Features
- It is now possible to provide
SCTPports for port mappings ContainerSpecs now support theinitparameterDockerClient.swarm.initandAPIClient.init_swarmnow support thedata_path_addrparameterAPIClient.update_swarmandDockerClient.swarm.updatenow support therotate_manager_unlock_keyparameterAPIClient.update_servicereturns the API's response body as adictAPIClient.init_swarm, andDockerClient.swarm.initnow return the API's response body as adict
Bugfixes
- Fixed
PlacementPreferenceinstances to produce a valid API type - Fixed a bug where not setting a value for
buildargsinbuildcould cause the library to attempt accessing attributes of aNonevalue - Fixed a bug where setting the
volume_driverparameter inDockerClient.containers.createwould result in an error APIClient.inspect_distributionnow correctly sets the authentication headers on the request, allowing it to be used with private repositories This change also applies toDockerClient.get_registry_data
- Python
Published by shin- about 7 years ago
docker-py - 3.7.2
List of PRs / issues for this release
Bugfixes
- Fix baseurl to keep TCP protocol on utils.py by letting the responsability of changing the
protocol to `parsehost
afterwards, lettingbase_url` with the original value. - XFAIL testattachstreamandcancel on TLS
- Python
Published by ulyssessouza about 7 years ago
docker-py - 3.7.1
List of PRs / issues for this release
Bugfixes
- Set a different default number (which is now 9) for SSH pools
- Adds a BaseHTTPAdapter with a close method to ensure that the pools is clean on close()
- Makes SSHHTTPAdapter reopen a closed connection when needed like the others
- Python
Published by ulyssessouza about 7 years ago
docker-py - 3.7.0
List of PRs / issues for this release
Features
- Added support for multiplexed streams (for
attachandexec_start). Learn more at https://docker-py.readthedocs.io/en/stable/user_guides/multiplex.html - Added the
use_config_proxyparameter to the following methods:APIClient.build,APIClient.create_container,DockerClient.images.buildandDockerClient.containers.run(Falseby default). This parameter will becomeTrueby default in the 4.0.0 release. - Placement preferences for Swarm services are better validated on the client and documentation has been updated accordingly
Bugfixes
- Fixed a bug where credential stores weren't queried for relevant registry
credentials with certain variations of the
config.jsonfile. DockerClient.swarm.initnow returns a boolean value as advertised.
- Python
Published by ulyssessouza over 7 years ago
docker-py - 3.6.0
List of PRs / issues for this release
Features
- Added support for connecting to the Docker Engine over SSH. Additional
dependencies for this feature can be installed with
pip install "docker[ssh]" - Added support for the
namedparameter inImage.save, which may be used to ensure the resulting tarball retains the image's name on save.
Bugfixes
- Fixed a bug where builds on Windows with a context path using the
\\?\prefix would fail with some relative Dockerfile paths. - Fixed an issue where pulls made with the
DockerClientwould fail when setting thestreamparameter toTrue.
Miscellaneous
- The minimum requirement for the
requestsdependency has been bumped to 2.20.0
- Python
Published by shin- over 7 years ago
docker-py - 3.5.1
List of PRs / issues for this release
Miscellaneous
- Bumped version of
pyOpenSSLinrequirements.txtandsetup.pyto prevent installation of a vulnerable version - Docs fixes
- Python
Published by shin- over 7 years ago
docker-py - 3.5.0
List of PRs / issues for this release
Deprecation warning
- Support for Python 3.3 will be dropped in the 4.0.0 release
Features
- Updated dependencies to ensure support for Python 3.7 environments
- Added support for the
uts_modeparameter inHostConfig - The
UpdateConfigconstructor now allowsrollbackas a valid value forfailure_action - Added support for
rollback_configinAPIClient.create_service,APIClient.update_service,DockerClient.services.createandService.update.
Bugfixes
- Credential helpers are now properly leveraged by the
buildmethod - Fixed a bug that caused placement preferences to be ignored when provided
to
DockerClient.services.create - Fixed a bug that caused a
uservalue of0to be ignored inAPIClient.create_containerandDockerClient.containers.create
- Python
Published by shin- almost 8 years ago
docker-py - 3.4.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug that caused auth values in config files written using one of the legacy formats to be ignored
- Fixed issues with handling of double-wildcard
**patterns in.dockerignorefiles
- Python
Published by shin- almost 8 years ago
docker-py - 3.4.0
List of PRs / issues for this release
Features
- The
APIClientandDockerClientconstructors now accept acredstore_envparameter. When set, values in this dictionary are added to the environment when executing the credential store process.
Bugfixes
DockerClient.networks.prunenow properly returns the operation's result- Fixed a bug that caused custom Dockerfile paths in a subfolder of the build context to be invalidated, preventing these builds from working
- The
plugin_privilegesmethod can now be called for plugins requiring authentication to access - Fixed a bug that caused attempts to read a data stream over an unsecured TCP socket to crash on Windows clients
- Fixed a bug where using the
read_onlyparameter when creating a service using theDockerClientwas being ignored - Fixed an issue where
Service.scalewould not properly update the service's mode, causing the operation to fail silently
- Python
Published by shin- almost 8 years ago
docker-py - 3.3.0
List of PRs / issues for this release
Features
- Added support for
prune_buildsinAPIClientandDockerClient.images - Added support for
ignore_removedparameter inDockerClient.containers.list
Bugfixes
- Fixed an issue that caused builds to fail when an in-context Dockerfile would be specified using its absolute path
- Installation with pip 10.0.0 and above no longer fails
- Connection timeout for
stopandrestartnow gets properly adjusted to allow for the operation to finish in the specified time - Improved docker credential store support on Windows
- Python
Published by shin- about 8 years ago
docker-py - 3.2.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug with builds not properly identifying Dockerfile paths relative to the build context
- Fixed an issue where builds would raise a
ValueErrorwhen attempting to build with a Dockerfile on a different Windows drive.
- Python
Published by shin- about 8 years ago
docker-py - 3.2.0
List of PRs / issues for this release
Features
- Generators returned by
attach(),logs()andevents()now have acancel()method to let consumers stop the iteration client-side. build()methods can now handle Dockerfiles supplied outside of the build context.- Added
sparseargument toDockerClient.containers.list() - Added
isolationparameter tobuild()methods. - Added
close()method toDockerClient - Added
APIClient.inspect_distribution()method andDockerClient.images.get_registry_data()- The latter returns an instance of the new
RegistryDataclass
- The latter returns an instance of the new
- Python
Published by shin- about 8 years ago
docker-py - 3.1.4
List of PRs / issues for this release
Bugfixes
- Fixed a bug where build contexts containing directory symlinks would produce invalid tar archives
- Python
Published by shin- about 8 years ago
docker-py - 3.1.3
List of PRs / issues for this release
Bugfixes
- Fixed a bug that led to a Dockerfile not being included in the build context
in some situations when the Dockerfile's path was prefixed with
./ - Regenerated invalid wheel package
- Python
Published by shin- about 8 years ago
docker-py - 3.1.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug that caused costly DNS lookups on Mac OSX when connecting to the engine through UNIX socket
- Fixed a bug that caused
.dockerignorecomments to be read as exclusion patterns
- Python
Published by shin- about 8 years ago
docker-py - 3.1.0
List of PRs / issues for this release
Features
- Added support for
device_cgroup_rulesin host config - Added support for
generic_resourceswhen creating aResourcesobject. - Added support for a configurable
chunk_sizeparameter inexport,get_archiveandget_image(Image.save) - Added a
force_updatemethod to theServiceclass. - In
Service.update, when theforce_updateparameter is set toTrue, the currentforce_updatecounter is incremented by one in the update request.
Bugfixes
- Fixed a bug where authentication through
login()was being ignored if the SDK was configured to use a credential store. - Fixed a bug where download methods would use an absurdly small chunk size, leading to slow data retrieval
- Fixed a bug where using
DockerClient.images.pullto pull an image by digest would lead to an exception being raised. .dockerignorerules should now be respected as defined by the spec, including respect for last-line precedence and proper handling of absolute paths- The
passcredential store is now properly supported.
- Python
Published by shin- over 8 years ago
docker-py - 3.0.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug where
APIClient.logindidn't populate the_auth_configsdictionary properly, causing subsequentpullandpushoperations to fail - Fixed a bug where some build context files were incorrectly recognized as being inaccessible.
- Fixed a bug where files with a negative mtime value would cause errors when included in a build context
- Python
Published by shin- over 8 years ago
docker-py - 3.0.0
List of PRs / issues for this release
Breaking changes
- Support for API version < 1.21 has been removed.
- The following methods have been removed:
APIClient.copyhas been removed. Users should useAPIClient.get_archiveinstead.APIClient.inserthas been removed. Users may useAPIClient.put_archivecombined withAPIClient.committo replicate the method's behavior.utils.ping_registryandutils.pinghave been removed.
- The following parameters have been removed:
streaminAPIClient.buildcpu_shares,cpuset,dns,mem_limit,memswap_limit,volume_driver,volumes_frominAPIClient.create_container. These are all replaced by their equivalent increate_host_configinsecure_registryinAPIClient.login,APIClient.pull,APIClient.push,DockerClient.images.pushandDockerClient.images.pullvizinAPIClient.images
- The following parameters have been renamed:
endpoint_configinAPIClient.create_serviceandAPIClient.update_serviceis nowendpoint_specnameinDockerClient.images.pullis nowrepository
- The return value for the following methods has changed:
APIClient.waitandContainer.waitnow return adictrepresenting the API's response instead of returning the status code directly.DockerClient.images.loadnow returns a list ofImageobjects that have for the images that were loaded, instead of a log stream.Container.exec_runnow returns a tuple of (exit_code, output) instead of just the output.DockerClient.images.buildnow returns a tuple of (image, build_logs) instead of just the image object.APIClient.export,APIClient.get_archiveandAPIClient.get_imagenow return generators streaming the raw binary data from the server's response.- When no tag is provided,
DockerClient.images.pullnow returns a list ofImages associated to the pulled repository instead of just thelatestimage.
Features
- The Docker Python SDK is now officially supported on Python 3.6
- Added
scalemethod to theServicemodel ; this method is a shorthand that callsupdate_servicewith the required number of replicas - Added support for the
platformparameter inAPIClient.build,DockerClient.images.build,APIClient.pullandDockerClient.images.pull - Added support for the
untilparameter inAPIClient.logsandContainer.logs - Added support for the
workdirargument inAPIClient.exec_createandContainer.exec_run - Added support for the
conditionargument inAPIClient.waitandContainer.wait - Users can now specify a publish mode for ports in
EndpointSpecusing the{published_port: (target_port, protocol, publish_mode)}syntax. - Added support for the
isolationparameter inContainerSpec,DockerClient.services.createandService.update APIClient.attach_socket,APIClient.exec_createnow allow specifying adetach_keyscombination. If unspecified, the value from theconfig.jsonfile will be used- TLS connections now default to using the TLSv1.2 protocol when available
Bugfixes
- Fixed a bug where whitespace-only lines in
.dockerignorewould break builds on Windows - Fixed a bug where broken symlinks inside a build context would cause the build to fail
- Fixed a bug where specifying volumes with Windows drives would cause
incorrect parsing in
DockerClient.containers.run - Fixed a bug where the
networksdata provided tocreate_serviceandupdate_servicewould be sent incorrectly to the Engine with API < 1.25 - Pulling all tags from a repository with no
latesttag using theDockerClientwill no longer raise aNotFoundexception
- Python
Published by shin- over 8 years ago
docker-py - 2.7.0
List of PRs / issues for this release
Features
- Added
unlock_swarmandget_unlock_keymethods to theAPIClient.- Added
unlockandget_unlock_keytoDockerClient.swarm.
- Added
- Added a
greedyparameter toDockerClient.networks.list, yielding additional details about the listed networks. - Added
cpu_rt_runtimeandcpu_rt_periodas parameters toAPIClient.create_host_configandDockerClient.containers.run. - Added the
orderargument toUpdateConfig. - Added
fetch_current_spectoAPIClient.update_serviceandService.updatethat will retrieve the current configuration of the service and merge it with the provided parameters to determine the new configuration.
Bugfixes
- Fixed a bug where the
buildmethod tried to include inaccessible files in the context, leading to obscure errors during the build phase (inaccessible files inside the context now raise anIOErrorinstead). - Fixed a bug where the
buildmethod would try to read from FIFOs present inside the build context, causing it to hang. APIClient.stopwill no longer override thestop_timeoutvalue present in the container's configuration.- Fixed a bug preventing removal of networks with names containing a space.
- Fixed a bug where
DockerClient.containers.runwould crash if theauto_removeparameter was set toTrue. - Changed the default value of
listen_addrinjoin_swarmto match the one ininit_swarm. - Fixed a bug where handling HTTP errors with no body would cause an unexpected
exception to be thrown while generating an
APIErrorobject.
- Python
Published by shin- over 8 years ago
docker-py - 2.6.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug on Python 3 installations preventing the use of the
attachandexec_runmethods.
- Python
Published by shin- over 8 years ago
docker-py - 2.6.0
List of PRs / issues for this release
Features
- Added support for
mountsinAPIClient.create_host_configandDockerClient.containers.run - Added support for
consistency,tmpfs_sizeandtmpfs_modewhen creating mount objects. Mountobjects now support thetmpfsandnpipetypes.- Added support for
extra_hostsin thebuildmethods. - Added support for the configs API:
- In
APIClient:create_config,inspect_config,remove_config,configs - In
DockerClient:configs.create,configs.get,configs.listand theConfigmodel. - Added
configsparameter toContainerSpec. Each item in theconfigslist must be adocker.types.ConfigReferenceinstance.
- In
- Added support for the following parameters when creating a
ContainerSpecobject:groups,open_stdin,read_only,stop_signal,helathcheck,hosts,ns_config,configs,privileges. - Added the following configuration classes to
docker.types:ConfigReference,DNSConfig,Privileges,SwarmExternalCA. - Added support for
driverinAPIClient.create_secretandDockerClient.secrets.create. - Added support for
scopeinAPIClient.inspect_networkandAPIClient.create_network, and theirDockerClientequivalent. - Added support for the following parameters to
create_swarm_spec:external_cas,labels,signing_ca_cert,signing_ca_key,ca_force_rotate,autolock_managers,log_driver. These additions also apply toDockerClient.swarm.init. - Added support for
insert_defaultsinAPIClient.inspect_serviceandDockerClient.services.get.
Bugfixes
- Fixed a bug where reading a 0-length frame in log streams would incorrectly interrupt streaming.
- Fixed a bug where the
idmember onSwarmobjects wasn't being populated. - Fixed a bug that would cause some data at the beginning of an upgraded
connection stream (
attach,exec_run) to disappear.
- Python
Published by shin- over 8 years ago
docker-py - 2.5.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug where patterns ending with
**in.dockerignorewould raise an exception - Fixed a bug where using
attachwith thestreamargument set toFalsewould raise an exception
- Python
Published by shin- almost 9 years ago
docker-py - 2.5.0
List of PRs / issues for this release
Features
- Added support for the
squashparameter inAPIClient.buildandDockerClient.images.build. - When using API version 1.23 or above,
load_imagewill now return a generator of progress as JSONdicts. remove_imagenow returns the content of the API's response.
Bugfixes
- Fixed an issue where the
auto_removeparameter inDockerClient.containers.runwas not taken into account. - Fixed a bug where
.dockerignorepatterns starting with a slash were ignored. - Fixed an issue with the handling of
**patterns in.dockerignore - Fixed a bug where building
FROMa private Docker Hub image when not using a cred store would fail. - Fixed a bug where calling
create_serviceorupdate_servicewithtask_templateas adictwould raise an exception. - Fixed the handling of TTY-enabled containers in
attachandexec_run. DockerClient.containers.runwill no longer attempt to stream logs if the log driver doesn't support the operation.
Miscellaneous
- Added extra requirements for better TLS support on some platforms.
These can be installed or required through the
docker[tls]notation.
- Python
Published by shin- almost 9 years ago
docker-py - 2.4.2
List of issues / PRs for this release
Bugfixes
- Fixed a bug where the
split_portutility would raise an exception when passed a non-string argument.
- Python
Published by shin- almost 9 years ago
docker-py - 2.4.0
List of PRs / issues for this release
Features
- Added support for the
targetandnetwork_modeparameters inAPIClient.buildandDockerClient.images.build. - Added support for the
runtimeparameter inAPIClient.create_containerandDockerClient.containers.run. - Added support for the
ingressparameter inAPIClient.create_networkandDockerClient.networks.create. - Added support for
placementconfiguration indocker.types.TaskTemplate. - Added support for
ttyconfiguration indocker.types.ContainerSpec. - Added support for
start_periodconfiguration indocker.types.Healthcheck. - The
credHelperssection in Docker's configuration file is now recognized. - Port specifications including IPv6 endpoints are now supported.
Bugfixes
- Fixed a bug where instantiating a
DockerClientusingdocker.from_envwouldn't correctly set the default timeout value. - Fixed a bug where
DockerClient.secretswas not accessible as a property. - Fixed a bug where
DockerClient.buildwould sometimes return the wrong image. - Fixed a bug where values for
HostConfig.nano_cpusexceeding 2^32 would raise a type error. Image.tagnow properly returnsTruewhen the operation is successful.APIClient.logsandContainer.logsnow raise an exception if thesinceargument uses an unsupported type instead of ignoring the value.- Fixed a bug where some methods would raise a
NullResourceexception when the resource ID was provided using a keyword argument.
Miscellaneous
APIClientinstances can now be pickled.
- Python
Published by shin- almost 9 years ago
docker-py - 2.3.0
2.3.0
List of PRs / issues for this release
Features
- Added support for the following
HostConfigparameters:volume_driver,cpu_count,cpu_percent,nano_cpus,cpuset_mems. - Added support for
verboseparameter inAPIClient.inspect_networkandDockerClient.networks.get. - Added support for the
environmentparameter inAPIClient.exec_createandContainer.exec_run - Added
reload_configmethod toAPIClient, that lets the user reload theconfig.jsondata from disk. - Added
labelsproperty to theImageandContainerclasses. - Added
imageproperty to theContainerclass.
Bugfixes
- Fixed a bug where setting
replicasto zero inServiceModewould not register as a valid entry. - Fixed a bug where
DockerClient.images.buildwould report a failure after a successful build if atagwas set. - Fixed an issue where
DockerClient.images.pullwould fail to return the corresponding image object if atagwas set. - Fixed a bug where a list of
mountsprovided toAPIClient.create_servicewould sometimes be parsed incorrectly. - Fixed a bug where calling
Network.containerswould crash when no containers were associated with the network. - Fixed an issue where
Network.connectandNetwork.disconnectwould not accept some of the documented parameters. - Fixed a bug where the
cpuset_cpusparameter would not be properly set inAPIClient.create_host_config.
Miscellaneous
- The invalid
networksargument inDockerClient.containers.runhas been replaced with a (working) singularnetworkargument.
- Python
Published by shin- about 9 years ago
docker-py - 2.2.1
2.2.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug where the
status_codeattribute ofAPIErrorexceptions would not reflect the expected value. - Fixed an issue where the
eventsmethod would time out unexpectedly if no data was sent by the engine for a given amount of time.
- Python
Published by shin- about 9 years ago
docker-py - 2.2.0
2.2.0
List of PRs / issues for this release
Features
- Default API version has been bumped to
1.26(Engine 1.13.1+) - Upgrade plugin:
- Added the
upgrade_pluginmethod to theAPIClientclass - Added the
upgrademethod to thePluginclass
- Added the
- Service logs:
- Added the
service_logsmethod to theAPIClientclass - Added the
logsmethod to theServiceclass
- Added the
- Added the
dfmethod toAPIClientandDockerClient - Added support for
initandinit_pathparameters inHostConfigandDockerClient.containers.run - Added support for
hostnameparameter inContainerSpecandDockerClient.service.create - Added support for port range to single port in port mappings
(e.g.
8000-8010:80)
Bugfixes
- Fixed a bug where a missing container port in a port mapping would raise
an unexpected
TypeError - Fixed a bug where the
eventsmethod inAPIClientandDockerClientwould not respect custom headers set inconfig.json
- Python
Published by shin- about 9 years ago
docker-py - 2.1.0
2.1.0
List of PRs / issues for this release
Features
- Added the following pruning methods:
- In
APIClient:prune_containers,prune_images,prune_networks,prune_volumes - In
DockerClient:containers.prune,images.prune,networks.prune,volumes.prune
- In
- Added support for the plugins API:
- In
APIClient:configure_plugin,create_plugin,disable_plugin,enable_plugin,inspect_plugin,pull_plugin,plugins,plugin_privileges,push_plugin,remove_plugin - In
DockerClient:plugins.create,plugins.get,plugins.install,plugins.list, and thePluginmodel.
- In
- Added support for the secrets API:
- In
APIClient:create_secret,inspect_secret,remove_secret,secrets - In
DockerClient:secret.create,secret.get,secret.listand theSecretmodel. - Added
secretsparameter toContainerSpec. Each item in thesecretslist must be adocker.types.SecretReferenceinstance.
- In
- Added support for
cache_frominAPIClient.buildandDockerClient.images.build. - Added support for
auto_removeandstorage_optinAPIClient.create_host_configandDockerClient.containers.run - Added support for
stop_timeoutinAPIClient.create_containerandDockerClient.containers.run - Added support for the
forceparameter inAPIClient.remove_volumeandVolume.remove - Added support for
max_failure_ratioandmonitorinUpdateConfig - Added support for
force_updateinTaskTemplate - Made
nameparameter optional inAPIClient.create_volumeandDockerClient.volumes.create
Bugfixes
- Fixed a bug where building from a directory containing socket-type files
would raise an unexpected
AttributeError. - Fixed an issue that was preventing the
DockerClient.swarm.initmethod to take into account arguments passed to it. Image.tagnow correctly returns a boolean value upon completion.- Fixed several issues related to passing
volumesinDockerClient.containers.run - Fixed an issue where
DockerClient.image.buildwouldn't return anImageobject even when the build was successful
- Python
Published by shin- over 9 years ago
docker-py - 2.0.2
2.0.2
List of PRs / issues for this release
Bugfixes
- Installation of the package now fails if the
docker-pypackage is installed in order to prevent obscure naming conflicts when both packages co-exist. - Added missing
filtersparameter toAPIClient.networks. - Resource objects generated by the
DockerClientare now hashable. - Fixed a bug where retrieving untagged images using
DockerClientwould raise aTypeErrorexception. modeparameter increate_serviceis now properly converted to a valid data type for the Engine API. UseServiceModefor advanced configurations.- Fixed a bug where the decoded
APIClient.eventsstream would sometimes raise an exception when a container is stopped or restarted.
- Python
Published by shin- over 9 years ago
docker-py - 2.0.1
List of PRs / issues for this release
Bugfixes
- Fixed a bug where forward slashes in some .dockerignore patterns weren't being parsed correctly on Windows
- Fixed a bug where
Mount.parse_mount_stringwould never set the read_only parameter on the resultingMount. - Fixed a bug where
Mount.parse_mount_stringwould incorrectly mark host binds as being ofvolumetype.
- Python
Published by shin- over 9 years ago
docker-py - 2.0.0
List of PRs / issues for this release
Breaking changes
- Dropped support for Python 2.6
docker.Clienthas been renamed todocker.APIClientdocker.from_envnow creates aDockerClientinstance instead of anAPIClientinstance.- Removed HostConfig parameters from
APIClient.start - The minimum supported API version is now 1.21 (Engine version 1.9.0+)
- The name of the
pippackage is nowdocker(was:docker-py). New versions of this library will only be published asdockerfrom now on. docker.ssladapteris nowdocker.transport.ssladapter- The package structure has been flattened in certain cases, which may affect
import for
docker.authanddocker.utils.ports docker.utils.typeshas been moved todocker.typescreate_host_config,create_ipam_poolandcreate_ipam_confighave been removed fromdocker.utils. They have been replaced by the following classes indocker.types:HostConfig,IPAMPoolandIPAMCOnfig.
Features
- Added a high-level, user-focused API as
docker.DockerClient. See the README and documentation for more information. - Implemented
update_nodemethod inAPIClient. - Implemented
remove_nodemethod inAPIClient. - Added support for
restart_policyinupdate_container. - Added support for
labelsandshmsizeinbuild. - Added support for
attachableincreate_network - Added support for
healthcheckincreate_container. - Added support for
isolationinHostConfig. - Expanded support for
pid_modeinHostConfig(now supports arbitrary values for API version >= 1.24). - Added support for
optionsinIPAMConfig - Added a
HealthCheckclass todocker.typesto be used increate_container. - Added an
EndpointSpecclass todocker.typesto be used increate_serviceandupdate_service.
Bugfixes
- Fixed a bug where auth information would not be properly passed to the engine
during a
buildif the client used a credentials store. - Fixed an issue with some exclusion patterns in
build. - Fixed an issue where context files were bundled with the wrong permissions
when calling
buildon Windows. - Fixed an issue where auth info would not be retrieved from its default location on Windows.
- Fixed an issue where lists of
networksincreate_serviceandupdate_servicewouldn't be properly converted for the engine. - Fixed an issue where
endpoint_configincreate_serviceandupdate_servicewould be ignored. endpoint_configincreate_serviceandupdate_servicehas been deprecated in favor ofendpoint_spec- Fixed a bug where
constraintsin aTaskTemplateobject wouldn't be properly converted for the engine. - Fixed an issue where providing a dictionary for
envinContainerSpecwould provoke anAPIErrorwhen sent to the engine. - Fixed a bug where providing an
env_filecontaining empty lines increate_containerwould raise an exception. - Fixed a bug where
detachwas being ignored byexec_start.
- Python
Published by shin- over 9 years ago