DockerCLI/cli/command
Albin Kerouanton f1048e1a3a
Create default EndpointSettings if no --network provided
Following flags are silently ignored when they're passed with no
`--network` specified (ie. when the default network is used):

- `--network-alias`
- `--ip`
- `--ip6`
- `--link-local-ip`

This is not really an issue right now since the first 3 parameters are
not allowed on the default bridge network. However, with
[moby/moby#45905][1], the container-wide MacAddress parameter will be
deprecated and dismissed. Because of that, with [docker/cli#4419][2],
it's currently not possible to use the `--mac-address` flag with no
default network specified.

Morever, `docker network connect --link-local-ip ...` works properly, so
it should also work on `docker container create`. This also lay the
ground for making the default bridge network just a "normal" network.

Since the 3 parameters in the list above aren't ignored anymore, if
users provide them, moby's ContainerStart endpoint will complain about
those. To provide better UX, [moby/moby#46183][3] make sure these
invalid parameters lead to a proper error message on `docker container
create` / `docker run`.

[1]: https://github.com/moby/moby/pull/45905
[2]: https://github.com/docker/cli/pull/4419
[3]: https://github.com/moby/moby/pull/46183

Signed-off-by: Albin Kerouanton <albinker@gmail.com>
2023-09-10 17:19:43 +02:00
..
builder cmd: set double quotes as code delimiter 2023-01-06 19:15:33 +01:00
checkpoint vendor: github.com/docker/docker a65c948e7edf (v25.0.0-dev) 2023-08-28 21:11:17 +02:00
commands remove exec, push, pull, ps, images, info from "legacy" commands 2022-04-08 16:55:39 +02:00
completion vendor: github.com/docker/docker master (v24.0.0-dev) 2023-03-30 19:56:28 +02:00
config replace some basic uses of fmt.Sprintf() 2023-06-12 19:03:49 +02:00
container Create default EndpointSettings if no --network provided 2023-09-10 17:19:43 +02:00
context Merge pull request #4366 from thaJeztah/remove_deprecated_context_stubs 2023-06-28 14:42:18 +02:00
formatter migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
idresolver cli/command/idresolver: fakeClient: remove name for unused arg (revive) 2023-03-30 17:22:06 +02:00
image migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
inspect linting: fix incorrectly formatted errors (revive) 2022-03-28 10:37:25 +02:00
manifest migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
network replace some basic uses of fmt.Sprintf() 2023-06-12 19:03:49 +02:00
node replace uses of deprecated api/types that moved to api/types/system 2023-07-15 01:20:49 +02:00
plugin migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
registry search: deprecate "is-automated" filter and "IsAutomated" field 2023-08-09 12:11:05 +02:00
secret replace some basic uses of fmt.Sprintf() 2023-06-12 19:03:49 +02:00
service migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
stack cli/command: ResolveAuthConfig, GetDefaultAuthConfig: take ConfigFile as arg 2023-08-08 17:35:16 +02:00
swarm replace uses of deprecated api/types that moved to api/types/system 2023-07-15 01:20:49 +02:00
system vendor: github.com/docker/docker 7abd7fa73965 (v25.0.0-dev) 2023-09-05 13:43:35 +02:00
task migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
testdata Dynamically register kubernetes context store endpoint type. 2019-05-20 13:28:11 +01:00
trust cli/command: ResolveAuthConfig, GetDefaultAuthConfig: take ConfigFile as arg 2023-08-08 17:35:16 +02:00
volume Update docs/command output for volume pruning 2023-08-12 14:22:23 +01:00
cli.go cli/command: ResolveAuthConfig, GetDefaultAuthConfig: take ConfigFile as arg 2023-08-08 17:35:16 +02:00
cli_options.go cli/command: add WithAPIClient 2022-12-05 21:40:39 +01:00
cli_options_test.go linting: os.Setenv() can be replaced by `t.Setenv()` (tenv) 2022-09-03 21:25:37 +02:00
cli_test.go cli/command: initialize client and load content lazily 2022-11-28 16:52:02 +01:00
context.go cli/command: move default context description to context itself 2022-11-22 12:57:54 +01:00
context_test.go cli/command: use more descriptive const in test 2022-11-22 12:57:57 +01:00
defaultcontextstore.go cli/command: add EnvOverrideContext const for "DOCKER_CONTEXT" 2023-06-02 14:20:53 +02:00
defaultcontextstore_test.go cli/flags: merge CommonOptions into ClientOptions 2022-11-22 12:32:18 +01:00
events_utils.go vendor: github.com/docker/docker 7abd7fa73965 (v25.0.0-dev) 2023-09-05 13:43:35 +02:00
registry.go migrate reference github.com/distribution/reference 2023-09-05 17:53:20 +02:00
registry_test.go cli/command: ResolveAuthConfig, GetDefaultAuthConfig: take ConfigFile as arg 2023-08-08 17:35:16 +02:00
trust.go Refactor content_trust cli/flags handling 2018-03-08 15:00:43 -05:00
utils.go cli/command: use strings.Cut 2022-12-29 15:19:31 +01:00
utils_test.go format go with gofumpt (with -lang=1.19) 2022-09-30 19:14:36 +02:00