Commit Graph

6522 Commits

Author SHA1 Message Date
Sebastiaan van Stijn cf663b526a
cli: perform feature detection lazily
- Perform feature detection when actually needed, instead of during
  initializing
- Version negotiation is performed either when making an API request,
  or when (e.g.) running `docker help` (to hide unsupported features)
- Use a 2 second timeout when 'pinging' the daemon; this should be
  sufficient for most cases, and when feature detection failed, the
  daemon will still perform validation (and produce an error if needed)
- context.WithTimeout doesn't currently work with ssh connections (connhelper),
  so we're only applying this timeout for tcp:// connections, otherwise
  keep the old behavior.

Before this change:

    time sh -c 'DOCKER_HOST=tcp://42.42.42.41:4242 docker help &> /dev/null'
    real   0m32.919s
    user   0m0.370s
    sys    0m0.227s

    time sh -c 'DOCKER_HOST=tcp://42.42.42.41:4242 docker context ls &> /dev/null'
    real   0m32.072s
    user   0m0.029s
    sys    0m0.023s

After this change:

    time sh -c 'DOCKER_HOST=tcp://42.42.42.41:4242 docker help &> /dev/null'
    real   0m 2.28s
    user   0m 0.03s
    sys    0m 0.03s

    time sh -c 'DOCKER_HOST=tcp://42.42.42.41:4242 docker context ls &> /dev/null'
    real   0m 0.13s
    user   0m 0.02s
    sys    0m 0.02s

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit b39739123b)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-29 17:12:23 +02:00
Sebastiaan van Stijn c44c18e088
docker build: check experimental --platform on pre-run
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit a88a1bea23)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-29 17:12:21 +02:00
Anca Iordache 25f04876d1
app-214 Load Client info in getter function
Signed-off-by: Anca Iordache <anca.iordache@docker.com>

Possible approach for client info

- split ClientInfo() into ClientInfo() and loadClientInfo()
- split ConfigFile() into ConfigFile() and loadConfigFile()
- ConfigFile() and ClientInfo() call their corresponding loadXX function
  if it has not yet been loaded; this allows them to be used before
  Initialize() was called.
- Initialize() *always* (re-)loads the configuration; this makes sure
  that the correct configuration is used when actually calling commands.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 22a5dad847)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-29 17:12:18 +02:00
Sebastiaan van Stijn e470eef36f
Merge pull request #2469 from thaJeztah/19.03_backport_docs
[19.03 backport] assorted docs fixes
2020-04-28 12:02:54 +02:00
Sebastiaan van Stijn 0cfe29431c
service update: fix service create example
Service create expects the name to be passed using the
`--name` flag, not as a positional parameter

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 0cd7c6aa02)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-28 11:47:37 +02:00
Dominik Braun 2dc593f67f
Add container_iface_prefix option to documentation
Signed-off-by: dominikbraun <braun@sternentstehung.de>
(cherry picked from commit 84a07a9977)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-28 11:47:16 +02:00
Silvin Lubecki d25e657341
Merge pull request #2445 from thaJeztah/19.03_backport_network_prune_improve_message
[19.03 backport] improve "network prune" output to mention custom networks only
2020-04-21 17:23:18 +02:00
Silvin Lubecki 8986e31201
Merge pull request #2456 from thaJeztah/19.03_backport_gotest_v3
[19.03 backport] bump gotest.tools v3.0.1 for compatibility with Go 1.14
2020-04-21 17:06:56 +02:00
Sebastiaan van Stijn 4fe6b837b7
bump gotest.tools v3.0.1 for compatibility with Go 1.14
full diff: https://github.com/gotestyourself/gotest.tools/compare/v2.3.0...v3.0.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 2c0e93063b)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-21 16:43:18 +02:00
Sebastiaan van Stijn a8454a4d92
update vndr v0.1.1
full diff: https://github.com/LK4D4/vndr/compare/v0.1.0...v0.1.1

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 7c54406951)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-20 22:51:22 +02:00
Sebastiaan van Stijn 950dcedd97
bump vndr v0.1.0 to support versioned import paths
With this change, go packages/modules that use versioned
import paths (github.com/foo/bar/v2), but don't use a directory
in the repository, can now be supported.

For example:

```
github.com/coreos/go-systemd/v22 v22.0.0
```

will vendor the github.com/coreos/go-systemd repository
into `vendor/github.com/coreos/go-systemd/v22`.

full diff: b177b583eb...v0.1.0

- LK4D4/vndr#79 Add more clear messages around clone failures
- LK4D4/vndr#80 add riscv64 support
- LK4D4/vndr#83 migrate bitbucket to api 2.0
    - fixes LK4D4/vndr#82 https://api.bitbucket.org/1.0/repositories/ww/goautoneg: 410 Gone
- LK4D4/vndr#86 Replace sort.Sort with sort.Strings
- LK4D4/vndr#87 support `github.com/coreos/go-systemd/v22`

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 7904c23df8)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-20 22:51:20 +02:00
Silvin Lubecki 05ad944d13
Merge pull request #2453 from thaJeztah/19.03_backport_fixup_markdown_and_links
[19.03 backport] documentation changes
2020-04-20 14:01:29 +02:00
Sebastiaan van Stijn 0d26cbf5b7
yamldocs: add description to base command
Currently the documentation uses a special case for this command,
so adding a description to the YAML in order to remove that
special case.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit c4798a9daa)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:53:33 +02:00
Sebastiaan van Stijn d4e4fa3b46
experimental/vlan-networks: markdown touch-ups
- wrap to 80-chars
- reformat notes
- add code-hints to help highlighting

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 86257b0fc7)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:43:09 +02:00
Sebastiaan van Stijn de12dbfb16
docs/reference: explain "colon"
Colon may not be something non-native English readers
know about, so explain the symbol in the running text.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit e34c407516)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:42:57 +02:00
Sebastiaan van Stijn 7ae77e51f2
docs/extend: reformat notes
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit e4fc8cfa23)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:42:49 +02:00
Sebastiaan van Stijn 733ae82dae
docs/builder: touch up markdown, and some minor rephrasing
- add code-fences with code-hints so that the right hightlighting is applied
- replace `*` for `-` in bullet-lists for consistency with other parts of the
  documentation.
- reduced number of "notes", either by combining some, or by changing some
  to regular text.
- removed "line numbers" from some examples, because there's only four lines,
  which should not need really need line numbers.
- reformat some notes to our new format

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 16730a2ab6)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:42:38 +02:00
Sebastiaan van Stijn 9a1ba7d39a
docs/reference/run.md: touch-up markdown
- add code-fences with code-hints so that the right
  hightlighting is applied
- reduced number of "notes", either by combining some,
  or by changing some to regular text.
- use tables for some option lists

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit b73df4a231)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:41:54 +02:00
Sebastiaan van Stijn 6ba9a3e4c9
reference docs: reformat notes
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 6ae5df423a)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:41:52 +02:00
Sebastiaan van Stijn 96eb0888fa
reference docs: fix broken links and markdown touch-ups
- fix various broken links
- fix incorrect anchors
- updated links for content that moved, so that no
  redirect to the new location is needed.
- touched-up Markdown;
  - re-format some JSON output
  - add blank line betweeen command and command output
  - format "note" blocks

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 8919c228bd)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:41:50 +02:00
Hector S 2676c603fb
Adding missing title in builder.md
addresses https://github.com/docker/docker.github.io/issues/9691

Signed-off-by: hsam <hfsam88@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 7557c138d7)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:41:48 +02:00
Michael Irwin 365bae4f89
Add clarification when using USER UID:GI
Signed-off-by: Michael Irwin <mikesir87@gmail.com>
(cherry picked from commit b3a1681fd8)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-19 19:41:45 +02:00
Silvin Lubecki 04533bd523
Merge pull request #2442 from thaJeztah/19.03_backport_update_go_events
[19.03 backport] vendor: update go-events to fix alignment for 32bit systems
2020-04-15 10:55:12 +02:00
Sebastiaan van Stijn c38b260077
improve "network prune" output to mention custom networks only
The `docker network prune` command removes unused custom networks,
but built-in networks won't be removed. This patch updates the
message to mention that it's only removing custom networks.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit eb93a865ed)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-15 10:54:57 +02:00
Sebastiaan van Stijn ba0a2ffe2a
Merge pull request #2444 from thaJeztah/19.03_backport_host_gateway_validation
[19.03 backport] Skip IPAddr validation for "host-gateway" string
2020-04-15 10:53:02 +02:00
Sebastiaan van Stijn fd9eedce3c
Add "host-gateway" to tests for extra_hosts / --add-host
67ebcd6dcf added an exception for
the "host-gateway" magic value to the validation rules, but didn't
add thise value to any of the tests.

This patch adds the magic value to tests, to verify the validation
is skipped for this magic value.

Note that validation on the client side is "optional" and mostly
done to provide a more user-friendly error message for regular
values (IP-addresses).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit f88ae74135)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-15 09:53:37 +02:00
Arko Dasgupta 3651189826
Skip IPAddr validation for "host-gateway" string
Relates to - moby/moby 40007
The above PR added support in moby, that detects if
a special string "host-gateway" is added to the IP
section of --add-host, and if true, replaces it with
a special IP value (value of --host-gateway-ip Daemon flag
which defaults to the IP of the default bridge).

This PR is needed to skip the validation for the above
feature

Signed-off-by: Arko Dasgupta <arko.dasgupta@docker.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 67ebcd6dcf)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-15 09:36:14 +02:00
Sebastiaan van Stijn a0f0ed1f5f
vendor: update go-events to fix alignment for 32bit systems
- relates to moby/buildkit 1111
- relates to moby/buildkit 1079
- relates to docker/buildx 129

full diff: 9461782956...e31b211e4f

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 5661cc0de5)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-14 13:53:44 +02:00
Sebastiaan van Stijn 173c85ad75
Merge pull request #2431 from thaJeztah/19.03_backport_bump_golang_1.13.10
[19.03 backport] Bump Golang 1.13.10
2020-04-10 23:55:43 +02:00
Sebastiaan van Stijn de6a5fa447
Bump Golang 1.13.10
go1.13.10 (released 2020/04/08) includes fixes to the go command, the runtime,
os/exec, and time packages. See the Go 1.13.10 milestone on the issue tracker
for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.13.10+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.13.9...go1.13.10

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 6875390131)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-10 22:37:09 +02:00
Tibor Vass 1a4749b8e7
Merge pull request #2435 from thaJeztah/19.03_backport_bump_certificates
[19.03 backport] CI: update notary test certificates
2020-04-10 12:59:09 -07:00
Sebastiaan van Stijn 19ccd4f5d4 CI: update notary test certificates
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 6bd09229a5)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-10 16:44:18 +02:00
Silvin Lubecki d7f5f70c39
Merge pull request #2419 from thaJeztah/19.03_backport_bump_golang_1.13.9
[19.03 backport] Bump Golang 1.13.9
2020-04-06 16:20:22 +02:00
Sebastiaan van Stijn f8fc68f174
Bump Golang 1.13.9
go1.13.9 (released 2020/03/19) includes fixes to the go command, tools, the
runtime, the toolchain, and the crypto/cypher package. See the Go 1.13.9
milestone on the issue tracker for details:

https://github.com/golang/go/issues?q=milestone%3AGo1.13.9+label%3ACherryPickApproved

full diff: https://github.com/golang/go/compare/go1.13.8...go1.13.9

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit d063b835b3)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-04-06 16:02:03 +02:00
Sebastiaan van Stijn 7d48500057
Merge pull request #2403 from thaJeztah/19.03_backport_update_deprecation_policy
[19.03 backport] Update deprecation policy to 1 stable release
2020-03-20 16:22:40 +01:00
Sebastiaan van Stijn 22cbf91618
Update deprecation policy to 1 stable release
The deprecation policy was written when we had monthly releases
(edge+stable), and stable releases were released every 3 months.

The release cadence has changed to be longer than 3 months for
stable releases, so adjusting the policy accordingly.

Note that the policy continues to be "at least x releases", so
even though we _can_ remove a feature after one release, it does
not mean we _must_ remove it: announcing deprecations early helps
users migrate away from features we do not intent to support in
future.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 94f513e48e)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-20 13:07:39 +01:00
Silvin Lubecki 0b0ea3f0fa
Merge pull request #2401 from thaJeztah/19.03_backport_deprecation_policy
[19.03 backport] Include deprecation policy on deprecated features page
2020-03-20 11:50:53 +01:00
Sebastiaan van Stijn 288cdec291
Include deprecation policy on deprecated features page
This section was included on a page on docs.docker.com, but not linked
in the navigation. Putting the section on the deprecated features page
to be sure they can be found together.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 99443274b1)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-20 11:04:34 +01:00
Sebastiaan van Stijn a4d902af53
Merge pull request #2399 from thaJeztah/19.03_backport_remove_comments
[19.03 backport] remove unneeded comment from reference files
2020-03-19 20:09:48 +01:00
Sebastiaan van Stijn ffffc1ed49
remove unneeded comment from reference files
these markdown files are not consumed directly in the docs,
but only their content is included through the YAML does,
so there's no need to have these comments in them

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit f30bde6adb)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-19 15:26:30 +01:00
Silvin Lubecki bf1f5fcfb3
Merge pull request #2393 from thaJeztah/19.03_backport_codehints_compatibility
[19.03 backport] docs: update code-hints for compatibility with "rouge"
2020-03-17 16:52:40 +01:00
Silvin Lubecki c35400655d
Merge pull request #2391 from thaJeztah/19.03_backport_fix_yamldocs
[19.03 backport] Fix yamldocs generator to accomodate nested subcommands
2020-03-17 16:50:45 +01:00
Sebastiaan van Stijn 9fd323afdc
Fix whitespace that caused short-format in generated YAML
If the markdown contains trailing spaces, or has tabs included,
the YAML generator uses a compact format for the text (using `\n`
and `\t`, instead of plain newlines).

The compact format makes it difficult to review changes in the
yaml docs when vendoring in the documentation repository.

This patch:

- removes trailing whitespace
- replaces tabs for spaces
- fixes some minor formatting and markdown issues

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit f912deeec7)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-17 16:42:19 +01:00
Sebastiaan van Stijn c936ea9693
Fix yamldocs generator to accomodate nested subcommands
The script was written to only take subcommands at the first and second level
into account, but failed to find the Markdown files for extended descriptions of
subcommands at the third level, such as `docker trust key generate`, and
`docker trust key load`:

    WARN: /go/src/github.com/docker/cli/docs/reference/commandline/key_generate.md does not exist, skipping
    WARN: /go/src/github.com/docker/cli/docs/reference/commandline/key_load.md does not exist, skipping
    WARN: /go/src/github.com/docker/cli/docs/reference/commandline/signer_add.md does not exist, skipping
    WARN: /go/src/github.com/docker/cli/docs/reference/commandline/signer_remove.md does not exist, skipping

This patch updates the script to accomodate subcommands that are more deeply
nested. While at it, some minor cleaning and linting issues were also addressed.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit e1b362847f)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-17 16:42:17 +01:00
Sebastiaan van Stijn d484456c29
Fix naming of reference docs files
These files were intended to document the `swarm join-token` and
`swarm unlock-key` subcommands, but were incorrectly using an underscore
instead of a hyphen (`-`). As a result, the examples were not picked up
by the yamldocs generator.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 5115bfa041)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-17 16:42:15 +01:00
Sebastiaan van Stijn 6a02465f4c
docs: update code-hints for compatibility with "rouge"
Unlike GitHub's web-UI, the "rouge" hightlighter used in our
online documentation is case-sensitive. As a result, code-blocks
having the Dockerfile (uppercase) code-hint were not highlighted.

This changes those to use lowercase, which is supported by both.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 824a9ce64b)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2020-03-17 15:04:51 +01:00
Silvin Lubecki f53663a951
Merge pull request #2364 from thaJeztah/19.03_backport_bump_golang_1.13
[19.03 backport] Update Golang 1.13.8
2020-03-12 18:00:04 +01:00
Sebastiaan van Stijn eb310fca49
Merge pull request #2373 from tiborvass/19.03-bump-grpc-1.23.1
[19.03 backport] Bump grpc to v1.23.1
2020-03-03 22:59:52 +01:00
Sebastiaan van Stijn 0e40b91921 vendor: bump google.golang.org/grpc v1.23.1
full diff: https://github.com/grpc/grpc-go/compare/v1.23.0...v1.23.1

- grpc/grpc-go#3018 server: set and advertise max frame size of 16KB
- grpc/grpc-go#3017 grpclb: fix deadlock in grpclb connection cache
    - Before the fix, if the timer to remove a SubConn fires at the
      same time NewSubConn cancels the timer, it caused a mutex leak
      and deadlock.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 013151ff78)
Signed-off-by: Tibor Vass <tibor@docker.com>
2020-03-03 21:39:18 +00:00
Tibor Vass a51e9e6397 vendor: update grpc to v1.23.0
Signed-off-by: Tibor Vass <tibor@docker.com>
(cherry picked from commit 70a4eb2a49)
Signed-off-by: Tibor Vass <tibor@docker.com>
2020-03-03 21:39:13 +00:00