Commit Graph
41081 Commits
Author SHA1 Message Date
Yong Tang 371327f900 Fix incorrect link in version-history.md
In version-history.md, the link for `Docker Engine API v1.37`
was pointed to `v1.36`.

This fix fixes the incorrect link.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 6d66743ae3da148adbd29fb7e0c0433e93fec12b
Component: engine
2018-05-13 13:22:39 +00:00
Sebastiaan van Stijn 8082d1152a Merge pull request #37047 from yongtang/05122018-changelog
Re-order CHANGELOG.md to pass `make validate` test
Upstream-commit: df7c058198a7f4566d46ab732f5987bd33e90a93
Component: engine
2018-05-13 14:11:56 +02:00
Yong Tang 2d3321ec44 Re-order CHANGELOG.md to pass make validate test
This fix re-orders the CHANGELOG so that `make validate` test
could pass. The validation requires that the date in the changelog
is always ordered.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 333693c37c8a2c14458d2a088829b9a2a3570eed
Component: engine
2018-05-13 00:27:51 +00:00
GordonTheTurtle d87eeada6c Merge component 'engine' from git@github.com:moby/moby master 2018-05-12 17:06:49 +00:00
GordonTheTurtle f761a64e26 Merge component 'cli' from git@github.com:docker/cli master 2018-05-12 16:41:44 +00:00
Brian Goff 3ef5a0bd8a Merge pull request #1038 from kolyshkin/context
Switch from x/net/context to context
Upstream-commit: fd060d2f33
Component: cli
2018-05-11 22:13:52 -04:00
Kir Kolyshkin 7e8c2b86b6 cli/command/container: don't leak context
Switch from x/net/context to context made "go vet" see the previously
unseen errors:

> cli/command/container/start.go:57::error: the cancelFun function is
> not used on all paths (possible context leak) (vet)
> cli/command/container/start.go:63::error: this return statement may be
> reached without using the cancelFun var defined on line 57 (vet)

> cli/command/container/run.go:159::error: the cancelFun function is not
> used on all paths (possible context leak) (vet)
> cli/command/container/run.go:164::error: this return statement may be
> reached without using the cancelFun var defined on line 159 (vet)

Do call the cancel function.

Note we might end up calling it twice which is fine as long as I can see
from the Go 1.10 source code.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Upstream-commit: 395957155f
Component: cli
2018-05-11 16:50:04 -07:00
Kir Kolyshkin 32a5db4523 Switch from x/net/context to context
Since go 1.7, "context" is a standard package. Since go 1.9,
x/net/context merely provides some types aliased to those in
the standard context package.

The changes were performed by the following script:

for f in $(git ls-files \*.go | grep -v ^vendor/); do
	sed -i 's|golang.org/x/net/context|context|' $f
	goimports -w $f
	for i in 1 2; do
		awk '/^$/ {e=1; next;}
			/\t"context"$/ {e=0;}
			{if (e) {print ""; e=0}; print;}' < $f > $f.new && \
				mv $f.new $f
		goimports -w $f
	done
done

[v2: do awk/goimports fixup twice]
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Upstream-commit: 6f8070deb2
Component: cli
2018-05-11 16:49:43 -07:00
Essam A. Hassan 67fe72ed3d use : instead of = in mounts service pretty inspect
Signed-off-by: Essam A. Hassan <es.hassan187@gmail.com>
Upstream-commit: 7285241681
Component: cli
2018-05-12 00:02:18 +02:00
Sebastiaan van Stijn f5a67d027e Merge pull request #36289 from thaJeztah/backport-17.03.2-changelog
[backport] Add 17.03.2 CHANGELOG
Upstream-commit: 38162e96552bd30e510e355cd44d801f53bac5ae
Component: engine
2018-05-11 21:28:50 +02:00
Justyn Temme 732529fbbc Change error message for unreadable files
Fix for https://github.com/docker/for-linux/issues/44

Signed-off-by: Justyn Temme <justyntemme@gmail.com>
Upstream-commit: c2a35cfa1a
Component: cli
2018-05-11 13:03:19 -05:00
Brian Goff 3d482c77f6 Merge pull request #37041 from thaJeztah/remove_unused_function_in_test
overlay2: remove unused cdMountFrom() helper function
Upstream-commit: d0a516e2567a67fed3ff3f23ff6c220f1707ad4b
Component: engine
2018-05-11 13:56:56 -04:00
GordonTheTurtle 14ad0d5267 Merge component 'engine' from git@github.com:moby/moby master 2018-05-11 17:06:01 +00:00
GordonTheTurtle 9bb8e4d94e Merge component 'cli' from git@github.com:docker/cli master 2018-05-11 16:41:29 +00:00
Sebastiaan van Stijn 790e355196 Merge pull request #1039 from mat007/fix-filepath-usage
Use filepath.Base instead of path.Base
Upstream-commit: a6b10c2e85
Component: cli
2018-05-11 18:06:23 +02:00
Mathieu Champlon 068dc5f571 Make an error for an invalid orchestrator
Signed-off-by: Mathieu Champlon <mathieu.champlon@docker.com>
Upstream-commit: 50330e7089
Component: cli
2018-05-11 17:19:55 +02:00
Sebastiaan van Stijn 0178ff5bea Merge pull request #37031 from kolyshkin/getmnt
Fix daemon.getSourceMount() for /
Upstream-commit: 379845ec20ae651831dcfb0587b95c38a1631a53
Component: engine
2018-05-11 16:39:57 +02:00
Sebastiaan van Stijn e273ba3110 Fix service update --host-rm not being granular enough
Removing a host by `<host>:<ip>` should only remove occurences of the host with
a matching IP-address, instead of removing all entries for that host.

In addition, combining `--host-rm` and `--host-add` for the same host should
result in the new host being added.

This patch fixes the way the diff is calculated to allow combining
removing/adding, and to support entries having both a canonical, and aliases.
Aliases cannot be added by the CLI, but are supported in the Service spec, thus
should be taken into account:

Entries can be removed by either a specific `<host-name>:<ip-address>`
mapping, or by `<host>` alone:

 - If both IP-address and host-name is provided, only remove the hostname
   from entries that match the given IP-address.
 - If only a host-name is provided, remove the hostname from any entry it
   is part of (either as _canonical_ host-name, or as _alias_).
 - If, after removing the host-name from an entry, no host-names remain in
   the entry, the entry itself should be removed.

For example, the list of host-entries before processing could look like this:

    hosts = &[]string{
        "127.0.0.2 host3 host1 host2 host4",
        "127.0.0.1 host1 host4",
        "127.0.0.3 host1",
        "127.0.0.1 host1",
    }

Removing `host1` removes every occurrence:

    hosts = &[]string{
        "127.0.0.2 host3 host2 host4",
        "127.0.0.1 host4",
    }

Whereas removing `host1:127.0.0.1` only remove the host if the IP-address matches:

    hosts = &[]string{
        "127.0.0.2 host3 host1 host2 host4",
        "127.0.0.1 host4",
        "127.0.0.3 host1",
    }

Before this patch:

    $ docker service create --name my-service --host foo:127.0.0.1  --host foo:127.0.0.2 --host foo:127.0.0.3 nginx:alpine
    $ docker service update --host-rm foo:127.0.0.1 --host-add foo:127.0.0.4 my-service
    $ docker service inspect --format '{{.Spec.TaskTemplate.ContainerSpec.Hosts}}' my-service
    []

After this patch is applied:

    $ docker service create --name my-service --host foo:127.0.0.1  --host foo:127.0.0.2 --host foo:127.0.0.3 nginx:alpine
    $ docker service update --host-rm foo:127.0.0.1 --host-add foo:127.0.0.5 my-service
    $ docker service inspect --format '{{.Spec.TaskTemplate.ContainerSpec.Hosts}}' my-service
    [127.0.0.2 foo 127.0.0.3 foo 127.0.0.4 foo]

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 27c0858f43
Component: cli
2018-05-11 16:35:19 +02:00
Brian Goff b80e078a6d Merge pull request #36815 from allencloud/simplify-ode
refactor: simplify code to make function getExecConfig  more readable
Upstream-commit: 64336838878281549d87b34b19cf2e4b3756e724
Component: engine
2018-05-11 10:06:33 -04:00
Sebastiaan van Stijn 0d708bdf61 overlay2: remove unused cdMountFrom() helper function
This function was added in 23e5c94cfb26eb72c097892712d3dbaa93ee9bc0 but never used

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 8a8ec00c1fece033b20548b7a5ec2f3a1f340834
Component: engine
2018-05-11 13:51:50 +02:00
Sebastiaan van Stijn 5da69b8b39 overlay: do not ignore invalid storage-driver options
The overlay storage driver currently does not support any option, but was silently
ignoring any option that was passed.

This patch verifies that no options are passed, and if they are passed will produce
an error.

Before this change:

    dockerd --storage-driver=overlay --storage-opt dm.thinp_percent=95
    INFO[2018-05-11T11:40:40.996597152Z] libcontainerd: started new docker-containerd process  pid=256
    ....
    INFO[2018-05-11T11:40:41.135392535Z] Daemon has completed initialization
    INFO[2018-05-11T11:40:41.141035093Z] API listen on /var/run/docker.sock

After this change:

    dockerd --storage-driver=overlay --storage-opt dm.thinp_percent=95
    INFO[2018-05-11T11:39:21.632610319Z] libcontainerd: started new docker-containerd process  pid=233
    ....
    Error starting daemon: error initializing graphdriver: overlay: unknown option dm.thinp_percent

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 30f15d2bdc551870464d1cd024a92341cf1ae4aa
Component: engine
2018-05-11 13:40:46 +02:00
Sebastiaan van Stijn e815956d17 Fix service rollback options being cross-wired
The "update" and "rollback" configurations were cross-wired, as a result, setting
`--rollback-*` options would override the service's update-options.

Creating a service with both update, and rollback configuration:

    docker service create \
      --name=test \
      --update-failure-action=pause \
      --update-max-failure-ratio=0.6 \
      --update-monitor=3s \
      --update-order=stop-first \
      --update-parallelism=3 \
      --rollback-failure-action=continue \
      --rollback-max-failure-ratio=0.5 \
      --rollback-monitor=4s \
      --rollback-order=start-first \
      --rollback-parallelism=2 \
      --tty \
      busybox

Before this change:

    docker service inspect --format '{{json .Spec.UpdateConfig}}' test \
    && docker service inspect --format '{{json .Spec.RollbackConfig}}' test

Produces:

    {"Parallelism":3,"FailureAction":"pause","Monitor":3000000000,"MaxFailureRatio":0.6,"Order":"stop-first"}
    {"Parallelism":3,"FailureAction":"pause","Monitor":3000000000,"MaxFailureRatio":0.6,"Order":"stop-first"}

After this change:

    {"Parallelism":3,"FailureAction":"pause","Monitor":3000000000,"MaxFailureRatio":0.6,"Order":"stop-first"}
    {"Parallelism":2,"FailureAction":"continue","Monitor":4000000000,"MaxFailureRatio":0.5,"Order":"start-first"}

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: f367aa9330
Component: cli
2018-05-11 11:47:05 +02:00
Brian Goff 52ce230729 Add metrics for log failures/partials
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 673dd28e7e2fb6e40e4c56823900fdb152b9c53c
Component: engine
2018-05-10 17:22:37 -04:00
Brian Goff 645a5ebf1b Use mount package to unmount container stuff
Really these mounts shouldn't be in the container pacakge.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: d6558ad6a4552fc745e893f93ae190710d1a36bc
Component: engine
2018-05-10 17:16:02 -04:00
Brian Goff c6a8d2ea17 Move network operations out of container package
These network operations really don't have anything to do with the
container but rather are setting up the networking.

Ideally these wouldn't get shoved into the daemon package, but doing
something else (e.g. extract a network service into a new package) but
there's a lot more work to do in that regard.
In reality, this probably simplifies some of that work as it moves all
the network operations to the same place.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: cc8f358c23d307d19b06cd5e7d039d8fad01a947
Component: engine
2018-05-10 17:16:00 -04:00
Kir Kolyshkin 53eaee8346 daemon.getSourceMount(): fix for / mount point
A recent optimization in getSourceMount() made it return an error
in case when the found mount point is "/". This prevented bind-mounted
volumes from working in such cases.

A (rather trivial but adeqate) unit test case is added.

Fixes: 871c957242 ("getSourceMount(): simplify")
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
Upstream-commit: d8fd6137a1f6d95a2bcdfeb6e1dfa6b816790c5e
Component: engine
2018-05-10 12:53:37 -07:00
GordonTheTurtle 47abb706d5 Merge component 'engine' from git@github.com:moby/moby master 2018-05-10 17:07:42 +00:00
Brian Goff a5b8cafc29 Merge pull request #37029 from thaJeztah/fix-fluentd-partial
Fix fluentd partial detection
Upstream-commit: f4ebcb42ac527b24ab54525d5824478fcd2960c0
Component: engine
2018-05-10 12:51:02 -04:00
GordonTheTurtle 4f70e5df53 Merge component 'cli' from git@github.com:docker/cli master 2018-05-10 16:41:48 +00:00
Arash Deshmeh 39cf7e12b3 refactor integration tests under integration/service/create_test.go to use swarm.CreateService
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
Upstream-commit: e9a687146a1e2721e19d858927283c35f8c2da97
Component: engine
2018-05-10 05:45:49 -04:00
Sebastiaan van Stijn 5727dc3154 Merge pull request #1047 from eightlimbed/eightlimbed-patch-1
fixed typo
Upstream-commit: ab1d49a313
Component: cli
2018-05-10 10:32:07 +02:00
Sebastiaan van Stijn d10b7a563e Fix fluentd partial detection
The Partial property of the Logger message
was replaced by PLogMetaData, causing the build to fail.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: daaef83cd24f6eb335b77e9d8d692235eff1b201
Component: engine
2018-05-10 01:55:27 +02:00
Simon Ferquel 57c3c89455 Make sure every composefiles sent to a v1beta1 endpoint are parsable
Signed-off-by: Simon Ferquel <simon.ferquel@docker.com>
Upstream-commit: f766aff716
Component: cli
2018-05-09 13:17:25 -07:00
Sebastiaan van Stijn 0777f5be26 Merge pull request #991 from silvin-lubecki/kubernetes-namespace
Better namespace experience with Kubernetes
Upstream-commit: 552ee502f7
Component: cli
2018-05-09 21:18:50 +02:00
Sebastiaan van Stijn bc1299683c Merge pull request #36159 from cosmo0920/add-partial-flag-into-record
Fluentd Log Driver: Add partial flag into record
Upstream-commit: fff01bc14d96b323ecafb18f8c33c62561677fbb
Component: engine
2018-05-09 21:01:05 +02:00
GordonTheTurtle 32fb3c1d02 Merge component 'engine' from git@github.com:moby/moby master 2018-05-09 17:06:15 +00:00
Mathieu Champlon ec34094dc5 Fix stack ls behaviour with Kubernetes and variout --namespace flag values
Signed-off-by: Mathieu Champlon <mathieu.champlon@docker.com>
Upstream-commit: 2af66bed41
Component: cli
2018-05-09 17:40:25 +02:00
Silvin Lubecki 818645f8cd Add --all-namespaces to docker stack ls command on Kubernetes orchestrator, to list all stacks in all namespaces.
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Upstream-commit: f097831eb3
Component: cli
2018-05-09 17:33:16 +02:00
Silvin Lubecki f151bd57f8 Add namespace column for docker stack ls command while targeting Kubernetes orchestrator
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Upstream-commit: 65526a201f
Component: cli
2018-05-09 17:33:16 +02:00
Silvin Lubecki 3d9a405e51 Move stack client creation from KubeCli to client factory, where it belongs
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Upstream-commit: 31dccfffb5
Component: cli
2018-05-09 17:30:37 +02:00
Silvin Lubecki ceea6abb71 Clean useless named imports
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Upstream-commit: c23c1482c7
Component: cli
2018-05-09 17:30:36 +02:00
Silvin Lubecki fd51a4f0df Fix using the namespace specified in the kubeconfig file.
Signed-off-by: Silvin Lubecki <silvin.lubecki@docker.com>
Upstream-commit: f0aa126b03
Component: cli
2018-05-09 17:30:36 +02:00
Yong Tang 98ae67d006 Merge pull request #37016 from priyawadhwa/buildargs
Export BuildArgs type from dockerfile package
Upstream-commit: dfde597fbbb5de4a7559a68980401c8c405aa9af
Component: engine
2018-05-09 05:06:50 -07:00
Sebastiaan van Stijn 830a000faa Remove "experimental" env-vars
Experimental features are no longer a build-time option,
and can be enabled at runtime.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 050b421f4c435c90dc63bb094789b0513689e80c
Component: packaging
2018-05-09 13:16:43 +02:00
Priya Wadhwa d39da73d16 Export BuildArgs
Signed-off-by: Priya Wadhwa <priyawadhwa@google.com>
Upstream-commit: 593255ffb07989e416743d4235fef65e75414e6b
Component: engine
2018-05-08 14:57:26 -07:00
Lee Gaines 4785c706cc fixed typo -- Signed-off-by: Lee Gaines <eightlimbed@gmail.com>
Upstream-commit: 9570911807
Component: cli
2018-05-08 14:46:42 -07:00
Ioan Eugen Stan daa5cc4d8f Added description about pids count.
Documentation in response to issue docker/for-linux#192

Signed-off-by: Ioan Eugen Stan <eu@ieugen.ro>
Upstream-commit: 966de2a5f9
Component: cli
2018-05-08 22:16:15 +03:00
GordonTheTurtle ebc7fa7c75 Merge component 'engine' from git@github.com:moby/moby master 2018-05-08 17:07:32 +00:00
GordonTheTurtle 4d422dd853 Merge component 'cli' from git@github.com:docker/cli master 2018-05-08 16:41:46 +00:00
Justyn Temme c76949856e Update prune.go
Append a warning with which filter the elements will be pruned with if filter is set.

Signed-off-by: Justyn Temme <justyntemme@gmail.com>
Upstream-commit: 7d113de085
Component: cli
2018-05-08 09:08:26 -05:00