docker cp: report both content size and transferred size

When copying files with `docker cp`, the success message now shows both
the actual content size and the transferred (tar stream) size when they
differ, making it easier to understand compression and overhead:

    Successfully copied 2.01MB (transferred 2.53MB) to ctr:/dir

Extract copySummary helper to keep copyToContainer under the gocyclo
complexity threshold. Add unit tests for copySummary and stdin path.

Signed-off-by: 4RH1T3CT0R7 <iprintercanon@gmail.com>
3 files changed
tree: 2bde3683eb942753efb62f1e622b7ba4d450b6ae
  1. .github/
  2. cli/
  3. cli-plugins/
  4. cmd/
  5. contrib/
  6. dockerfiles/
  7. docs/
  8. e2e/
  9. experimental/
  10. internal/
  11. man/
  12. opts/
  13. pkg/
  14. scripts/
  15. templates/
  16. vendor/
  17. .codecov.yml
  18. .dockerignore
  19. .gitattributes
  20. .gitignore
  21. .golangci.yml
  22. .mailmap
  23. AUTHORS
  24. CONTRIBUTING.md
  25. docker-bake.hcl
  26. docker.Makefile
  27. Dockerfile
  28. LICENSE
  29. MAINTAINERS
  30. Makefile
  31. NOTICE
  32. README.md
  33. SECURITY.md
  34. TESTING.md
  35. vendor.mod
  36. vendor.sum
  37. VERSION
README.md

Docker CLI

PkgGoDev Build Status Test Status Go Report Card OpenSSF Scorecard Codecov

About

This repository is the home of the Docker CLI.

Development

docker/cli is developed using Docker.

Build CLI from source:

docker buildx bake

Build binaries for all supported platforms:

docker buildx bake cross

Build for a specific platform:

docker buildx bake --set binary.platform=linux/arm64 

Build dynamic binary for glibc or musl:

USE_GLIBC=1 docker buildx bake dynbinary 

Run all linting:

docker buildx bake lint shellcheck

Run test:

docker buildx bake test

List all the available targets:

make help

In-container development environment

Start an interactive development environment:

make -f docker.Makefile shell

Legal

Brought to you courtesy of our legal counsel. For more context, see the NOTICE document in this repo.

Use and transfer of Docker may be subject to certain restrictions by the United States and other governments.

It is your responsibility to ensure that your use and/or transfer does not violate applicable laws.

For more information, see https://www.bis.doc.gov

Licensing

docker/cli is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.