Compare commits

...

3046 Commits

Author SHA1 Message Date
Victor Vieux
89658bed64 bump to GA
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-05-04 13:56:32 -07:00
Brian Goff
d1c9e9cfe9 Ensure unmount before removing local volume.
When there is an error unmounting a local volume, it is still possible
to call `Remove()` on the volume causing removal of the mounted
resources which is generally not desirable.

This ensures that resources are unmounted before attempting removal.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit db3576f8a0)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-05-04 13:56:32 -07:00
Brian Goff
c4bd13b650 Use lazy unmount for local volume driver unmount
This fixes issues where the underlying filesystem may be disconnected and
attempting to unmount may cause a hang.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit acbfe6bc56)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-05-04 13:56:31 -07:00
Victor Vieux
90d35abf7b bump to rc3
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-05-01 22:49:10 -07:00
Victor Vieux
947cc7b591 Merge pull request #32950 from dnephin/cherry-pick-build-arg-fixes
[17.05.x] Cherry pick build arg fixes
2017-05-01 22:45:51 -07:00
Sebastiaan van Stijn
e11e119022 Deprecate "asynchronous" service create and service update
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit f32b90f463)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-05-01 16:42:22 -07:00
Daniel Nephin
a4e352ccb0 Fix cache miss when builtin build args are used.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-05-01 18:20:32 -04:00
Dave Tucker
8c532a6822 builder: Make builtin arg pruning work with > 1 arg
The previous implementation would error out with "Unexpected EOF" which
was caused by an underlying "array index out-of-bounds" error.
The root cause was deleting items from the same array that was being
iterated over. The iteration was unaware that the array size had
changed, resulting in an error.

The new implementation builds a new array instead of mutating a copy of
the old one.

Fixes: #32744

Signed-off-by: Dave Tucker <dt@docker.com>
2017-05-01 18:18:01 -04:00
Harald Albers
9986762bc7 Remove bash completion for run|create --init-path
Signed-off-by: Harald Albers <github@albersweb.de>
(cherry picked from commit b7a32e1780)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-05-01 15:02:04 -07:00
Victor Vieux
26d3cebaba Merge pull request #32929 from aaronlehmann/vendor-swarmkit-ae52d9d
[17.05] Vendor swarmkit ae52d9d - fix service port publishing regression
2017-05-01 14:54:58 -07:00
Aaron Lehmann
bcbfaec7c6 Vendor swarmkit ae52d9d
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-28 18:35:29 -07:00
Aaron Lehmann
a3600db8c5 Merge pull request #32905 from dperny/17.05.x-fix-agent-logs-segfault
[17.05.x] Cherry-pick: Fix a rare segfault that can occur in service logs
2017-04-28 18:34:08 -07:00
Drew Erny
fa4b810b41 Fix a rare segfault that can occur in service logs
Revendors swarmkit with a change that fixes a rare segfault that can
occur when following logs on a brand new service with bad bind mount
options.

Fixes docker/swarmkit#2147

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-04-28 11:43:00 -07:00
Victor Vieux
c57fdb2a14 bump to rc2
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-26 15:08:31 -07:00
Victor Vieux
eaffbcb25d Merge pull request #32848 from aaronlehmann/vendor-swarmkit-78db8a5
[17.05] Vendor swarmkit 78db8a5
2017-04-26 15:07:09 -07:00
Aaron Lehmann
99ad8af0f2 [17.05] Vendor swarmkit 78db8a5
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-26 10:58:25 -07:00
Victor Vieux
8414a0d02e Merge pull request #32819 from aboch/17.05.x
[17.05.x] Vendoring libnetwork @5d4e5de
2017-04-25 17:07:12 -07:00
Antonio Murdaca
df996a9581 daemon: relabel secrets path
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
(cherry picked from commit b11af7b2f6)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-25 16:41:51 -07:00
Aaron Lehmann
aea00bf675 client: Allow hex strings as source references for ImageTag
The source of a tag operation is allowed to be a 64-character hex
string. This means it should use ParseAnyReference for validation
instead of ParseNormalizedNamed.

This fixes a regression that happened in 17.04.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
(cherry picked from commit 4a0704cdbd)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-25 16:41:30 -07:00
Corey Farrell
7e06704af9 Fix bash-completion script.
bash-completion script for 'docker build --network' calls
__docker_plugins, the correct name for this function is
__docker_plugins_bundled.

Closes #32588

Signed-off-by: Corey Farrell <git@cfware.com>
(cherry picked from commit eede2056fe)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-25 16:41:14 -07:00
Harald Albers
d17b69c5ae Bash completion treats service logs as stable
Implements the following new CLI features:
- service logs is no longer experimental
- service logs also accepts task IDs

Signed-off-by: Harald Albers <github@albersweb.de>
(cherry picked from commit 47615c9b9b)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-25 16:40:59 -07:00
Brian Goff
2d8ebec4a8 Make sure plugin rootfs is unmounted on upgraded
In some cases, if a user specifies `-f` when disabling a plugin mounts
can still exist on the plugin rootfs.
This can cause problems during upgrade where the rootfs is removed and
may cause data loss.

To resolve this, ensure the rootfs is unmounted
before performing an upgrade.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
(cherry picked from commit 83f44d232d)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-25 16:40:22 -07:00
Antonio Murdaca
de8fbb4812 remove --init-path from client
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
(cherry picked from commit a18d103b5e)
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-25 16:39:55 -07:00
Alessandro Boch
dbd2c592df [17.05.x] Vendoring libnetwork @5d4e5de
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-25 11:19:51 -07:00
Vincent Demeester
4c29313d4c Merge pull request #32679 from aaronlehmann/test-wait-for-role-change
[17.05] integration-cli: Have TestSwarmJoinPromoteLocked wait for the role to…
2017-04-20 14:55:15 +02:00
Aaron Lehmann
2c09664574 integration-cli: Have TestSwarmJoinPromoteLocked wait for the role to change in the certificate
Since the certificate may be renewed multiple times, this check is
necessary.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
(cherry picked from commit 2b5ef9bfef)
2017-04-17 22:22:39 -07:00
Victor Vieux
caafc0d5aa Merge pull request #32627 from aaronlehmann/vendor-swarmkit-78685cf
[17.05] Vendor swarmkit 78685cf
2017-04-15 11:57:35 -05:00
Aaron Lehmann
2f24f3a90b Vendor swarmkit 78685cf
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-14 10:22:17 -07:00
Vincent Demeester
d1ab56925b Merge pull request #32581 from cyli/re-vendor-swarmkit-17.05
Re vendor swarmkit for 17.05.x
2017-04-13 09:56:01 +02:00
Ying Li
13eac920b4 Add tests to ensure we can add an external CA to the cluster without
error.

Signed-off-by: Ying Li <ying.li@docker.com>
2017-04-12 16:53:07 -07:00
Ying Li
b569b8674c Re-vendor swarmkit to a version which does not require all cluster updates
to include an external CA certificate when updating external CAs.

Signed-off-by: Ying Li <ying.li@docker.com>
2017-04-12 16:53:06 -07:00
Victor Vieux
2878a859b5 bump to 17.05.0-rc1
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-11 11:17:25 -07:00
Victor Vieux
a631e3b88a Merge pull request #32498 from thaJeztah/17.05.0-rc1-changelog
17.05.0 rc1 changelog
2017-04-11 11:16:20 -07:00
Vincent Demeester
1a8206ca1f Merge pull request #32521 from mkumatag/update_shellwords
Vendor package update github.com/mattn/go-shellwords
2017-04-11 18:27:37 +02:00
Sebastiaan van Stijn
29368ac533 Update changelog for 17.05.0-ce-rc1
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-11 18:16:49 +02:00
Vincent Demeester
595f1c4af2 Merge pull request #32520 from thaJeztah/remove-ubuntu-12.04-precise
Remove Ubuntu 12.04 "precise pangolin" from build scripts
2017-04-11 18:05:18 +02:00
Sebastiaan van Stijn
74742dbeff Merge pull request #32486 from dnephin/docs-for-arg-in-from
Add Dockerfile reference docs for using ARG in FROM
2017-04-11 17:45:02 +02:00
Daniel Nephin
3437715e20 Add Dockerfile reference docs for using ARG in FROM
Also fixed some examples of using `docker build` to clarify that the
positional argument is a directory, not a file.

Also fixed some terminology. Dockerfiles contain instructions, not directives or
commands.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-11 11:34:43 -04:00
Sebastiaan van Stijn
f30e94a495 Merge pull request #32505 from fcrisciani/conntrack_test
Conntrack flush support
2017-04-11 16:40:56 +02:00
Brian Goff
b93db34363 Merge pull request #32503 from dongluochen/fix_startperiod
fix gRPC serialization for healthcheck start-period
2017-04-11 10:19:16 -04:00
Sebastiaan van Stijn
8d25490145 Merge pull request #32523 from albers/typo-api-version-history
Fix typo in version-history.md
2017-04-11 15:44:41 +02:00
Harald Albers
269df77be2 Fix typo in version-history.md
Signed-off-by: Harald Albers <github@albersweb.de>
2017-04-11 15:39:01 +02:00
Manjunath A Kumatagi
3d6d9061e3 Vendor package update github.com/mattn/go-shellwords
Signed-off-by: Manjunath A Kumatagi <mkumatag@in.ibm.com>
2017-04-11 18:14:00 +05:30
Sebastiaan van Stijn
618d6bd0ce Remove Ubuntu 12.04 "precise pangolin" from build scripts
Ubuntu 12.04 will be EOL on April 28, after which it won't
receive updates and security fixes;
https://lists.ubuntu.com/archives/ubuntu-announce/2017-March/000218.html

This patch removes Ubuntu 12.04 from the build scripts

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-11 14:08:39 +02:00
Sebastiaan van Stijn
a258ef58d8 Merge pull request #32284 from aaronlehmann/fix-service-defaults
Improve default handling for "service create"
2017-04-11 13:06:53 +02:00
Vincent Demeester
5e9a0efec7 Merge pull request #32514 from albers/completion-multiple-stack-rm
Bash completion supports multiple stacks in `stack rm`
2017-04-11 11:31:39 +02:00
Akihiro Suda
8d53fb5172 Merge pull request #32511 from mkumatag/remove_mock_vendor
Remove unused github.com/golang/mock from vendor.conf
2017-04-11 17:54:35 +09:00
Harald Albers
dc0523313e Bash completion supports multiple stacks in stack rm
Signed-off-by: Harald Albers <github@albersweb.de>
2017-04-11 08:29:55 +02:00
Akihiro Suda
b764c471bf Merge pull request #32495 from dnephin/cleanup-builder-dispatcher-env
Remove Builder.dockerfile field
2017-04-11 14:50:55 +09:00
Manjunath A Kumatagi
30a1625002 Remove unused github.com/golang/mock
Signed-off-by: Manjunath A Kumatagi <mkumatag@in.ibm.com>
2017-04-11 10:20:16 +05:30
Flavio Crisciani
1c4286bcff Adding test for docker/docker#8795
When a container was being destroyed was possible to have
flows in conntrack left behind on the host.
If a flow is present into the conntrack table, the packet
processing will skip the POSTROUTING table of iptables and
will use the information in conntrack to do the translation.
For this reason is possible that long lived flows created
towards a container that is destroyed, will actually affect
new flows incoming to the host, creating erroneous conditions
where traffic cannot reach new containers.
The fix takes care of cleaning them up when a container is
destroyed.

The test of this commit is actually reproducing the condition
where an UDP flow is established towards a container that is then
destroyed. The test verifies that the flow established is gone
after the container is destroyed.

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-04-10 21:31:35 -07:00
Victor Vieux
a6746e6ca5 Merge pull request #31954 from darrenstahlmsft/GraphdriverReference
Windows: Fix reference counting in graphdriver
2017-04-10 20:23:15 -07:00
Victor Vieux
18ae574cab Merge pull request #32496 from tonistiigi/build-target
builder: add an option for specifying build target
2017-04-10 19:02:21 -07:00
Victor Vieux
17a3e4511d Merge pull request #32462 from dperny/service-logs-general-availability
Remove experimental from service logs
2017-04-10 18:30:20 -07:00
Victor Vieux
74093fe4ca Merge pull request #32092 from alfred-landrum/gdcaps
Let graphdrivers declare diff stream fidelity
2017-04-10 18:20:32 -07:00
Victor Vieux
3a9572ca14 Merge pull request #32110 from adshmh/30977-stack-rm-should-accept-multiple-labels
stack rm should accept multiple arguments
2017-04-10 18:19:59 -07:00
Flavio Crisciani
c16eb5f88a Vendoring Libnetwork library
- adding conntrack flush fix for docker/docker#8795

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-04-10 17:52:16 -07:00
Darren Stahl
7fab9b8a60 Windows: Fix reference counting in graphdriver
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-04-10 17:13:17 -07:00
Flavio Crisciani
e88bc31afa Vendoring Netlink library
- Added conntrack support

Signed-off-by: Flavio Crisciani <flavio.crisciani@docker.com>
2017-04-10 17:09:24 -07:00
Dong Chen
caab178509 fix gRPC serialization for healthcheck start-period
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2017-04-10 17:02:58 -07:00
Tonis Tiigi
33e07f41ad builder: add an option for specifying build target
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-10 16:21:43 -07:00
Victor Vieux
2c6bcf3ee7 Merge pull request #32497 from thaJeztah/master-update-changelog
[master] update changelog with 17.04.0 changes
2017-04-10 16:02:38 -07:00
Victor Vieux
3569dac3c0 bump to rc2
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
(cherry picked from commit 2f35d73b7d)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-11 00:58:34 +02:00
Vincent Demeester
9c2f8febaf Merge pull request #31848 from thaJeztah/17.04.0-changelog-updates
[17.04.x] deprecation and changelog updates
(cherry picked from commit f15f593751)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-11 00:57:37 +02:00
Victor Vieux
d55ec07acd Merge pull request #31811 from vieux/bump_17.04.0
bump 17.04.0-rc1
(cherry picked from commit b2fc918c5a)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-11 00:57:19 +02:00
Daniel Nephin
f3e205ddc1 Remove the dockerfile field from Builder.
Return dockerfile from parseDockerfile and pass the dockerfile nodes
as an arg

Strip unused arg from builder.NewBuilder.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-10 18:09:17 -04:00
Victor Vieux
7da7fc3ad0 Merge pull request #32492 from icecrime/update_gitdm_domain-map
Update gitdm domain-map
2017-04-10 14:54:12 -07:00
Arnaud Porterie (icecrime)
bfb6815f48 Update gitdm domain-map
Signed-off-by: Arnaud Porterie (icecrime) <arnaud.porterie@docker.com>
2017-04-10 14:28:27 -07:00
Brian Goff
5f7150059f Merge pull request #32485 from albers/completion-node-ls--filter
Add bash completion for `node ls --format`
2017-04-10 17:04:20 -04:00
Sebastiaan van Stijn
ec207ce186 Merge pull request #32116 from mkumatag/inspect_template
Adopt text/template in node inspect
2017-04-10 23:02:26 +02:00
Aaron Lehmann
bbe1202410 Make the CLI show defaults from the swarmkit defaults package
If no fields related to an update config or restart policy are
specified, these structs should not be created as part of the service,
to avoid hardcoding the current defaults.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-10 13:41:18 -07:00
Aaron Lehmann
1d274e9acf Change "service inspect" to show defaults in place of empty fields
This adds a new parameter insertDefaults to /services/{id}. When this is
set, an empty field (such as UpdateConfig) will be populated with
default values in the API response. Make "service inspect" use this, so
that empty fields do not result in missing information when inspecting a
service.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-10 13:41:16 -07:00
Drew Erny
306cfecc8c Remove experimental from service logs
Service logs API is now stable. Service logs now support all features,
except retrieving details provided to the log driver.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-04-10 13:40:45 -07:00
Sebastiaan van Stijn
129d1f7051 Merge pull request #32479 from aboch/vnd
Do not error out on serv bind deactivation if no sbox is found
2017-04-10 22:16:04 +02:00
Sebastiaan van Stijn
28334c1d82 Merge pull request #28403 from cpuguy83/logging_plugins
Implement plugins for logging drivers
2017-04-10 21:57:56 +02:00
Harald Albers
ef77f002e7 Add bash completion for node ls --format
Signed-off-by: Harald Albers <github@albersweb.de>
2017-04-10 12:57:32 -07:00
Sebastiaan van Stijn
9b2ac77f64 Merge pull request #31877 from albers/completion-update--cpus
Add bash completion for `update --cpus`
2017-04-10 21:43:16 +02:00
Vincent Demeester
778e32a2fa Merge pull request #31236 from tonistiigi/docker-stdin
build: accept -f - to read Dockerfile from stdin
2017-04-10 20:14:54 +02:00
Sebastiaan van Stijn
5b1cae2271 Merge pull request #31148 from yongtang/31032-NanoCPU-update
Add `--cpus` support for `docker update`
2017-04-10 20:02:15 +02:00
Vincent Demeester
4460312ce1 Merge pull request #30740 from yongtang/29999-prune-filter-label
Add `label` filter for `docker system prune`
2017-04-10 19:38:01 +02:00
Daniel Nephin
4d9e32a08e Merge pull request #31352 from dnephin/allow-arg-in-fromt
[dockerfile] Allow ARG in FROM
2017-04-10 13:23:40 -04:00
Brian Goff
27bd6842f8 Implement plugins for logging drivers
Logging plugins use the same HTTP interface as other plugins for basic
command operations meanwhile actual logging operations are handled (on
Unix) via a fifo.

The plugin interface looks like so:

```go
type loggingPlugin interface {
  StartLogging(fifoPath string, loggingContext Context) error
  StopLogging(fifoPath)
```

This means a plugin must implement `LoggingDriver.StartLogging` and
`LoggingDriver.StopLogging` endpoints and be able to consume the passed
in fifo.

Logs are sent via stream encoder to the fifo encoded with protobuf.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-04-10 13:17:20 -04:00
Daniel Nephin
a5b9d99b9e Merge pull request #32427 from adshmh/add-unit-tests-to-cli-command-idresolver-package
Added unit tests to the cli/command/idresolver package
2017-04-10 12:41:09 -04:00
Alessandro Boch
2418f25767 Do not error out on serv bind deactivation if no sbox is found
- If the nw sbox is not there, then there is nothing to deactivate.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-10 09:13:41 -07:00
Brian Goff
8fabe07982 Merge pull request #32450 from miaoyq/fixed-a-bug-of-multireader
Reset the positions for all readers of multireader before reading the data
2017-04-10 11:39:47 -04:00
Vincent Demeester
a48f4257f0 Merge pull request #32084 from simonferquel/multi-stage-builds-windows
Multi stage builds cleanup for Windows
2017-04-10 17:36:36 +02:00
Sebastiaan van Stijn
61d3ddfe78 Merge pull request #32285 from dmcgowan/revert-fix-for-flaky-misconfigured-token-test
Revert change to TestPushMisconfiguredTokenServiceResponseError
2017-04-10 16:34:58 +02:00
Brian Goff
d291888047 Merge pull request #32469 from darkowlzz/32314-fix-default-init-binary-value
Fix missing Init Binary in docker info output
2017-04-10 09:55:23 -04:00
Doug Davis
1727e8179c Merge pull request #32475 from mikecasas/patch-2
Added word to documentation
2017-04-10 09:28:12 -04:00
Mike Casas
eb6a3e8361 Added word to documentation
Improved documentation by adding word for better sentence structure.

Signed-off-by: Mike Casas <mkcsas0@gmail.com>
2017-04-10 09:14:01 -04:00
Vincent Demeester
2ba9783d1a Merge pull request #32362 from tonistiigi/multi-stage-build-docs
Add docs for multi-stage builds
2017-04-10 14:26:08 +02:00
Manjunath A Kumatagi
5dbd6afb51 Adopt text/template in node inspect
Signed-off-by: Manjunath A Kumatagi <mkumatag@in.ibm.com>
2017-04-10 17:47:15 +05:30
Sunny Gogoi
17b1288760 Fix missing Init Binary in docker info output
- Moved DefaultInitBinary from daemon/daemon.go to
daemon/config/config.go since it's a daemon config and is referred in
config package files.
- Added condition in GetInitPath to check for any explicitly configured
DefaultInitBinary. If not, the default value of DefaultInitBinary is
returned.
- Changed all references of DefaultInitBinary to refer to the variable
from new location.
- Added TestCommonUnixGetInitPath to test for the various values of
GetInitPath.

Fixes #32314

Signed-off-by: Sunny Gogoi <indiasuny000@gmail.com>
2017-04-10 16:54:07 +05:30
Sebastiaan van Stijn
b0831acb09 Merge pull request #32062 from aaronlehmann/change-network-attachments
Support service network attachment changes
2017-04-10 12:49:28 +02:00
Sebastiaan van Stijn
2daa2b894c Merge pull request #31364 from adshmh/30935-use-encrypted-client-certificate-to-connect-to-a-docker-host
use an encrypted client certificate to connect to a docker daemon
2017-04-10 10:42:01 +02:00
Tonis Tiigi
877ac98e44 Add docs for named build stages
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-09 20:40:50 -07:00
Madhu Venugopal
9f27f0dcd3 Merge pull request #32447 from aboch/vnd
Fix container no ipv6 when run container on --network=host
2017-04-09 15:07:58 -07:00
Sebastiaan van Stijn
9585d0ea19 Merge pull request #32055 from FabianLauer/so-counters
Update stackoverflow question count
2017-04-09 23:05:09 +02:00
Fabian Lauer
012e5c2d1b Update stackoverflow.com install counters
There's ~27k questions by now, not just 7k  😉

Signed-off-by: Fabian Lauer <kontakt@softwareschmiede-saar.de>

README.md & CONTRIBTUTING.md: Use word `thousand` instead of numbers

27000 -> 27 thousand

Signed-off-by: Fabian Lauer <kontakt@softwareschmiede-saar.de>

README+CONTRIB: No specific number of SO questions

Signed-off-by: Fabian Lauer <kontakt@softwareschmiede-saar.de>

CONTRIBUTING.md: Remove unnecessary word

Signed-off-by: Fabian Lauer <kontakt@softwareschmiede-saar.de>
2017-04-09 09:19:06 +02:00
Sebastiaan van Stijn
51aa2a226e Merge pull request #32436 from thaJeztah/refactor-tiny-version-parsing
Refactor tiny version parsing
2017-04-08 17:36:40 +02:00
Brian Goff
46c9df652d Merge pull request #32448 from aaronlehmann/vendor-swarmkit-d5232280
Vendor swarmkit d5232280
2017-04-08 09:42:52 -04:00
Sebastiaan van Stijn
72eddf4258 Refactor "init" version parsing, and add unit-test
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-08 11:28:37 +02:00
Yanqiang Miao
fd06bd6f96 Reset the position of all readers before reading the data
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-04-08 13:38:15 +08:00
Arash Deshmeh
32486385e6 Added unit tests to the cli/command/idresolver package
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-04-07 23:23:39 -04:00
Victor Vieux
fc6d8fb94d Merge pull request #32409 from dnephin/support-consistency-params-in-compose
Add support for volume consistency in compose format
2017-04-07 17:26:50 -07:00
Aaron Lehmann
ff06898930 Vendor swarmkit d5232280
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-07 17:10:16 -07:00
Alessandro Boch
010e5a228a Add test over ipv6 and container run in host network
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-07 16:58:20 -07:00
Anusha Ragunathan
488ad693c0 Merge pull request #32103 from vieux/improve_set_docs
clarify docker plugin set docs
2017-04-07 16:46:50 -07:00
Aaron Lehmann
56f1da77c3 Show network names in "docker service inspect --pretty"
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-07 16:46:25 -07:00
Aaron Lehmann
b8e70747c6 cli: Deploying a compose file must use TaskTemplate.Networks
This is the non-deprecated field, and the one that can be changed in a
service update.

Since old daemon versions don't allow migrating from one field to the
other, make this conditional on the API version.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-07 16:46:25 -07:00
Aaron Lehmann
0f2669a638 cli: Allow service's networks to be updated
Resolve networks IDs on the client side.

Avoid filling in deprecated Spec.Networks field.

Sort networks in the TaskSpec for update stability.

Add an integration test for changing service networks.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-07 16:46:25 -07:00
Sebastiaan van Stijn
091b5e68ea Merge pull request #32339 from aluzzardi/selinux
services: Add support for Credential Spec and SELinux
2017-04-08 01:37:17 +02:00
Alessandro Boch
60c36f88a5 Vendoring libnetwork @ab8f7e6
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-07 16:35:29 -07:00
Victor Vieux
a412ad41a5 clarify docker plugin set docs
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-07 16:35:05 -07:00
Brian Goff
4a1a64c677 Merge pull request #32154 from dperny/refactor-logs
Refactor logs and support service logs with TTY
2017-04-07 18:06:50 -04:00
Daniel Nephin
239c53bf83 Refactor BuildArgs
Add MetaArgs for ARG that occur before the first FROM
Integration test for these cases.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-07 17:57:47 -04:00
Daniel Nephin
9b4aa7629c Fix arg in from when arg is not defined
Add mock builder backend
Add tests for ARG in FROM

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-07 17:57:47 -04:00
Daniel Nephin
f0a9c2e3f4 Allow ARG to come before FROM to support variables in FROM.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-07 17:57:47 -04:00
Evan Hazlett
b3a66a4a28 Merge pull request #32435 from thaJeztah/add-ubuntu-17.04-zesty
Add Ubuntu 17.04 Zesty Zapus
2017-04-07 14:50:56 -05:00
Andrea Luzzardi
89a995a9d7 services: Add support for Credential Spec and SELinux
- Defined "normalized" type for Credential Spec and SELinux
- Added --credential-spec to docker service create & update
- SELinux is API only at the time

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2017-04-07 11:30:54 -07:00
Vincent Demeester
87562af45b Merge pull request #32283 from aboch/clearingress
Daemon to take care of ingress cleanup on cluster leave and graceful shutdown
2017-04-07 20:09:27 +02:00
Daniel Nephin
ae27355b09 Add support for volume consistency in compose format.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-07 13:23:33 -04:00
Simon Ferquel
b0e7588873 Test and fix forbidden path for COPY --from on Windows
Paths resolving to c:\ or c:\windows are forbidden

Replaced the obscure (and non-working) regex with a simple case
insensitive comparison to the black listed paths (we should forbid c:\,
c:\windows but not d:\)

Also, add a test ensuring paths are case insensitive on windows

Also, made sure existing multi-staged build tests pass on windows

Signed-off-by: Simon Ferquel <simon.ferquel@docker.com>
2017-04-07 18:00:36 +02:00
Daniel Nephin
9fe781a333 Merge pull request #32430 from allencloud/add-hosts-example-for-serviceSpec-in-swagger-yml
add hosts example for serviceSpec in swagger.yml
2017-04-07 11:47:36 -04:00
Sebastiaan van Stijn
984d99e19c Fix tini version parsing
Invalid version strings for the init (tini)
binary were still accepted, which lead to (e.g.)

"hello world"

Being used as "vhello world"

This makes the version parsing slightly stricter

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-07 17:12:07 +02:00
Vincent Demeester
8b9d54c084 Merge pull request #32289 from adshmh/add-unit-tests-for-cli-command-secret-package
add unit tests for package cli/command/secret
2017-04-07 15:26:40 +02:00
Sebastiaan van Stijn
a8c714a7c0 Add Ubuntu 17.04 Zesty Zapus
Ubuntu 17.04 will be released soon http://releases.ubuntu.com/zesty/

Note that this is a short-term release, so will
EOL (and removed again) in 9 months

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-07 13:58:44 +02:00
allencloud
412099baa9 add hosts example for serviceSpec in swagger.yml
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-04-07 17:06:52 +08:00
Vincent Demeester
daaf9ddfa9 Merge pull request #32425 from tabakhase/patch-1
Fix install.sh of get.docker.com for debian-sudo
2017-04-07 10:08:28 +02:00
Arash Deshmeh
603dd8b3b4 use an encrypted client certificate to connect to a docker daemon
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-04-07 01:50:51 -04:00
Arash Deshmeh
7180f887ea vendor docker/go-connections to include the enhacement for decrypting keys
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-04-07 01:50:50 -04:00
Tabakhase
a704d06d58 Fix install.sh of get.docker.com for debian-sudo
repair sudo call on key-add for install / https://get.docker.com/

fix #32424

Signed-off-by: Tabakhase <github@tabakhase.com>
2017-04-07 05:07:22 +02:00
Brian Goff
3de58eb2bc Merge pull request #30261 from aaronlehmann/rollout-mode
swarm: Add update/rollback order
2017-04-06 22:41:11 -04:00
Brian Goff
7d8bf5d177 Merge pull request #30669 from catinthesky/issue30580
Fixing issue of docker top command failure when dealing with -m option
2017-04-06 21:14:26 -04:00
Drew Erny
1044093bb0 refactor logs and support service logs /w tty
Refactor container logs system to make communicating log messages
internally much simpler. Move responsibility for marshalling log
messages into the REST server. Support TTY logs. Pave the way for fixing
the ambiguous bytestream format. Pave the way for fixing details.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-04-06 17:54:11 -07:00
Aaron Lehmann
6763641d69 Add integration test for START_FIRST update order
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-06 17:23:36 -07:00
Aaron Lehmann
9b54994a8a Add support for update order
This parameter controls the order of operations when rolling out an
update task. Either the old task is stopped before starting the new one,
or the new task is started first, and the running tasks will briefly
overlap.

This commit adds Rollout to the API, and --update-order / --rollback-order
flags to the CLI.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-06 17:23:36 -07:00
Anusha Ragunathan
ad416fc311 Merge pull request #32412 from anusha-ragunathan/plugin-enable
Add an initial smaller sleep time before net dialing plugin socket.
2017-04-06 16:38:41 -07:00
Yong Tang
6102243692 Add --cpus support for docker update
This fix tries to address the issue raised in 31032 where it was
not possible to specify `--cpus` for `docker update`.

This fix adds `--cpus` support for `docker update`. In case both
`--cpus` and `--cpu-period/--cpu-quota` have been specified,
an error will be returned.

Related docs has been updated.

Integration tests have been added.

This fix fixes 31032.

This fix is related to 27921, 27958.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-06 15:40:12 -07:00
Brian Goff
30cdabd13f Merge pull request #32407 from dnephin/fix-rw-mode-compose-files
Support rw as a volume option in compose file
2017-04-06 16:24:20 -04:00
Anusha Ragunathan
106a9a7d72 Merge pull request #32391 from aaronlehmann/no-stack-traces
api: Don't include stack traces with errors
2017-04-06 13:10:34 -07:00
Sebastiaan van Stijn
e49652c6f8 Merge pull request #31867 from vieux/fix_bash_warning
fix bash error in release.sh
2017-04-06 21:45:00 +02:00
Tianon Gravi
a7ddc9d7e6 Update SKIP_RELEASE_BUILD to only check for the string "1" (so it has to be exactly "SKIP_RELEASE_BUILD=1" to skip the release build)
Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-04-06 11:56:26 -07:00
Anusha Ragunathan
891f9acb7b Add an initial smaller sleep time before net dialing plugin socket.
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-04-06 11:16:35 -07:00
Daniel Nephin
8cd6c30a48 Upadte archive.ReplaceFileTarWrapper() to not expect a sorted archive
Improve test coverage of ReplaceFileTarWrapper()

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-06 13:36:34 -04:00
Sebastiaan van Stijn
c4010e257f Merge pull request #28938 from elifa/master
Grace period option to health checks.
2017-04-06 19:23:56 +02:00
Yong Tang
7025247324 Add label filter for docker system prune
This fix tries to address the issue raised in 29999 where it was not
possible to mask these items (like important non-removable stuff)
from `docker system prune`.

This fix adds `label` and `label!` field for `--filter` in `system prune`,
so that it is possible to selectively prune items like:
```
$ docker container prune --filter label=foo

$ docker container prune --filter label!=bar
```

Additional unit tests and integration tests have been added.

This fix fixes 29999.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-06 09:11:25 -07:00
Tõnis Tiigi
e4c608abe9 Merge pull request #32401 from ijc25/gotty-terminfo-fixes
Revendor github.com/Nvveen/Gotty for github.com/Nvveen/Gotty#2
2017-04-06 09:01:30 -07:00
Daniel Nephin
062830535d Support rw as a volume option in compose file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-06 10:32:35 -04:00
Brian Goff
fa3e2d5ab9 Merge pull request #32387 from Microsoft/jjh/tidystat
Tidy pkg\system *stat* functions
2017-04-06 08:40:27 -04:00
Vincent Demeester
f5d881b835 Merge pull request #32364 from aaronlehmann/preserve-env-order
cli: Preserve order of environment variables
2017-04-06 14:25:29 +02:00
Ian Campbell
b7ced33036 Revendor github.com/Nvveen/Gotty for github.com/Nvveen/Gotty#2
This fixes https://github.com/docker/docker/issues/32400

We were already actually vendoring from github.com/ijc25/Gotty in order to
pickup github.com/Nvveen/Gotty#1. github.com/ijc25/Gotty#master now contains
merges of both of those upstream PRs.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-04-06 12:19:32 +01:00
Elias Faxö
e401f63735 Added start period option to health check.
Signed-off-by: Elias Faxö <elias.faxo@gmail.com>
2017-04-06 12:35:34 +02:00
Sebastiaan van Stijn
5b18e7c396 Merge pull request #32395 from prertik/master
updated experimental/Readme.md with fixed deadlinks
2017-04-06 09:01:27 +02:00
Pratik Karki
718847c742 updated Readme.md with fixed deadlinks
Signed-off-by: prertik <prertik@outlook.com>
2017-04-06 12:31:18 +05:45
Akihiro Suda
2aed764baf Merge pull request #32392 from aluzzardi/revendor-swarmkit
[master] Re-vendor docker/swarmkit to d2e48a332063ccd4ea26b6262ee717de997de560
2017-04-06 13:18:17 +09:00
Brian Goff
9691170de9 Merge pull request #32383 from Microsoft/jjh/removeunused
Windows: Remove unused process_windows.go
2017-04-05 23:32:40 -04:00
Andrea Luzzardi
367b57d985 Re-vendor docker/swarmkit to d2e48a332063ccd4ea26b6262ee717de997de560
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2017-04-05 18:49:23 -07:00
Aaron Lehmann
7381fffb2f api: Don't include stack traces with errors
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-05 18:13:58 -07:00
Daniel Nephin
56bf6de9f7 Factor out adding dockerfile from stdin.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-05 19:42:31 -04:00
David Sheets
3f6dc81e10 build: accept -f - to read Dockerfile from stdin
Heavily based on implementation by David Sheets

Signed-off-by: David Sheets <sheets@alum.mit.edu>
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-05 19:42:31 -04:00
Alessandro Boch
6f4bb796dd Daemon to take care of ingress cleanup on leave & shutdown
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-05 16:31:43 -07:00
Alessandro Boch
bf5bebdfa0 Vendoring libnetwork @f3c4ca8
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-04-05 16:31:28 -07:00
Derek McGowan
5ff82cffee Revert retry count change
Allowing the retries to go up to 10 causes the test to always
hit the check against ensuring the retry wait went up to 15 seconds.
Additionally we have the max download attempts in the code set to
5. This change did not protect against using this test to expose
a problem in the underlying code. Remove checks for retry since
there may be additional requests before the upload.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-04-05 16:07:43 -07:00
John Howard
16c1ede79c Tidy pkg\system *stat* functions
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-04-05 16:01:53 -07:00
Vincent Demeester
945a119c8a Merge pull request #32251 from AkihiroSuda/run-mount
cli: add `--mount` to `docker run`
2017-04-05 22:34:47 +02:00
Sebastiaan van Stijn
7b5c179ef4 Merge pull request #32382 from mstanleyjones/master
Edits to CLI reference
2017-04-05 21:04:06 +02:00
Misty Stanley-Jones
6d3eecd8cf Edits to CLI reference
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-04-05 11:27:09 -07:00
John Howard
329daee5ef Windows: Remove unused process_windows.go
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-04-05 11:04:34 -07:00
Sebastiaan van Stijn
833f1f4424 Merge pull request #30424 from yongtang/30376-node-ls-format
Add `--format` for `docker node ls`
2017-04-05 16:53:54 +02:00
Brian Goff
b7c3b312c9 Merge pull request #32268 from cpuguy83/volume_err_obfuscate
don't obfuscate error during volume create
2017-04-05 09:05:10 -04:00
Arash Deshmeh
ff0899ad2f stack rm should accept multiple arguments
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-04-05 01:08:37 -04:00
Akihiro Suda
77fe35b3b9 cli: add --mount to docker run
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-04-05 04:52:08 +00:00
Aaron Lehmann
b426741c15 cli: Preserve order of environment variables
Unless we are adding or removing environment variables, their order
shouldn't be changed. This makes it look like the service's TaskSpec has
changed relative to the old version of the service, and containers need
to be redeployed.

The existing code always rebuilds the list of environment variables by
converting them to a map and back, but there's no reason to do this if
no environment variables are being added.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-04 18:16:57 -07:00
Sebastiaan van Stijn
8d96619e5a Merge pull request #32358 from mstanleyjones/fix-liquid
Escape some double brackets
2017-04-05 00:35:45 +02:00
Victor Vieux
b9e9518bfe Merge pull request #32352 from KarthikNayak/32174
Docs: Add the flag `--api-enable-cors` to deprecated.md
2017-04-04 15:22:04 -07:00
Vincent Demeester
5f14f4a949 Merge pull request #32350 from vdemeester/start-stack-trap-earlier
Start the stack trap earlier for daemon
2017-04-04 23:56:36 +02:00
Vincent Demeester
cb0c905b6a Merge pull request #32346 from thaJeztah/dont-warn-on-make-install
do not show errors on make install
2017-04-04 23:55:54 +02:00
Victor Vieux
2e96c1739b Merge pull request #32063 from tonistiigi/named-contexts
Add support for named build stages
2017-04-04 12:53:59 -07:00
Yong Tang
7328ae12cc Add hidden placeholder of .Self for docker node ls --format
This commit adds a hidden placeholder of `.Self` for
`docker node ls --format` so that if the node is the same
as the current docker daemon, then a `*` is outputed.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-04 12:46:44 -07:00
Arash Deshmeh
243a8e69ff added unit tests for package cli/command/secret
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-04-04 15:35:08 -04:00
Yong Tang
32e21ecbfe Add --format for docker node ls
This fix tries to address the comment https://github.com/docker/docker/pull/30376#discussion_r97465334
where it was not possible to specify `--format` for `docker node ls`. The `--format` flag
is a quite useful flag that could be used in many places such as completion.

This fix implements `--format` for `docker node ls` and add `nodesFormat` in config.json
so that it is possible to specify the output when `docker node ls` is invoked.

Related documentations have been updated.

A set of unit tests have been added.

This fix is related to #30376.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-04 11:26:35 -07:00
Misty Stanley-Jones
622bdadfd7 Escape some double brackets
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-04-04 10:06:32 -07:00
Tonis Tiigi
79ccb3478f Add a multi stage trusted build testcase
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-04 09:56:00 -07:00
Vincent Demeester
f6b7dc9837 Merge pull request #32347 from cpuguy83/fix_volumestore_panic
Fix panic on error looking up volume driver
2017-04-04 18:55:13 +02:00
Tõnis Tiigi
6abbc933ae Merge pull request #31750 from dnephin/some-builder-cleanup
Fix `docker build --label` when the label includes single quotes and a space
2017-04-04 09:37:00 -07:00
Tonis Tiigi
672ea30a94 Add support for FROM using named block
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-04 09:34:28 -07:00
Tonis Tiigi
73b4b8ed7f Implicit copy-from with reference
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-04 09:34:28 -07:00
Tonis Tiigi
87512bbc84 Add named context support
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-04-04 09:34:28 -07:00
Sebastiaan van Stijn
fe4d7db1ec Merge pull request #30813 from yongtang/30232-service-ls-ports
Add `PORTS` field for `docker service ls` (`ingress`)
2017-04-04 17:04:27 +02:00
Karthik Nayak
85f92ef359 Docs: Add the flag --api-enable-cors to deprecated.md
Signed-off-by: Karthik Nayak <Karthik.188@gmail.com>
2017-04-04 20:04:42 +05:30
Vincent Demeester
94d44066f3 Start the stack trap earlier for daemon
That way we can get stack dump earlier if there is something that
locks the daemon during start/restore phase.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-04-04 16:23:14 +02:00
Vincent Demeester
d7e7aa67ea Merge pull request #32274 from mlaventure/fix-healthcheck-rm-race
Ensure health probe is stopped when a container exits
2017-04-04 16:14:10 +02:00
Brian Goff
5baf8a4118 Fix panic on error looking up volume driver
(-‸ლ)

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-04-04 09:22:01 -04:00
Sebastiaan van Stijn
2443decdd5 do not show errors on make install
When running "make install" in a build container,
docker is not installed the first time it's
run, causing these errors to appear;

    $ make install
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    KEEPBUNDLE=1 hack/make.sh install-binary

This patch checks if docker exists, and if not
just continues silently :)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-04 15:19:50 +02:00
Sebastiaan van Stijn
6b06cc54d0 Merge pull request #29099 from dattatrayakumbhar/28755_Err_Duplicate_checkpoint
#28755: [experimental] Proper error handling for checkpoint conflict
2017-04-04 14:40:20 +02:00
Vincent Demeester
93ffbb76c3 Merge pull request #32333 from dnephin/fix-endpoint-mode
Fix endpoint mode loading from Compose file in stack deploy
2017-04-04 14:12:26 +02:00
Sebastiaan van Stijn
b1dcf5e9a5 Merge pull request #32288 from pacoxu/patch-2
fix documentation error: volume-opt in service create
2017-04-04 13:50:05 +02:00
Sebastiaan van Stijn
ebdb7a4a1e Merge pull request #32342 from thaJeztah/master-fix-changelog
[master] fix version of containerd in changelog
2017-04-04 10:17:30 +02:00
Victor Vieux
c3639d1126 Merge pull request #32298 from thaJeztah/fix-changelog
[17.03.x] fix version of containerd in changelog
(cherry picked from commit bcb63f3677)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-04 09:45:03 +02:00
Victor Vieux
170be9c267 Merge pull request #32015 from dperny/service-logs-support-task-logs
Add Support for Service Task Logs
2017-04-04 00:15:13 -07:00
dattatrayakumbhar04
d400518f4d 28755: Proper error handling for checkpoint conflict
Signed-off-by: Dattatrayakumbhar <dattatraya.kumbhar@gslab.com>
2017-04-04 05:18:19 +00:00
Drew Erny
d330dc3223 Add support for task and arbitrary combo logs
Refactored the API to more easily accept new endpoints. Added REST,
client, and CLI endpoints for getting logs from a specific task. All
that is needed after this commit to enable arbitrary service log
selectors is a REST endpoint and handler.

Task logs can be retrieved by putting in a task ID at the CLI instead of
a service ID.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-04-03 18:40:54 -07:00
Yong Tang
c877c7b2bf Add PORTS field for docker service ls (ingress)
This fix is related to 30232 wherw `docker service ls`
does not show `PORTS` information like `docker service ps`.

This fix adds `PORTS` fields for services that publish
ports in ingress mode.

Additional unit tests cases have been updated.

This fix is related to 30232.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-04-03 18:40:15 -07:00
Brian Goff
53c7995c8b Merge pull request #32312 from thaJeztah/unit-test-remove-errormessage
create unit tests for rm (running, paused, restarting) errormessages
2017-04-03 21:05:30 -04:00
Brian Goff
3b80094665 don't obfuscate error during create
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-04-03 21:04:40 -04:00
Victor Vieux
21ec12b967 Merge pull request #31144 from aaronlehmann/synchronous-service-commands
Synchronous service create and service update
2017-04-03 17:44:03 -07:00
Daniel Nephin
25f00866e3 Fix endpoint mode in Compose format.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-04-03 17:51:31 -04:00
Sebastiaan van Stijn
d61c5882cf Merge pull request #32329 from albers/completion--awslogs-create-group
Improve bash completion for `--log-opt awslogs-create-group`
2017-04-03 23:15:05 +02:00
Vincent Demeester
b0235fd515 Merge pull request #31827 from erikstmartin/master
Add mount point to cgroup root when initializing cgroup paths for cpu.rt_runtime
2017-04-03 22:39:49 +02:00
Vincent Demeester
3fb84ca2f5 Merge pull request #32076 from tmp6154/master
Bump up nproc in TestExecUlimits
2017-04-03 22:30:28 +02:00
Sebastiaan van Stijn
2759194d44 create unit tests for rm (running, paused, restarting) errormessages
These integration tests were basically testing if a
decent error message was printed when attempting
to remove a running, paused, or restarting container.

Moving these tests to a unit-test to make the tests
not flaky (especially on the "restarting" container
test).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-03 21:58:05 +02:00
Harald Albers
a70ca85891 Improve bash completion for --log-opt awslogs-create-group
Add completion for the possible values `true`|`false`, correct sort order.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-04-03 11:29:31 -07:00
Kenfe-Mickael Laventure
04ae628ca5 Ensure health probe is stopped when a container exits
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-04-03 09:57:04 -07:00
Aaron Lehmann
330a003533 Synchronous service create and service update
Change "service create" and "service update" to wait until the creation
or update finishes, when --detach=false is specified. Show progress bars
for the overall operation and for each individual task (when there are a
small enough number of tasks), unless "-q" / "--quiet" is specified.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-04-03 09:46:01 -07:00
Brian Goff
9518a71cef Merge pull request #32072 from coolljt0725/fix_log_dead
Fix docker logs a dead container
2017-04-03 10:42:32 -04:00
Vincent Demeester
d9c3c1928d Merge pull request #31989 from aaronlehmann/node-ps-outside-swarm-mode
cli: Wrong error message from "node ps" outside swarm mode
2017-04-03 16:15:24 +02:00
Vincent Demeester
9f17b97820 Merge pull request #30907 from Hyzhou/master
Add Aliyun mirror support to hack/install.sh
2017-04-03 16:13:59 +02:00
Vincent Demeester
7f90590841 Merge pull request #32307 from jlhawn/update_TestRmRestartingContainer
Fix Flakiness in TestRmRestartingContainer
2017-04-03 15:48:19 +02:00
Sebastiaan van Stijn
93955bd215 Merge pull request #32305 from albers/completion-secret-ls--format
Add bash completion for `secret ls --format`
2017-04-03 15:43:12 +02:00
Antonio Murdaca
2c68e026da Merge pull request #32012 from cpuguy83/remove_uneeded_relabel
Remove undeeded and broken selinux relabel call
2017-04-03 15:25:23 +02:00
Vincent Demeester
022552ac87 Merge pull request #31889 from cpuguy83/all_the_pprof
Use generic handler for pprof profile lookups
2017-04-03 15:14:12 +02:00
Vitaly Ostrosablin
d4e132f84d Change TestExecUlimits to use nofile instead of nproc
Test used to check whether ulimits applied by docker are in effect by
setting up nproc. However, in some environments (e.g. inside Virtuozzo
Containers), number of processes is higher and testcase fails. Hence, we
instead change testcase to check ulimits by setting nofile limit instead
of nproc.

Signed-off-by: Vitaly Ostrosablin <vostrosablin@virtuozzo.com>
2017-04-03 10:43:43 +03:00
Josh Hawn
e979cf7464 Fix Flakiness in TestRmRestartingContainer
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2017-04-02 17:45:30 -07:00
Harald Albers
f844e57315 Add bash completion for secret ls --format
Signed-off-by: Harald Albers <github@albersweb.de>
2017-04-02 15:32:33 -07:00
Sebastiaan van Stijn
6311e9fc9d Merge pull request #32027 from sdurrheimer/zsh-completion-ps-format
Add zsh completion for 'docker {node,service,stack} ps --format'
2017-04-02 23:38:22 +02:00
Vincent Demeester
33aae7c5cc Merge pull request #28723 from dattatrayakumbhar/filter-on-network-id
28722: List of containers with networkID filter is not working
2017-04-02 21:06:09 +02:00
Justin Cormack
c526588c79 Merge pull request #32279 from darrenstahlmsft/WindowsRestore
Windows: Wait to delete container when restoring
2017-04-02 18:38:12 +01:00
Sebastiaan van Stijn
2347020706 Merge pull request #32304 from thaJeztah/master-cherry-pick-32265
[master] cherry-pick Updated legacy_plugins.md to include BeeGFS plugin
2017-04-02 12:31:47 +02:00
Sebastiaan van Stijn
5df76be508 Merge pull request #32265 from breuner/patch-1
Updated legacy_plugins.md to include BeeGFS plugin
(cherry picked from commit d0057bd12d)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-02 12:27:54 +02:00
Vincent Demeester
16be072793 Merge pull request #32271 from krasi-georgiev/update-containerd-9048e5e50717ea4497b757314bad98ea3763c145
update containerd to 9048e5e50717ea4497b757314bad98ea3763c145
2017-04-02 11:02:08 +02:00
Sebastiaan van Stijn
75a7eca958 Merge pull request #32286 from vieux/add_ehazlett_and_johnstep_random_assign
add ehazlett and johnstep to random_assign
2017-04-02 01:16:57 +02:00
Victor Vieux
4fe11d49ca add ehazlett and johnstep to random_assign
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-04-02 01:15:19 +02:00
Sebastiaan van Stijn
571e403168 Merge pull request #32282 from mstanleyjones/improve-attach-desc
Clarify meaning of docker attach
2017-04-01 20:52:26 +02:00
Sebastiaan van Stijn
a96de091d6 Merge pull request #32244 from Microsoft/jjh/panicfix
Windows - fix panic and stderr output when service
2017-04-01 20:00:59 +02:00
徐俊杰
775c66a58c fix documentation error: volume-opt in service create
Signed-off-by: pacoxu<paco.xu@daocloud.io>
Signed-off-by: pacoxu <paco.xu@daocloud.io>
2017-04-01 11:54:09 +08:00
Victor Vieux
3dfce9fbb8 Merge pull request #31022 from jmzwcn/issue30994
docker version output is not consistent when there are downgrades or incompatibilities #30994
2017-03-31 15:55:03 -07:00
Victor Vieux
e45483964f Merge pull request #31800 from ripcurld0/checkpoint_ls
Use formatter in docker checkpoint ls
2017-03-31 15:54:22 -07:00
Krasi Georgiev
d1a0afacc2 update criu to 2.12.1
Signed-off-by: Krasi Georgiev <krasi@vip-consult.solutions>
2017-04-01 00:54:28 +03:00
Misty Stanley-Jones
1922eac4cc Clarify meaning of docker attach
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-03-31 13:22:21 -07:00
Kenfe-Mickaël Laventure
3d31198cda Merge pull request #31599 from ripcurld0/diff_cmd_format
Use formatter in docker diff
2017-03-31 11:19:41 -07:00
Darren Stahl
dbdc8bbee4 Wait to delete container when restoring on Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-03-31 10:59:00 -07:00
Vincent Demeester
d57825cb1e Merge pull request #31183 from thaJeztah/log-upgrade-rollback-error
log error if restoring plugin fails
2017-03-31 19:44:31 +02:00
Aaron Lehmann
91c86c7e26 Add support for UpToDate filter, for internal use
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-31 10:01:32 -07:00
John Howard
141a83b820 Windows - fix panic and stderr
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-03-31 09:51:50 -07:00
Krasi Georgiev
a3c2ccacd0 update containerd to 9048e5e50717ea4497b757314bad98ea3763c145
Signed-off-by: Krasi Georgiev <krasi@vip-consult.solutions>
2017-03-31 19:47:05 +03:00
Vincent Demeester
9f9cc221bd Merge pull request #31634 from AkihiroSuda/clarify-env-without-value
api: clarify that Env var without `=` is removed from the environment
2017-03-31 17:34:32 +02:00
Alfred Landrum
aa96c3176b Let graphdrivers declare diff stream fidelity
This allows graphdrivers to declare that they can reproduce the original
diff stream for a layer. If they do so, the layer store will not use
tar-split processing, but will still verify the digest on layer export.
This makes it easier to experiment with non-default diff formats.

Signed-off-by: Alfred Landrum <alfred.landrum@docker.com>
2017-03-31 08:32:00 -07:00
Brian Goff
1325f667ee Merge pull request #27565 from rothrock/env-by-regex
[splunk] Use a regex to match environment variables
2017-03-31 10:46:48 -04:00
Sebastiaan van Stijn
5d25195f29 fix cleanup logic if restoring plugin fails
The "err" output variable was masked by the "if" statement,
so the error was never updated.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-31 16:42:30 +02:00
dattatrayakumbhar04
59b70cdabe 28722: List of containers with networkID filter is not working
Signed-off-by: dattatrayakumbhar04 <dattatraya.kumbhar@gslab.com>
2017-03-31 08:57:09 +00:00
Vincent Demeester
1ecaed0a99 Merge pull request #28696 from jlhawn/deprecate_graph_flag
Deprecate --graph flag; Replace with --data-root
2017-03-31 10:51:15 +02:00
Vincent Demeester
2a40b35629 Merge pull request #32246 from aboch/vnd
Vendoring swarmkit @b74ec2b
2017-03-31 10:33:57 +02:00
Sebastiaan van Stijn
05cd8bec32 Merge pull request #32236 from tonistiigi/fix-cmd-shell
builder: Fix setting command with custom shell
2017-03-31 03:26:28 +02:00
Alessandro Boch
4777fb6c6b Add ingress nw Test around consition which was panicing
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-30 16:12:48 -07:00
Alessandro Boch
747f0b4ba5 Vendoring swarmkit @b74ec2b
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-30 16:12:33 -07:00
Tonis Tiigi
a1fa59ea12 builder: Fix setting command with custom shell
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-30 13:29:21 -07:00
Sebastiaan van Stijn
9c0473fa65 Merge pull request #32222 from unclejack/small_cleanup
Small cleanup
2017-03-30 21:09:39 +02:00
Steve Durrheimer
07908f456a Add zsh completion for 'docker {node,service,stack} ps --format'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-30 21:07:03 +02:00
Sebastiaan van Stijn
2ce39de0c8 Merge pull request #32010 from dongluochen/swarmkit_vendor
vendor swarmkit 970b45afa1c9da9ed4b9c793669cedbb05ad3833
2017-03-30 17:24:33 +02:00
Evan Hazlett
59aed5ab36 Merge pull request #32174 from KarthikNayak/32113
Dockerd: enable CORS when only `--api-cors-header` is used
2017-03-30 11:13:52 -04:00
Vincent Demeester
ee61f28cc3 Merge pull request #32124 from vdemeester/system-inspect-secret
Add support for `--type=secret` in `docker inspect`
2017-03-30 17:01:57 +02:00
Brian Goff
c94e0f5d02 Merge pull request #32225 from thaJeztah/remove-flag-constant
Remove constant for "config-file" flag
2017-03-30 10:05:07 -04:00
unclejack
a23c456e5a pkg/*: clean up a few issues
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-03-30 16:50:46 +03:00
unclejack
90a44b875c pkg/urlutil: don't compare to bool
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-03-30 16:38:01 +03:00
unclejack
20d6f5c2a9 pkg/file{utils,notify}: don't compare to bool
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-03-30 16:38:01 +03:00
unclejack
087f7307a6 pkg/{chroot,}archive: clean up a few small issues
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-03-30 16:37:54 +03:00
Vincent Demeester
8305617510 Merge pull request #32213 from aaronlehmann/plugin-build-mac
plugins: Rename plugins_linux.go to plugins_unix.go and use build tags
2017-03-30 15:03:32 +02:00
Vincent Demeester
36c2f2731d Merge pull request #32199 from yuexiao-wang/add-examples
provide `docker stack ps` examples
2017-03-30 15:02:48 +02:00
yuexiao-wang
dcb4351d38 provide examples
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-03-31 05:11:36 +08:00
Sebastiaan van Stijn
df7a72cffa Add conflict check for flags, and update deprecation versions
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-30 12:21:05 +02:00
Sebastiaan van Stijn
9894576fb7 Remove constant for "config-file" flag
None of the daemon flags use a constant for the
flag name.

This patch removes the constant for consistency

Also removes a FIXME, that was now in the wrong
location, and added a long time ago in
353b7c8ec7,
without a lot of context (and probably no longer really relevant).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-30 12:01:00 +02:00
Sebastiaan van Stijn
11c2056204 Merge pull request #32221 from harche/patch-2
Fixing a typo in spelling
2017-03-30 11:33:06 +02:00
Josh Hawn
261ef1fa27 Deprecate --graph flag; Replace with --data-root
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2017-03-30 11:24:56 +02:00
harche
5e1349e083 Fixing a typo in spelling
Wrong tense used in a sentence

Signed-off-by: Harshal Patil <harshal.patil@in.ibm.com>
2017-03-30 14:31:45 +05:30
Vincent Demeester
b214d8d893 Merge pull request #32209 from aboch/vnd
Vendoring vishvananda/netlink @c682914
2017-03-30 09:56:02 +02:00
Boaz Shuster
3dad39b957 Use formatter in docker diff
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-30 10:33:40 +03:00
Lei Jitang
f459e3af9e Merge pull request #32197 from FengtuWang/fix_TestDaemonRestartWithInvalidBasesize
fix TestDaemonRestartWithInvalidBasesize
2017-03-30 10:15:48 +08:00
Sebastiaan van Stijn
f16d1a47cc Merge pull request #31741 from mlaventure/cleanup-tmp-on-start
Cleanup docker tmp dir on start
2017-03-30 03:14:55 +02:00
Sebastiaan van Stijn
165a5c6934 Merge pull request #32013 from albers/completion-secret-ls--format
Add bash completion for `secret ls --format`
2017-03-30 03:09:02 +02:00
Aaron Lehmann
85357a1167 Make pkg/devicemapper and pkg/loopback depend on cgo in build tags
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-29 17:55:42 -07:00
Tibor Vass
5ec88474b7 Merge pull request #32215 from tiborvass/docs-yaml-fix-makefile
docs: fix Makefile for yaml docs generation
2017-03-29 16:38:11 -07:00
Aaron Lehmann
8eb7edab7c Add line to hack/make/cross to cross-compile pkgs directory
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-29 15:58:03 -07:00
Tibor Vass
36bd288162 docs: fix Makefile for yaml docs generation
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-29 15:07:16 -07:00
Aaron Lehmann
3da1192828 plugins: Rename plugins_linux.go to plugins_unix.go and use build tags
This allows pkg/authorization to build on OS X.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-29 14:06:59 -07:00
Aaron Lehmann
278b36e5ce Merge pull request #32200 from yuexiao-wang/update-usage
fix inconsistency for docker service ps
2017-03-29 13:58:14 -07:00
yuexiao-wang
6d50737355 fix inconsistency for
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-03-30 05:42:18 +08:00
Harald Albers
31a8965dd4 Add bash completion for secret ls --format
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-29 13:54:38 -07:00
Sebastiaan van Stijn
bbae982ac8 Merge pull request #32211 from vieux/stretch_without_lsb
install: map debian_version 9.X to debian stretch without lsb_release
2017-03-29 20:56:45 +02:00
Victor Vieux
8d0de1fa8d Merge pull request #32204 from thaJeztah/remove-generated-changelog
delete generated rpm "changelog"
2017-03-29 11:47:20 -07:00
Victor Vieux
f8360d002d install: map debian_version 9.X to debian stretch without lsb_release
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-29 11:36:34 -07:00
Alessandro Boch
694c787123 Vendoring vishvananda/netlink @c682914
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-29 10:58:02 -07:00
Sebastiaan van Stijn
089b71443a delete generated rpm "changelog"
The generated "changelog" was not removed
before re-generating, causing the changelog
to be added twice on repeated runs of "make rpm"
(when bind-mounting the local source).

As a result, rpms failed to build, because
the resulting file had entries in non-chronological
order.

This change removes the generated file
before re-generating, and adds the file
to .gitignore, to prevent it from
accidentally being added to source control.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-29 18:19:07 +02:00
Daniel Zhang
50aa1e5b28 Docker version output is not consistent when there are downgrades or incompatibilities.
Signed-off-by: Daniel Zhang <jmzwcn@gmail.com>
2017-03-29 21:53:19 +08:00
Sebastiaan van Stijn
bce494f7a2 Merge pull request #31830 from dnephin/refactor-cli-state
Small cleanup now that we have multiple details about the server stored on the cli
2017-03-29 13:36:32 +02:00
Sebastiaan van Stijn
1b2f07a2f1 Merge pull request #31501 from thtanaka/update-oracle-selinux
Update oracle linux selinux to match docker upstream
2017-03-29 13:15:28 +02:00
Vincent Demeester
0937dadfdf Merge pull request #32196 from vdemeester/fix-windowsrs1-integration
Fix TestAPIDockerAPIVersion on windows
2017-03-29 12:45:31 +02:00
Sebastiaan van Stijn
d54c8baca4 Merge pull request #32198 from FengtuWang/wrong_usage
fix wrong usage in script of integration test
2017-03-29 12:42:47 +02:00
Sebastiaan van Stijn
6263c3cf2e Merge pull request #32058 from tophj-ibm/flaky-token-test
Fix flaky test TestPushMisconfiguredTokenServiceResponseError
2017-03-29 12:30:16 +02:00
Fengtu Wang
a42e72814f fix wrong usage in script of integration test
Signed-off-by: Fengtu Wang <wangfengtu@huawei.com>
2017-03-29 18:23:06 +08:00
Sebastiaan van Stijn
a1099010b0 Merge pull request #32085 from aboch/bd
Do not panic on redundant UpdateAttachment
2017-03-29 12:04:05 +02:00
Sebastiaan van Stijn
d9c4261964 Merge pull request #32187 from tianon/tini-version-parsing
Update "tini --version" parsing to be more forgiving of Tini's output format (release build vs git build)
2017-03-29 12:01:03 +02:00
Fengtu Wang
1d74b4f6d4 fix TestDaemonRestartWithInvalidBasesize
NotNil is expected behaviour, daemon should not start with
invalid base size.

Signed-off-by: Fengtu Wang <wangfengtu@huawei.com>
2017-03-29 17:32:25 +08:00
Vincent Demeester
4180211d80 Merge pull request #32186 from aaronlehmann/cluster-omitempty
api: Omit Cluster, Nodes, and Managers from swarm info when unavailable
2017-03-29 10:38:52 +02:00
Vincent Demeester
cf19bd44af Merge pull request #29228 from dnephin/add-entrypoint-to-service-cli
Add entrypoint flags to service cli.
2017-03-29 10:38:33 +02:00
Vincent Demeester
02faf807a2 Merge pull request #32167 from miaoyq/print-a-err-return
The returned err should be printed
2017-03-29 10:36:05 +02:00
Vincent Demeester
8c7fdddf48 Fix TestAPIDockerAPIVersion on windows
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-29 10:28:51 +02:00
Vincent Demeester
1f7fd19cec Merge pull request #32175 from vdemeester/fix-30201
Fix TestTrustedIsolatedCreate – clean trust folder at the end of the test
2017-03-29 09:15:51 +02:00
Sebastiaan van Stijn
2c1f6e812a Merge pull request #32189 from vieux/17.03.1-changelog
backport 17.03.1 CHANGELOG
2017-03-29 08:23:43 +02:00
Yanqiang Miao
87d0a3ad89 The returned err should be printed
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-03-29 09:00:50 +08:00
Sebastiaan van Stijn
0c59283fc3 Merge pull request #32183 from JimGalasyn/delete-h1
Delete extraneous H1 title
2017-03-29 01:42:20 +02:00
Victor Vieux
d5cbaa96f6 backport 17.03.1 CHANGELOG
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-28 16:15:05 -07:00
Tianon Gravi
87f9362975 Update "tini --version" parsing to be more forgiving of Tini's output format (release build vs git build)
Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-03-28 15:18:39 -07:00
Aaron Lehmann
3894254ddd api: Omit Cluster, Nodes, and Managers from swarm info when unavailable
Currently these fields are included in the response JSON with zero
values. It's better not to include them if the information is
unavailable (for example, on a worker node).

This turns Cluster into a pointer so that it can be left out.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-28 14:20:25 -07:00
Sebastiaan van Stijn
8098bf3896 Merge pull request #32185 from ewindisch/mailmap
Update Erica in mailmap
2017-03-28 22:02:35 +02:00
Erica Windisch
88535f9733 Update Erica in mailmap
Fix my name and email address.

Signed-off-by: Erica Windisch <erica@windisch.us>
2017-03-28 19:55:08 +00:00
Sebastiaan van Stijn
78e0ad7953 Merge pull request #32142 from vdemeester/integration-cli-package-2
[test-integration] Migrate some more tests to `cli` package
2017-03-28 21:37:07 +02:00
Dong Chen
aac861f3d9 vendor swarmkit 970b45afa1c9da9ed4b9c793669cedbb05ad3833
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2017-03-28 11:51:33 -07:00
Daniel Nephin
d3ea30de10 Add entrypoint flags to service cli.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-28 11:24:19 -07:00
Brian Goff
c7c7f36da7 Merge pull request #32169 from thaJeztah/fix-non-swarm-prune
Fix docker system prune failing with Swarm mode disabled
2017-03-28 14:07:25 -04:00
JimGalasyn
8d0c05cfe4 Delete extraneous H1 title
Signed-off-by: JimGalasyn <jim.galasyn@docker.com>
2017-03-28 10:56:26 -07:00
Sebastiaan van Stijn
d386f813e0 Merge pull request #32176 from thaJeztah/add-albers-to-maintainers
Add Harald Albers to maintainers
2017-03-28 17:29:38 +02:00
Sebastiaan van Stijn
c19ba877e0 Merge pull request #32178 from thaJeztah/add-john-stephens-to-maintainers
Add John Stephens to maintainers
2017-03-28 17:29:02 +02:00
Sebastiaan van Stijn
a5a0d752a1 Merge pull request #32177 from thaJeztah/add-evan-to-maintainers
add Evan Hazlett to maintainers
2017-03-28 17:28:30 +02:00
Sebastiaan van Stijn
cfbde0b422 Add John Stephens to maintainers
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-28 16:46:37 +02:00
Sebastiaan van Stijn
3c7fedc2fd add Evan Hazlett to maintainers
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-28 16:39:56 +02:00
Sebastiaan van Stijn
5cd4e96cd5 Add Harald Albers to maintainers
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-28 16:38:23 +02:00
Sebastiaan van Stijn
4f2ed03092 Fix docker system prune failing with Swarm mode disabled
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-28 16:35:24 +02:00
Sebastiaan van Stijn
8f4f85dd5b Add NetworkManager and ClusterStatus interfaces
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-28 16:35:14 +02:00
Brian Goff
b6cb416051 Merge pull request #30652 from rhatdan/selinux
If caller specifies label overrides, don't override security options
2017-03-28 10:24:47 -04:00
Vincent Demeester
16377f4d16 Fix issue #30201 – clean trust folder at the end of the test
This test doesn't clean the folder where it stores it's config (and
the trust folder), and thus, it fails if we run it more than
once (could also affect other tests at some point).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-28 16:12:41 +02:00
Vincent Demeester
917cb0d9d0 Merge pull request #31683 from AkihiroSuda/it-on-swarm-easy-analysis
integration-cli-on-swarm: new CLI flag: -keep-executor
2017-03-28 15:50:52 +02:00
Vincent Demeester
eeaa6c96d8 [test-integration] Migrate some more tests to cli package
Add some required command operators to the `cli` package, and update
some tests to use this package, in order to remove a few functions
from `docker_utils_test.go`

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-28 15:17:31 +02:00
Karthik Nayak
f0f673f4d5 Dockerd: enable CORS when only --api-cors-header is used
Even though the flag `--api-enable-cors` is deprecated in favor of
`--api-cors-header`. Using only `--api-cors-header` does not enable
CORS.

Make changes to 'cmd/dockerd/daemon.go' to enable cors if either of
the above flags is set.

Signed-off-by: Karthik Nayak <Karthik.188@gmail.com>
2017-03-28 18:09:14 +05:30
Vincent Demeester
a048e131be Merge pull request #32086 from tripdubroot/32000-Update-push.md-doc
Updated push.md with progress bar info
2017-03-28 14:02:10 +02:00
Vincent Demeester
bd811aa4fd Merge pull request #31021 from mstanleyjones/31009_dockerd_experimental
Update docs for experimental features
2017-03-28 14:01:05 +02:00
Sebastiaan van Stijn
b385a9156e Merge pull request #31901 from davidxia/fix-docs
[docs] Fix incorrect `docker inspect` example
2017-03-28 14:00:05 +02:00
Sebastiaan van Stijn
4df350b8c7 Merge pull request #30810 from allencloud/make-secret-ls-support-filter
make secret ls support filters in CLI
2017-03-28 13:43:19 +02:00
Misty Stanley-Jones
9fd27bf1a9 Update docs for experimental features
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-28 13:25:11 +02:00
Sebastiaan van Stijn
0f8a3dafa4 Merge pull request #32034 from gpflaum/30841-fix-toc-deprecated
Fix indenting in deprecated engine features toc
2017-03-28 13:09:47 +02:00
Sebastiaan van Stijn
7c7cc0bbdc Merge pull request #31911 from allencloud/specify-max-size-for-secret-in-doc
specify max size for secret in doc
2017-03-28 12:59:19 +02:00
Sebastiaan van Stijn
54805701bd Merge pull request #32112 from vdemeester/carry-ref-inspect-detail
Add details for inspect command usage
2017-03-28 12:49:57 +02:00
EG Noriega
59ef08c878 Add details for inspect command usage
Signed-off-by: Eric G. Noriega <egnoriega@users.noreply.github.com>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-28 11:04:10 +02:00
Vincent Demeester
71129f6be6 Add support for --type=secret in docker inspect
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-28 10:48:48 +02:00
Vincent Demeester
95510551ce Merge pull request #32156 from cpuguy83/index_copy_new_slice
Don't pass reference to mutable slice
2017-03-28 10:23:08 +02:00
Vincent Demeester
1c7a3d3e6c Merge pull request #32152 from darrenstahlmsft/RevertWaitOOBE
Windows: Revert change to wait for OOBE
2017-03-28 10:22:03 +02:00
Vincent Demeester
35e5975b90 Merge pull request #30763 from ripcurld0/fix_30714
Fix the create API when fromSrc has a bad URL
2017-03-28 10:20:59 +02:00
Vincent Demeester
99aaf6b923 Merge pull request #31709 from dnephin/better-errors
Replace fmt.Errorf() with errors.Errorf() in the cli
2017-03-28 10:17:46 +02:00
Sebastiaan van Stijn
cf113faca6 Merge pull request #32126 from vdemeester/docs-ref-cli-root-commands
Add cli reference docs for root-level commands
2017-03-28 09:46:32 +02:00
Vincent Demeester
4155343f44 Merge pull request #32128 from vdemeester/30836-set-alias-to-servicename
Set the alias to the service name instead of the network name
2017-03-28 09:46:05 +02:00
allencloud
5f8fcd9d63 specify max size for secret in doc
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-28 10:17:03 +08:00
Tibor Vass
0d08818653 Do not replace fmt.Errorf in generated file
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-27 18:33:41 -07:00
Brian Goff
d5b7839008 Don't pass reference to mutable slice
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-03-27 21:23:06 -04:00
Tibor Vass
febbe38796 Manually reorganize import paths to segregate stdlib and 3rd-party packages
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-27 18:21:59 -07:00
Darren Stahl
6eed7f0cac Windows:Revert change to wait for OOBE
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-03-27 14:32:18 -07:00
Tõnis Tiigi
c5f178da05 Merge pull request #32077 from zigarn/build-output
Display created tags on successful build
2017-03-27 12:41:13 -07:00
Vincent Demeester
2413859a1f Merge pull request #32146 from mapk0y/fix-man-docker-run
Update "man" of docker-run
2017-03-27 21:36:04 +02:00
mapk0y
22f0b27f59 Update "man" of docker-run
Signed-off-by: mapk0y <mapk0y@gmail.com>
2017-03-28 02:50:57 +09:00
Sebastiaan van Stijn
abecc530ee Merge pull request #32107 from mkumatag/fix_api_doc
Fix Healthcheck API doc
2017-03-27 18:45:48 +02:00
Sebastiaan van Stijn
ae811e9597 Merge pull request #32114 from sdurrheimer/zsh-completion-network-ls-scope-filter
Add zsh completion for 'docker network ls --filter scope'
2017-03-27 18:36:08 +02:00
Sebastiaan van Stijn
b9c8d9c660 Merge pull request #32115 from sdurrheimer/zsh-completion-plugin
Add missing zsh completion for 'docker plugin ls'
2017-03-27 18:35:16 +02:00
Alessandro Boch
3bf164e48d Do not panic on redundant UpdateAttachment
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-27 08:52:03 -07:00
Sebastiaan van Stijn
91f3f992f1 Merge pull request #30974 from erxian/add-new-cli-argument-squash-to-docker-build
add docs to describe experimental CLI argument --squash to docker build
2017-03-27 17:09:54 +02:00
Madhu Venugopal
04295d26df Merge pull request #31714 from aboch/cingr
Allow user to replace ingress network
2017-03-27 07:30:42 -07:00
Vincent Demeester
1bb6a53e76 Merge pull request #32044 from jonisar/patch-1
Readme grammer fix
2017-03-27 16:20:45 +02:00
Vincent Demeester
ee08c8542a Set the alias to the service name instead of the network name
This makes it work a little closer to compose part and it is more
correct 👼

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-27 11:42:15 +02:00
Vincent Demeester
9cea26bc77 Add cli reference docs for root-level commands
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-27 11:10:58 +02:00
Vincent Demeester
dc1f036772 Merge pull request #32119 from nogoegst/fix-openbsd-cli
Fix building client on OpenBSD
2017-03-27 09:52:50 +02:00
Vincent Demeester
e2f60837eb Merge pull request #31755 from miaoyq/heartbeat-maybe-zero
The variable heartbeat might be 0
2017-03-27 09:39:01 +02:00
Akihiro Suda
e5d474e856 Merge pull request #32121 from allencloud/remove-redundant-comment-in-test-build
remove redundant comments in test build.go
2017-03-27 14:40:37 +09:00
allencloud
32b81dae29 remove redundant comments in test build.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-27 10:59:13 +08:00
allencloud
3935074016 make secret ls support filters in CLI
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-27 10:16:45 +08:00
Yanqiang Miao
fb2bc35210 The variable heartbeat might be 0
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

perfect the test case for 'discoveryOpts'

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-03-27 10:07:58 +08:00
Alessandro Boch
d59d19c328 Allow user to modify ingress network
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-26 15:46:18 -07:00
Ivan Markin
925bc27b81 Fix building client on OpenBSD
Signed-off-by: Ivan Markin <twim@riseup.net>
2017-03-26 20:47:18 +00:00
Steve Durrheimer
fd6e74491b Add missing zsh completion for 'docker plugin ls'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-26 17:33:05 +02:00
Steve Durrheimer
0bd255f397 Add zsh completion for 'docker network ls --filter scope'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-26 17:04:59 +02:00
Manjunath A Kumatagi
4df54695ef Fix Healthcheck API doc
Signed-off-by: Manjunath A Kumatagi <mkumatag@in.ibm.com>
2017-03-26 08:45:11 -04:00
Boaz Shuster
e050f1760d Fix the create API when fromSrc has a bad URL
When sending a bad URL in the fromSrc parameter using cURL
the response will have status code 200 while it should have 404
or 500 (depends on the error).

This commit addresses this problem in the following ways:
 * Before, `src` was parsed using url.Parse and if the
   returned `url.Scheme` was empty it was set to 'http'
   and `url.Host` was set to `src`.
   This is bad because if `src` was 'web.com/tars/image1.tar'
   The `url.String()` returns 'web.com%2Ftars%2Fimage1.tar`
   which will cause the daemon to fail downloading the file
 * Before writing the "Downloading" message, the image
   is attempted to be downloaded and if there is no error
   the "Downloading" message is sent.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-26 15:21:13 +03:00
Joni Sar
ce08e2a107 Readme grammer fix
"Giving THE developer...." -> "to express all THEIR application's.."
A developer is single.
"Their" refers to plural (multiple developers).
So, adjusted to plural ("developers") so that the two will match.
 * The alternative would be to use "his / her" but that leads to gender reference issues, so the former alternative works better

Signed-off-by: Jonathan Saring <yoni@cocycles.com>
2017-03-26 14:59:14 +03:00
Vincent Demeester
08544b1912 Merge pull request #32098 from anusha-ragunathan/volume-panic
Add non-nil check before logging volume errors.
2017-03-26 12:45:22 +02:00
Vincent Demeester
ab08a571d1 Merge pull request #31976 from Microsoft/jjh/csbooboo
Windows: Remove --credentialspec flag
2017-03-26 12:44:27 +02:00
Sebastiaan van Stijn
a0b6edeb33 Merge pull request #32075 from uhayate/update_old_docs
update 3 old docs about secret in docs/reference/commandline/
2017-03-26 12:41:37 +02:00
Vincent Demeester
e065acc5fa Merge pull request #32052 from Microsoft/jjh/revendorhcsshim
Revendor HCSShim @ v0.5.13
2017-03-26 12:04:30 +02:00
Alexandre Garnier
d005219830 Display created tags on successful build
Signed-off-by: Alexandre Garnier <alexandre.garnier@zenika.com>
Signed-off-by: Alexandre Garnier <zigarn@gmail.com>
2017-03-25 11:46:20 +01:00
Tõnis Tiigi
773d3bb5a0 Merge pull request #32099 from dnephin/fix-test-stack-remove
Fix flaky TestStackRemove test
2017-03-24 23:23:25 -07:00
Lei Jitang
238ad8c36a Fix docker logs a dead container
If a container is dead or marked for removal, the json log
file could have been removed, so docker logs will return
`<id>-json.log: no such file or directory`.

Signed-off-by: Lei Jitang <leijitang@huawei.com>
2017-03-24 21:20:52 -04:00
Anusha Ragunathan
b1570baadd Add non-nil check before logging volume errors.
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-24 16:34:11 -07:00
Anusha Ragunathan
cddffe327e Merge pull request #32095 from anusha-ragunathan/set-state
Explictly set state of a disabled plugin.
2017-03-24 14:03:32 -07:00
Daniel Nephin
7b7ea8ab81 Replace fmt.Errorf() with errors.Errorf() in the cli
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 16:58:07 -04:00
Daniel Nephin
7236686987 Fix external volume error to pass validation.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 16:55:04 -04:00
Daniel Nephin
73e6135458 Fix flaky TestStackRemove test.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 15:31:08 -04:00
Thomas Tanaka
fc7cc1cc75 Update oracle linux selinux to match docker upstream
Add a dependency on specific selinux version for OL on docker-engine.spec

Signed-off-by: Thomas Tanaka <thomas.tanaka@oracle.com>
2017-03-24 12:17:39 -07:00
Anusha Ragunathan
bbbf64f712 Explictly set state of a disabled plugin.
While restoring plugins during daemon restart, some plugins can fail to
respond to net.Dial. These plugins should be explicitly set to disabled,
else they will retain their original state of enabled, which is
incorrect.

Tested with a plugin that fails to restart and observed that the state
was set to disabled.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-24 12:07:12 -07:00
Alessandro Boch
ff049a4d4d Vendor libnetwork @b6cb1ee
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-24 11:07:33 -07:00
Alessandro Boch
434e9695e4 Vendoring swarmkit @9fdea50
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-24 11:07:33 -07:00
Vincent Demeester
3c22c7d5e9 Merge pull request #32087 from dnephin/check-secrets-against-defined
Cleanup compose convert error messages
2017-03-24 17:41:53 +01:00
Daniel Nephin
434d77bc0e Fix --label being env var expanded.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 12:29:14 -04:00
Daniel Nephin
726fb269cf Fix --label on docker build when a single quote is used in the value
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 12:29:14 -04:00
Daniel Nephin
d7807c7316 Refactor some builder code
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 12:29:14 -04:00
Daniel Nephin
b03a185723 Cleanup compose convert error messages.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-24 10:43:28 -04:00
Ian Philpot
f426e8cb82 Updated push.md with progress bar info
Signed-off-by: Ian Philpot <ian.philpot@microsoft.com>
2017-03-24 10:25:52 -04:00
Vincent Demeester
b86efd2707 Merge pull request #32081 from albers/completion-network-ls--filter-scope
Add bash completion for `network ls --filter scope`
2017-03-24 14:52:03 +01:00
Harald Albers
4dd461a6bf Add bash completion for network ls --filter scope
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-24 13:06:26 +01:00
Sebastiaan van Stijn
4e290f7a2b Merge pull request #31529 from yongtang/31324-network-ls-filter-scope
Add `--filter scope=swarm|local` for `docker network ls`
2017-03-24 12:26:10 +01:00
uhayate
208653e712 update 3 old docs about secret in docs/reference/commandline/
Signed-off-by: uhayate <uhayate.gong@daocloud.io>
2017-03-24 18:42:38 +08:00
Vincent Demeester
9a2dcf6a15 Merge pull request #32071 from tonistiigi/fix-integration-tests
Fix integration tests build errors
2017-03-24 10:30:42 +01:00
Vincent Demeester
8d2a82853c Merge pull request #32042 from vdemeester/compose-interpolate-error-instead-of-panic
[compose/interpolation] Make sure we error out instead of panic during interpolation
2017-03-24 09:00:06 +01:00
Tonis Tiigi
4c7710d5d0 Fix integration tests build errors
Caused by a merge conflict.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-24 00:27:32 -07:00
Akihiro Suda
8008f65293 Merge pull request #31608 from vdemeester/integration-cli-package
[test-integration] Introduce a `cli` package for test-integration
2017-03-24 13:04:47 +09:00
Tõnis Tiigi
2fa8fe400d Merge pull request #31257 from tonistiigi/nested-build
build: add multi-stage build support
2017-03-23 19:14:13 -07:00
Yong Tang
704ea8f6b4 Add --filter scope=swarm|local for docker network ls
This fix tries to address the request in 31324 by adding
`--filter scope=swarm|local` for `docker network ls`.

As `docker network ls` has a `SCOPE` column by default,
it is natural to add the support of `--filter scope=swarm|local`.

This fix adds the `scope=swarm|local` support for
`docker network ls --filter`.

Related docs has been updated.

Additional unit test cases have been added.

This fix fixes 31324.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-03-23 18:48:11 -07:00
Tibor Vass
caf8d884aa Merge pull request #31629 from darrenstahlmsft/ShutdownLock
Windows: Stop holding client container lock during shutdown
2017-03-23 18:16:56 -07:00
Tonis Tiigi
684633f734 Fix relative path on windows for uuid paths
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-23 15:12:19 -07:00
Tonis Tiigi
f95f58283b Add support for COPY from previous rootfs
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-23 15:12:15 -07:00
Christopher Jones
a96bf0fb2f Fix flaky test DockerRegistryAuthTokenSuite.TestPushMisconfiguredTokenServiceResponseError
Fixes test by bumping retry count from 4 to 10

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-03-23 18:10:11 -04:00
Brian Goff
b47c50cf11 Merge pull request #31668 from Microsoft/jjh/nopidfileasservice
Windows: no pidfile when service
2017-03-23 17:10:35 -04:00
Brian Goff
c1d40ade5d Merge pull request #31626 from darrenstahlmsft/WindowsUpdateContainer
Windows: Add missing HostConfig fields to update block
2017-03-23 16:54:03 -04:00
Brian Goff
fd56e8ffa1 Merge pull request #32019 from anusha-ragunathan/plugin-sigkill
Add missing test for daemon kill with plugins running.
2017-03-23 15:46:59 -04:00
John Howard (VM)
4f7db6739d Revendor HCSShim @ v0.5.13
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-03-23 11:47:05 -07:00
Vincent Demeester
50c4475df6 Introduce a cli package for test-integration
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-23 18:35:22 +01:00
John Howard (VM)
53d6aadda5 Windows: Remove --credentialspec flag
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-23 10:01:04 -07:00
Sebastiaan van Stijn
ad530ffee0 Merge pull request #31986 from Microsoft/jjh/fix28267
Windows: Don't close client stdin handle to avoid hang
2017-03-23 16:35:54 +01:00
Vincent Demeester
c165a8bfa1 Make sure we error out instead of panic during interpolation
Use type assertion to error out if the type isn't the right one
instead of panic as before this change.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-23 16:09:57 +01:00
Vincent Demeester
d9ecb1b8fe Merge pull request #32028 from sdurrheimer/zsh-completion-service-ls-mode-filter
Add zsh completion for 'docker service ls --filter mode'
2017-03-23 14:19:36 +01:00
Vincent Demeester
f438cf6c7a Merge pull request #32029 from sdurrheimer/zsh-completion-secret-ls-format
Add zsh completion for 'docker secret ls --format'
2017-03-23 14:19:14 +01:00
Greg Pflaum
44cdab1fc5 Fix indenting in table of contents
Fixes #30841. The "filter" section had the wrong header size, which
caused sections following it to have the wrong indentation in the
right-side table of contents.

Signed-off-by: Greg Pflaum <gpflaum@users.noreply.github.com>
2017-03-22 23:31:13 -04:00
Brian Goff
64eff3e218 Merge pull request #32021 from tophj-ibm/fix-notary-vendor-p
[ppc64le] fix notary vendor
2017-03-22 22:08:42 -04:00
Brian Goff
6fe5eb010e Merge pull request #32020 from sdurrheimer/zsh-completion-service-create-update-rollback-on-failure
Add zsh completion for 'docker service {create,update} --rollback-*'
2017-03-22 22:02:51 -04:00
Brian Goff
cf4589666b Merge pull request #32025 from sdurrheimer/zsh-completion-service-logs-formatting
Add zsh completion for 'docker logs --no-task-ids --no-trunc'
2017-03-22 22:02:14 -04:00
Brian Goff
7a607efcd6 Merge pull request #32022 from sdurrheimer/zsh-completion-service-create-update-stop-signal
Add zsh completion for 'docker service {create,update} --stop-signal'
2017-03-22 22:01:15 -04:00
Brian Goff
18cf0a5910 Merge pull request #32026 from sdurrheimer/zsh-completion-network-inspect-verbose
Add zsh completion for 'docker network inspect --verbose'
2017-03-22 21:59:26 -04:00
Brian Goff
b573c23e6b Merge pull request #32017 from sdurrheimer/zsh-completion-build-add-host
Add zsh completion for 'docker build --add-host'
2017-03-22 21:58:47 -04:00
Brian Goff
9e538fb4b0 Merge pull request #32024 from sdurrheimer/zsh-completion-service-create-update-placement-ref
Add zsh completion for 'docker service {create,update} --placement-pref'
2017-03-22 21:58:26 -04:00
Aaron Lehmann
9b33edfa7e Merge pull request #31631 from aaronlehmann/swarm-failure-on-startup
cluster: Proceed with startup if cluster component can't be created
2017-03-22 16:40:49 -07:00
Steve Durrheimer
4147048256 Add zsh completion for 'docker secret ls --format'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 23:56:29 +01:00
Steve Durrheimer
94b6e810e0 Add zsh completion for 'docker service ls --filter mode'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 23:52:36 +01:00
Steve Durrheimer
b30906e29c Add zsh completion for 'docker network inspect --verbose'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 23:35:07 +01:00
Steve Durrheimer
415e453a55 Add zsh completion for 'docker service {create,update} --placement-pref'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 23:30:22 +01:00
Steve Durrheimer
516edbcabb Add zsh completion for 'docker logs --no-task-ids --no-trunc'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 23:26:33 +01:00
Vincent Demeester
bb1ae453a6 Merge pull request #32002 from vdemeester/compose-remove-type-dict
Remove compose types.Dict alias
2017-03-22 23:08:09 +01:00
Steve Durrheimer
6121a011ba Add zsh completion for 'docker service {create,update} --stop-signal'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 22:49:57 +01:00
Christopher Jones
28b99648ae [ppc64le] fix notary vendor link
Notary switched to vendor a while ago, so make that change here. Change
is consistent with all other dockerfiles.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-03-22 17:47:23 -04:00
Steve Durrheimer
169745ce29 Add zsh completion for 'docker service {create,update} --rollback-*'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 22:40:46 +01:00
Anusha Ragunathan
b748debb76 Add missing test for daemon kill with plugins running.
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-22 14:38:55 -07:00
Steve Durrheimer
fbedc588be Add zsh completion for 'docker build --add-host'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-03-22 22:28:09 +01:00
Anusha Ragunathan
bbce24997c Merge pull request #31930 from anusha-ragunathan/authz-disable
When authz plugin is disabled, remove from authz middleware chain.
2017-03-22 14:17:38 -07:00
Tibor Vass
0caced4644 Merge pull request #31715 from anusha-ragunathan/ipc-host
Add support in plugin config for accessing host ipc and pid namespace.
2017-03-22 14:17:21 -07:00
Sebastiaan van Stijn
dab6c7d4f2 Merge pull request #31982 from ffoysal/Files-with-special-characters-in-ADD-and-COPY
example of ADD and COPY with special characters file name
2017-03-22 20:17:40 +01:00
Foysal Iqbal
dacf8fa27c remove the duplicate line from doc and rebase with master for 'example of ADD and COPY with special characters file name'
Signed-off-by: Foysal Iqbal <foysal.iqbal.fb@gmail.com>
2017-03-22 15:08:17 -04:00
Anusha Ragunathan
38de272bd4 When authz plugin is disabled, remove from authz middleware chain.
When the daemon is configured to run with an authorization-plugin and if
the plugin is disabled, the daemon continues to send API requests to the
plugin and expect it to respond. But the plugin has been disabled. As a
result, all API requests are blocked. Fix this behavior by removing the
disabled plugin from the authz middleware chain.

Tested using riyaz/authz-no-volume-plugin and observed that after
disabling the plugin, API request/response is functional.

Fixes #31836

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-22 12:07:39 -07:00
John Howard
c33c457852 Merge pull request #31980 from JohnMaguire/doc-update
Add note regarding Windows VOLUME limitations
2017-03-22 12:01:36 -07:00
John Maguire
020ec88542 Add note regarding Windows VOLUME limitations
Signed-off-by: John Maguire <jmaguire@duosecurity.com>
2017-03-22 14:57:42 -04:00
Brian Goff
898e84d5fd Remove undeeded and broken selinux relabel call
The call is not needed here and wouldn't really work since `Source` in
this case is a volume name.
Further we don't neccessarily even have a volume path at this time since
the volume hasn't been mounted yet.

The volume will be relabled either:

1. When data gets copied to it from the image (if applicable) -- https://github.com/docker/docker/blob/master/container/container_unix.go#L196
2. When the container is started -- https://github.com/docker/docker/blob/master/daemon/oci_linux.go#L737

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-03-22 14:43:33 -04:00
Vincent Demeester
0f9ec7e470 Merge pull request #31992 from tonistiigi/fix-builder-exit-code
Return proper exit code on builder panic
2017-03-22 19:04:09 +01:00
Anusha Ragunathan
342ed107bc Embed DockerVersion in plugin config.
Embedding DockerVersion in plugin config when the plugin is created,
enables users to do a docker plugin inspect and know which version
the plugin was built on. This is helpful in cases where users are
running a new plugin on older docker releases and confused at
unexpected behavior.

By embedding DockerVersion in the config, we claim that there's no
guarantee that if the plugin config's DockerVersion is greater that
the version of the docker engine the plugin is executed against, the
plugin will work as expected.

For example, lets say:
- in 17.03, a plugin was released as johndoe/foo:v1
- in 17.05, the plugin uses the new ipchost config setting and author
publishes johndoe/foo:v2

In this case, johndoe/foo:v2 was built on 17.05 using ipchost, but is
running on docker-engine version 17.03. Since 17.05 > 17.03, there's
no guarantee that the plugin will work as expected. Ofcourse, if the
plugin did not use newly added config settings (ipchost in this case)
in 17.05, it would work fine in 17.03.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-22 10:26:20 -07:00
Vincent Demeester
d3dc27d145 Remove compose types.Dict alias
It is just an alias type and make the code a little bit more complex
and hard to use from outside `compose` package.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-22 16:16:20 +01:00
Brian Goff
d8406fd7a0 Merge pull request #31996 from aboch/drst
Fix stop/start/restart of detached container
2017-03-22 10:24:45 -04:00
Vincent Demeester
f453412bd8 Merge pull request #31973 from wsong/update_df_docs
Update system df docs to call out performance implications
2017-03-22 13:46:48 +01:00
Vincent Demeester
57a82c4190 Merge pull request #31988 from thaJeztah/fix-deprecation-version
update "docker daemon" deprecation message for new version scheme
2017-03-22 11:26:54 +01:00
Alessandro Boch
4ca7d4f0c1 Fix start/restart of detached container
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-22 02:38:26 -07:00
Vincent Demeester
c497499cde Merge pull request #31584 from dave-tucker/ignore-default-build-args
Exclude “default” build-args from image history
2017-03-22 10:07:22 +01:00
Vincent Demeester
94394026a8 Merge pull request #31749 from yallop/docs-31047
Add documentation for bind mount consistency flags (#31047).
2017-03-22 10:06:50 +01:00
Vincent Demeester
2b478686be Merge pull request #31991 from tonistiigi/add-build-arg-testcase
Add testcase for build arg without value
2017-03-22 09:55:45 +01:00
Wayne Song
d8a49c322a Update system df docs to call out performance implications
Signed-off-by: Wayne Song <wsong@docker.com>
2017-03-22 09:49:03 +01:00
Ryan Liu
786f30107b Fix nw sandbox leak when stopping detached container
Signed-off-by: Ryan Liu <ryanlyy@me.com>
2017-03-21 23:51:52 -07:00
Tonis Tiigi
385f1174ff Return proper exit code on builder panic
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-21 19:09:23 -07:00
Tonis Tiigi
8f37715af2 Add testcase for build arg without value
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-21 18:59:42 -07:00
Aaron Lehmann
ad1c96c6a7 cli: Wrong error message from "node ps" outside swarm mode
"docker node ps" behaves strangely outside swarm mode:

    $ docker node ps
    ID                  NAME                IMAGE               NODE                DESIRED STATE       CURRENT STATE       ERROR               PORTS
    Error: No such node:

It should explain that the node is not a swarm manager.

The reason this happens is that the argument to "docker node ps" defaults
to "self". The first thing the command does is try to resolve "self" to
a node ID using the /info endpoint. If there is no node ID, it tries to
use the empty string as an ID, and tries to GET /nodes/, which is not a
valid endpoint.

Change the command to check if the node ID is present in the /info
response. If it isn't, a swarm API endpoint can supply a useful error
message.

Also, avoid printing the column headers if the only following text is an
error.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-21 17:01:07 -07:00
Sebastiaan van Stijn
ba76a0c912 update "docker daemon" deprecation message for new version scheme
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-22 00:21:15 +01:00
John Howard (VM)
91e971c0fe Windows: Don't close client stdin handle to avoid hang
Signed-off-by: John Howard (VM) <jhoward@microsoft.com>
2017-03-21 16:00:17 -07:00
Anusha Ragunathan
4d1edcb2cc Add pid host support
Tested using global-net-plugin-ipc which sets PidHost in config.json.

Plugins might need access to host pid namespace. Add support for that.
Tested using aragunathan/global-net-plugin-ipc which sets "pidhost" in
config.json. Observed using `readlink /proc/self/ns/pid` that plugin and
host have the same ns.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-21 13:39:01 -07:00
Anusha Ragunathan
6d6185c257 Add support in plugin config for accessing host ipc namespace.
Plugins might need access to host ipc namespace. A good usecase is
a volume plugin running iscsi multipath commands that need access to
host kernel locks.
Tested with a custom plugin (aragunathan/global-net-plugin-full) that's
built with `"ipchost" : true` in config.json. Observed using
`readlink /proc/self/ns/ipc` that plugin and host have the same ns.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-21 13:39:01 -07:00
Sebastiaan van Stijn
fd3aef5ec2 Merge pull request #31966 from runcom/seccomp-clock-settime
profiles: seccomp: allow clock_settime when CAP_SYS_TIME is added
2017-03-21 20:22:22 +01:00
Victor Vieux
afe1c5c2eb Merge pull request #31705 from cyli/bump-go-connections
Use either a system pool or custom CA pool when connecting from client->daemon (+go-connections version bump)
2017-03-21 10:36:41 -07:00
Dave Tucker
89a2a885c8 Ignore built-in allowed build-args in image history
Removes the build-args from the image history if they are in the
BuiltinAllowedBuildArgs map unless they are explicitly defined in an ARG
instruction.

Signed-off-by: Dave Tucker <dt@docker.com>
2017-03-21 16:36:48 +00:00
Sebastiaan van Stijn
4c7941d391 Merge pull request #31969 from vdemeester/fix-images-reference-docs-filter-list
Add `reference` filter to the list of available filters
2017-03-21 16:14:07 +01:00
Vincent Demeester
8e7e6bdb73 Add reference filter to the list of available filters
The `reference` filter is documented in the file, but is not present
in the list of available filters.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-21 16:11:11 +01:00
Vincent Demeester
b82f9622dc Merge pull request #31962 from dgageot/fix-31922
Windows: Fix Docker hanging with named pipes and stdin
2017-03-21 16:02:29 +01:00
Vincent Demeester
f965aab5e9 Merge pull request #31621 from dnephin/cleanup-container-run-command
Some cleanup of container run command
2017-03-21 16:01:11 +01:00
Jeremy Yallop
1a710c1660 Documentation for bind mount consistency flags.
Signed-off-by: Jeremy Yallop <yallop@docker.com>
2017-03-21 11:55:33 +00:00
David Gageot
97b572ea1b Windows: Fix Docker hanging with named pipes and stdin
Fixes #31922

Vendor a fork of Microsoft/go-winio that has this
PR (https://github.com/Microsoft/go-winio/pull/43)
merged


Signed-off-by: David Gageot <david@gageot.net>
2017-03-21 11:49:57 +01:00
Vincent Demeester
58ccdfe00c Merge pull request #31928 from Microsoft/jjh/cleanupremoving
Windows: graph cleanup '-removing'
2017-03-21 09:43:38 +01:00
Akihiro Suda
9a5bf4b5ad Merge pull request #29779 from thaJeztah/do-not-return-incorrect-error
NetworksPrune: do not return warnings as error
2017-03-21 16:28:54 +09:00
Sebastiaan van Stijn
0bc84fc06c Merge pull request #31596 from rootsongjc/dry-run-test
Wrong entrypoint in docker plugin example
2017-03-20 23:38:15 +01:00
Sebastiaan van Stijn
1ec77baed9 Merge pull request #31552 from ripcurld0/add_format_secretls
Add format to secret ls
2017-03-20 20:20:45 +01:00
Tonis Tiigi
acad599210 Fix cache for dockerfiles with multiple FROM
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-20 11:24:50 -07:00
Tonis Tiigi
09f308ce21 Fix ARG scoping for Dockerfiles with multiple FROM
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-20 11:24:44 -07:00
Vincent Demeester
550b06ab6a Merge pull request #31948 from vdemeester/compose-typo
Fixing a small typo in compose loader package
2017-03-20 17:48:50 +01:00
Daniel Nephin
4152243985 Create a new ServerType struct for storing details about the server on the client.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-20 12:48:25 -04:00
Vincent Demeester
2422d5ad35 Merge pull request #31669 from tonistiigi/files-filter
Fix inefficient file paths filter
2017-03-20 17:43:47 +01:00
John Howard (VM)
9910b9a7f0 Windows: graph cleanup '-removing'
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-20 09:15:27 -07:00
Vincent Demeester
1bb4eae43f Merge pull request #31943 from liker12134/fix-go-vetting-warning-unkeyed-fields
Fixed:go vetting warning unkeyed fields
2017-03-20 15:51:32 +01:00
Vincent Demeester
93eaec90aa Merge pull request #31946 from fate-grand-order/fixed
fix misspell in utils.go
2017-03-20 15:41:54 +01:00
Vincent Demeester
b8c45c3a57 Fixing a small typo in compose loader package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-20 15:39:57 +01:00
Sebastiaan van Stijn
1ed277a268 Merge pull request #31915 from albers/fix-completion-node-update
Bash completion for `docker node update` completes only one node
2017-03-20 14:10:25 +01:00
fate-grand-order
2b79dbc89b fix misspell in utils.go
Signed-off-by: Helen Xie <chenjg@harmonycloud.cn>
2017-03-20 19:52:00 +08:00
Sebastiaan van Stijn
a8b20f4789 Merge pull request #31941 from felicianotech/fix/cli-build-heading
Fix 'Specify a Dockerfile (-f)' heading in Engine CLI Docs.
2017-03-20 12:51:47 +01:00
Vincent Demeester
5aa44cdf13 Merge pull request #31933 from cooltoast/master
Add Johannes Kepler and Mary Jackson to name generator
2017-03-20 11:27:17 +01:00
Vincent Demeester
3794e190ff Merge pull request #31882 from unclejack/fix_Dockerfile
Dockerfile: move comments to fix build error
2017-03-20 11:08:45 +01:00
Antonio Murdaca
3ab4961032 profiles: seccomp: allow clock_settime when CAP_SYS_TIME is added
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-03-20 11:05:23 +01:00
liker12134
2333b39b37 fixed:go vetting warning unkeyed fields
Signed-off-by: Aaron.L.Xu <liker.xu@foxmail.com>
2017-03-20 16:30:01 +08:00
Ricardo N Feliciano
0bd77d2381 Fix 'Specify a Dockerfile (-f)' heading in Engine CLI Docs.
Signed-off-by: Ricardo N Feliciano <FelicianoTech@gmail.com>
2017-03-19 18:05:12 -04:00
Boaz Shuster
f9d2636787 Use formatter in docker checkpoint ls
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-19 09:24:15 +02:00
Boaz Shuster
e281fe9c3a Add format to secret ls
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-19 09:22:30 +02:00
cooltoast
234b2203e5 Add Johannes Kepler and Mary Jackson to name generator
Signed-off-by: cooltoast <mpatel678@gmail.com>
2017-03-17 20:36:12 -07:00
Sebastiaan van Stijn
04da404175 Merge pull request #31891 from ngaro/master
Fix zsh-completion for containers in status 'created'
2017-03-18 03:09:29 +01:00
Nikolas Garofil
e5a327ff2f Fix zsh-completion for containers in status 'created'
This patch makes sure that containers in the created-stated are
counted as stopped containers. Otherwise if you create a container,
don't run it and type: "docker rm ", followed by pressing tab in zsh, it won't show up.

Signed-off-by: Nikolas Garofil <nikolas.garofil@uantwerpen.be>
Signed-off-by: Nikolas Garofil <nikolas@garofil.be>
2017-03-18 02:09:34 +01:00
Brian Goff
a99c3bcd7f Merge pull request #31914 from albers/completion-rm-created
Improve bash completion for `docker rm`
2017-03-17 15:08:02 -04:00
Brian Goff
108dccaf51 Merge pull request #31905 from anusha-ragunathan/unmount-disable
Wait to unmount propagatedmount before marking plugin as disabled.
2017-03-17 14:37:40 -04:00
Vincent Demeester
8bc703804d Merge pull request #30781 from AkihiroSuda/fix-stack-env
compose: fix environment interpolation from the client
2017-03-17 15:56:50 +01:00
Vincent Demeester
0fe41cc4db Merge pull request #31820 from ehazlett/secrets-restrict
Restrict secret view to node level in controller
2017-03-17 14:25:32 +01:00
Harald Albers
aea95471c4 Bash completion for docker node update completes only one node
`docker node update` accepts only one node.
Before this change, bash completion would complete additional nodes.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-17 09:33:55 +01:00
Harald Albers
cac3775de8 Improve bash completion for docker rm
`docker rm` can delete containers in state=created, too.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-17 09:21:37 +01:00
Akihiro Suda
2cdc9c42eb compose: update the comment about MappingWithEquals
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-17 06:21:55 +00:00
Daniel J Walsh
881e20ee0b If caller specifies label overrides, don't override security options
If a caller specifies an SELinux type or MCS Label and still wants to
share an IPC Namespace or the host namespace, we should allow them.
Currently we are ignoring the label specification if ipcmod=container
or pidmode=host.

Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2017-03-16 20:33:37 -04:00
Victor Vieux
f148ad38e5 Merge pull request #31902 from thaJeztah/master-cherry-pick-31875
cherry-pick 31875 - update service-create.md
2017-03-16 15:36:34 -07:00
Anusha Ragunathan
70b76266b5 Wait to unmount propagatedmount before marking plugin as disabled.
TestPluginTrustedInstall revealed a race in the plugin shutdown logic,
where the exit channel signal was sent even before the propagated mounts
were unmounted. If the same plugin was enabled, it would try to setup
propagated mounts *before* it was unmounted resulting in errors.

This change fixes the behavior by waiting until the unmount completes on
disable before marking the plugin as disabled.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-16 15:25:41 -07:00
Misty Stanley-Jones
2b939bdd67 Merge pull request #31875 from toolchainX/patch-2
update service-create.md
(cherry picked from commit 0f1ee84014)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-16 22:25:50 +01:00
David Xia
cd48633329 [docs] Fix incorrect docker inspect example
Fixed incorrect `docker inspect` example in docs.
Verify by running the old and new commands.

fixes #31900

Signed-off-by: David Xia <dxia@spotify.com>
2017-03-16 16:49:15 -04:00
Sebastiaan van Stijn
d376b18caf Merge pull request #31896 from aaronlehmann/move-secretrequestoption
api: Remove SecretRequestOption type
2017-03-16 21:31:15 +01:00
Sebastiaan van Stijn
f5c57d88a4 Merge pull request #31886 from daniel48/master
fix a typo
2017-03-16 21:30:22 +01:00
Sebastiaan van Stijn
3eaeee07c3 Merge pull request #31894 from dnephin/fix-schema-id
Fix compose schema id for v3.2
2017-03-16 21:19:59 +01:00
Aaron Lehmann
e7c39f4d5d api: Remove SecretRequestOption type
This type is only used by CLI code. It duplicates SecretReference in the
types/swarm package. Change the CLI code to use that type instead.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-16 11:20:31 -07:00
Daniel Nephin
576d2181e4 Fix compose schema id for v3.2
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-16 13:53:58 -04:00
Kenfe-Mickael Laventure
9c451ad0f2 Cleanup docker tmp dir on start
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-16 09:01:29 -07:00
Sebastiaan van Stijn
96ec447f3b Merge pull request #31890 from albers/completion-service-ls--filter-mode
Add bash completion for `service ls --filter mode`
2017-03-16 16:47:37 +01:00
Vincent Demeester
c1b04a8d6e Merge pull request #31513 from thaJeztah/better-handling-of-older-api-versions
Improve error handling of commands run against unsupported daemon
2017-03-16 16:46:06 +01:00
Harald Albers
8eac1daa81 Add bash completion for service ls --filter mode
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-16 16:31:57 +01:00
Pure White
1d61f11e34 fix a typo
when i was using:
docker search --automated -s 3 nginx
told me:
Flag --automated has been deprecated, use --filter=automated=true instead
Flag --stars has been deprecated, use --filter=stars=3 instead
and when i use:
docker search --filter=automated=true --filter=stars=3 nginx
told me:
Error response from daemon: Invalid filter 'automated'
and i found out that the correct command should be:
docker search --filter=is-automated=true --filter=stars=3 nginx

Signed-off-by: Pure White <daniel48@126.com>
2017-03-16 23:11:57 +08:00
Brian Goff
a1b06933af Use generic handler for pprof profile lookups
This more (in spirit) mimics the handler usage in net/http/pprof.
It also makes sure that any new profiles that are added are
automatically supported (e.g. `mutex` profiles in go1.8).

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-03-16 11:05:20 -04:00
Vincent Demeester
b6abfbafcd Merge pull request #31864 from Microsoft/jjh/failfsopshyperv
Windows: Fail fs ops on running Hyper-V containers gracefully
2017-03-16 16:00:34 +01:00
Vincent Demeester
c8d109842a Merge pull request #31881 from albers/completion-ps--format
Add bash completion for `node|service|stack ps --format`
2017-03-16 14:56:26 +01:00
Vincent Demeester
ad7cc722d7 Merge pull request #30777 from Microsoft/jjh/testexecwindowsopenhandles
Avoid TestExecWindowsOpenHandles timing out
2017-03-16 14:55:24 +01:00
Sebastiaan van Stijn
1b2edb1ff6 Merge pull request #31832 from albers/completion-network-inspect--verbose
Add bash completion for `network inspect --verbose`
2017-03-16 14:52:21 +01:00
Vincent Demeester
4261687d78 Merge pull request #31720 from jonjohnsonjr/always-head
Always HEAD blobs at least once during pushes
2017-03-16 14:39:02 +01:00
Vincent Demeester
11eb4fe70c Merge pull request #31850 from yummypeng/ignore-layer-does-not-exist
Ignore `layer does not exist` error from `docker images`
2017-03-16 14:38:39 +01:00
Sebastiaan van Stijn
aa534d3bb2 Merge pull request #31619 from rcjsuen/patch-1
Fix typo in sample output
2017-03-16 14:22:17 +01:00
Sebastiaan van Stijn
15d63f1c5b Improve error handling of commands run against unsupported daemon
The current error-handling only checked for version annotations
on the subcommand itself, but did not check the top-level command.

This patch always traverses the command path (parents), and
prints an error if the command is not supported.

Before this change:

    $ docker service
    Usage:	docker service COMMAND

    Manage services

    Options:
          --help   Print usage

    Commands:
      create      Create a new service
      inspect     Display detailed information on one or more services
      ls          List services
      ps          List the tasks of one or more services
      rm          Remove one or more services
      scale       Scale one or multiple replicated services
      update      Update a service

    Run 'docker service COMMAND --help' for more information on a command.

    $ docker service ls
    ID                  NAME                MODE                REPLICAS            IMAGE

After this change:

    $ DOCKER_API_VERSION=1.12 docker service
    docker service requires API version 1.24, but the Docker daemon API version is 1.12

    $ DOCKER_API_VERSION=1.12 docker service ls
    docker service ls requires API version 1.24, but the Docker daemon API version is 1.12

    $ DOCKER_API_VERSION=1.24 docker plugin --help
    docker plugin requires API version 1.25, but the Docker daemon API version is 1.24

    $ DOCKER_API_VERSION=1.25 docker plugin upgrade --help
    docker plugin upgrade requires API version 1.26, but the Docker daemon API version is 1.25

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-16 13:45:50 +01:00
Sebastiaan van Stijn
e638089622 Add missing API version annotations to commands
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-16 13:40:12 +01:00
unclejack
c7c9235946 Dockerfile: move comments to fix build error
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-03-16 14:07:31 +02:00
unclejack
23750ce535 Merge pull request #31858 from unclejack/remove_redundant_options_check
pkg/archive/diff.go: avoid redundant options init
2017-03-16 05:05:03 -07:00
Harald Albers
1bf7d2c2b4 Add bash completion for node|service|stack ps --format
Also add `--quiet|-q` where it was missing.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-16 12:59:32 +01:00
Harald Albers
74bd089952 Add bash completion for update --cpus
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-16 11:53:44 +01:00
Vincent Demeester
52143aee95 Merge pull request #31775 from erxian/misleading-default-for-update-monitor-duration-flag
misleading default for --update-monitor duration
2017-03-16 10:13:26 +01:00
Vincent Demeester
8316753f96 Merge pull request #31866 from gdevillele/pr_service_create
improve semantics of utility function in cli/command/service
2017-03-16 10:12:15 +01:00
Vincent Demeester
2631968ea1 Merge pull request #31531 from dnephin/cleanup-image-tests
Use `assert` in `image` package unit tests
2017-03-16 09:28:38 +01:00
Akihiro Suda
87c5f67cfa Merge pull request #31057 from krasi-georgiev/30779-fix-client-login-credentials-save-domain
fix incorect login client credential save when the registry is the default docker registry
2017-03-16 13:19:32 +09:00
Yuanhong Peng
2b9694c29e Ignore layer does not exist error from docker images
Fix #31350

As we can see in `daemon.Images()`, there is a gap between
`allImages = daemon.imageStore.Map()` and `l, err :=
daemon.layerStore.Get(layerID)`, so images which still exist when we hit
`allImages = daemon.imageStore.Map()` may have already been deleted when we hit
`l, err := daemon.layerStore.Get(layerID)`.

```
	if danglingOnly {
        	allImages = daemon.imageStore.Heads()
	} else {
        	allImages = daemon.imageStore.Map()
	}

	...

	for id, img := range allImages {
		...

		layerID := img.RootFS.ChainID()
        	var size int64
	        if layerID != "" {
        	        l, err := daemon.layerStore.Get(layerID)
                	if err != nil {
                        	return nil, err
                	}
```

Signed-off-by: Yuanhong Peng <pengyuanhong@huawei.com>
2017-03-16 09:21:51 +08:00
Sebastiaan van Stijn
b36ce6f2f6 Merge pull request #31538 from yongtang/31325-service-ls-filter-mode
Support `--filter mode=global|replicated` for `docker service ls`
2017-03-16 01:42:55 +01:00
Tibor Vass
b5bd023de6 Merge pull request #30514 from FrenchBen/yaml
Yaml Generation
2017-03-15 16:20:33 -07:00
Victor Vieux
b4432de922 Merge pull request #31862 from vieux/revert_login
Revert "Planned 1.13 deprecation: email from login"
2017-03-15 16:17:13 -07:00
Victor Vieux
9b7e89313e fix bash error in release.sh
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-15 16:07:44 -07:00
Tõnis Tiigi
fa6e7b39e3 Merge pull request #31847 from mkumatag/fix_contrib
Rename project/CONTRIBUTORS.md -> project/CONTRIBUTING.md
2017-03-15 14:27:15 -07:00
Gaetan de Villele
1526a99672 improve semantics of utility function in cli/command/service
Signed-off-by: Gaetan de Villele <gdevillele@gmail.com>
2017-03-15 13:49:52 -07:00
John Howard (VM)
481d2633fe Windows: Fail fs ops on running Hyper-V containers gracefully
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-15 13:31:41 -07:00
Sebastiaan van Stijn
595ea2f120 Merge pull request #31843 from jim-minter/attachrace_regression
Resolve connection reset by peer regression
2017-03-15 20:55:23 +01:00
Victor Vieux
a8ab5855ea Merge pull request #31837 from vieux/next
prepare master for the next release
2017-03-15 11:53:16 -07:00
Victor Vieux
75b31d2d71 Merge pull request #31851 from mlaventure/update-containerd
Update containerd to version 422e31ce907fd9c3833a38d7b8fdd023e5a76e73
2017-03-15 11:09:53 -07:00
Yong Tang
43a1bd564b Support --filter mode=global|replicated for docker service ls
This fix tries to address the request in 31325 by adding
`--filter mode=global|replicated` to `docker service ls`.

As `docker service ls` has a `MODE` column by default, it is natural
to support `--filter mode=global|replicated` for `docker service ls`.

There are multiple ways to address the issue. One way is to pass
the filter of mode to SwarmKit, another way is to process the filter
of mode in the daemon.

This fix process the filter in the daemon.

Related docs has been updated.

An integration test has been added.

This fix fixes 31325.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-03-15 11:06:57 -07:00
Victor Vieux
4bce232139 Revert "Planned 1.13 deprecation: email from login"
This reverts commit a66efbddb8.

Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-15 10:43:18 -07:00
unclejack
5957dc4899 pkg/archive/diff.go: avoid redundant options init
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-03-15 18:03:33 +02:00
Kenfe-Mickael Laventure
440b2cc7ab Update containerd to version 422e31ce907fd9c3833a38d7b8fdd023e5a76e73
This fixes an issue preventing containerd from starting if the state
directory didn't exist already.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-15 08:08:39 -07:00
Vincent Demeester
297786f30c Merge pull request #31687 from AkihiroSuda/fix-test-duplicate-mountpoints
TestDuplicateMountpointsForVolumesFromAndMounts: remove unintentional dependency for /tmp/data
2017-03-15 14:15:39 +01:00
Sebastiaan van Stijn
5126862d43 Merge pull request #31846 from thaJeztah/remove-outdated-etc-hosts-reference
docs: remove outdated reference to updating /etc/hosts
2017-03-15 14:07:01 +01:00
Manjunath A Kumatagi
f4ea1081f4 Rename project/CONTRIBUTORS.md -> project/CONTRIBUTING.md
Signed-off-by: Manjunath A Kumatagi <mkumatag@in.ibm.com>
2017-03-15 08:48:27 -04:00
Justin Cormack
2d95c3ca61 Merge pull request #31844 from vdemeester/image-filter-reference-remove-version-if
Don't compare API version in the future for `image ls` endpoint
2017-03-15 12:06:46 +00:00
Sebastiaan van Stijn
b0d1936d30 Merge pull request #31302 from dnephin/purge-orphaned-services
Add --prune to stack deploy
2017-03-15 12:57:06 +01:00
Sebastiaan van Stijn
171f5d84f9 docs: remove outdated reference to updating /etc/hosts
Starting with docker 1.10, docker no longer uses
/etc/hosts for service discovery, but uses an
embedded DNS server. This patch removes a reference
to the old (pre 1.10) behavior.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-15 12:27:23 +01:00
Vincent Demeester
0f9d22cd66 Replace API version comparison by a if
… as we don't know for sure what API version it will be at that time.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-15 10:46:06 +01:00
Jim Minter
dc0ee98805 Resolve connection reset by peer regression
Signed-off-by: Jim Minter <jminter@redhat.com>
2017-03-15 09:36:44 +00:00
erxian
3e6ff87f69 misleading default for --update-monitor duration
Signed-off-by: erxian <evelynhsu21@gmail.com>
2017-03-15 14:20:02 +08:00
Victor Vieux
817106aaa1 prepare master for the next release
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-14 20:43:33 -07:00
Victor Vieux
0b9b7906af Merge pull request #31833 from tonistiigi/docker-group
Fix default socket group regression
2017-03-14 20:34:42 -07:00
Anusha Ragunathan
95b46ff68f Merge pull request #31147 from adshmh/30629-print-escaping-hint-on-invalid-interpolation-format
docker stack deploy interpolation format error due to not escaping $ now includes a hint
2017-03-14 17:14:09 -07:00
Victor Vieux
cec9594947 Merge pull request #31790 from mlaventure/devicecgrouprules-api-swagger
Update swagger.yaml and api/version-history.md for DeviceCgrouprules
2017-03-14 16:51:09 -07:00
Tonis Tiigi
c7c2cd4e8e Fix default socket group regression
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-14 16:09:08 -07:00
French Ben
5443f0152f docs: added support for CLI yaml file generation
Signed-off-by: French Ben <frenchben@docker.com>
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-14 16:04:08 -07:00
Harald Albers
693a418612 Add bash completion for network inspect --verbose
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-14 15:37:59 -07:00
Victor Vieux
f7cfacbfe9 Merge pull request #31824 from albers/completion-update--service-logs
Update bash completion for `docker service logs`
2017-03-14 14:44:36 -07:00
Victor Vieux
f72404e48d Merge pull request #31686 from AkihiroSuda/fix-defer-it-on-swarm
integration-cli-on-swarm: make sure deferred function gets executed before os.Exit()
2017-03-14 14:41:41 -07:00
Erik St. Martin
40e075532a Add mount point to cgroup root when initializing cgroup paths for
cpu.rt_runtime

PR https://github.com/docker/docker/pull/23430 introduced a couple more
flags including `--cpu-rt-runtime` to the docker daemon. It appears
recent changes or merge issues may have broken this. It currently does
not take the cgroup mount point into account when determining the cgroup
files to write values to. This breaks docker setting its own
`cpu.rt_runtime` for the daemon. This also means containers aren't able
to set theirs.

Also, the cgroups.FindCgroupMountpointAndRoot returns back a mount point
that includes the cgroup of the currently running container when docker
is run inside a docker container. this breaks the `--cpu-rt-runtime`
flag when running docker in docker. A fix has been placed here, but
potentially could be pulled up into libcontainer if this is a better
place for it.

Signed-off-by: Erik St. Martin <alakriti@gmail.com>
2017-03-14 16:18:36 -04:00
Daniel Nephin
644fd804fc Add --prune to stack deploy.
Add to command line reference.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-14 16:09:28 -04:00
Daniel Nephin
a9c86b63c0 Fix environment resolving.
Load from env should only happen if the value is unset.
Extract a buildEnvironment function and revert some changes to tests.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-14 16:00:43 -04:00
Akihiro Suda
ea43c33330 compose: fix environment interpolation from the client
For an environment variable defined in the yaml without value,
the value needs to be propagated from the client, as in Docker Compose.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-14 15:59:40 -04:00
Victor Vieux
1a24abe42d Merge pull request #31809 from vieux/bump_api
bump API to 1.28
2017-03-14 11:53:52 -07:00
Daniel Nephin
cd56476f18 Merge pull request #31795 from dnephin/compose-file-v3.2
Compose file v3.2
2017-03-14 14:10:24 -04:00
Justin Cormack
49376cddab Merge pull request #30597 from dnephin/add-expanded-mount-format-to-stack-deploy
Add expanded mount format to stack deploy
2017-03-14 17:53:28 +00:00
Victor Vieux
08bbd434f5 Merge pull request #31586 from aaronlehmann/digest-pin-context
cluster: Renew the context after communicating with the registry
2017-03-14 09:46:15 -07:00
Victor Vieux
cd173a6030 bump API to 1.28
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-03-14 09:32:50 -07:00
Harald Albers
93546c257a Update bash completion for docker service logs
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-14 17:28:58 +01:00
Kenfe-Mickael Laventure
6e97f11df9 Update swagger.yaml and api/version-history.md for DeviceCgrouprules
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-14 07:24:29 -07:00
Evan Hazlett
8392123f30 restrict secret view to node level in controller
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2017-03-14 09:53:02 -04:00
Vincent Demeester
1d4608032d Merge pull request #31500 from dperny/fix-service-logs-cli
Add tail and since to service logs
2017-03-14 14:19:29 +01:00
Sebastiaan van Stijn
0f212b57e8 Merge pull request #31635 from christopher-gibson/master
Fix fish autocompletion with custom ps output
2017-03-14 11:28:59 +01:00
Vincent Demeester
6ea8006a4f Merge pull request #31791 from Microsoft/jjh/unpause
CI cleanup - only unpause if platform supports it
2017-03-14 10:58:06 +01:00
Sebastiaan van Stijn
d4db198592 Merge pull request #31813 from albers/docs-dockerd--no-new-privileges
Remove docs for `dockerd --no-new-privileges`
2017-03-14 10:09:12 +01:00
Harald Albers
0a1ace9d2f Remove docs for dockerd --no-new-privileges
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-14 10:00:14 +01:00
Sebastiaan van Stijn
9f3f1641c4 Merge pull request #31786 from albers/completion-service--placement-pref
Add bash completion for topology-aware scheduling
2017-03-14 09:54:47 +01:00
Harald Albers
71aba36d5a Add bash completion for topology-aware scheduling
- bash completion for `docker service create --placement-pref`
- bash completion for `docker service update --placement-pref-{add,rm}`

Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-14 08:37:05 +01:00
Madhu Venugopal
cdf66ba715 Merge pull request #31710 from sanimej/drillerrr
Add verbose flag to network inspect to show all services & tasks in swarm mode
2017-03-13 21:12:32 -07:00
Victor Vieux
bba7d8adda Merge pull request #31793 from mlaventure/update-containerd
Update containerd to version 949e6facb77383876aeff8a6944dde66b3089574
2017-03-13 19:39:58 -07:00
Tõnis Tiigi
764e80e84c Merge pull request #31713 from nishanttotla/better-warnings
Improve warnings when image digest pinning fails
2017-03-13 17:57:06 -07:00
Santhosh Manohar
14f76a21db Enhance network inspect to show all tasks, local & non-local, in swarm mode
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-03-13 17:52:08 -07:00
Justin Cormack
4108d6259a Merge pull request #31193 from docbobo/master-aarch64
Support for debian-jessie on aarch64
2017-03-14 00:45:30 +00:00
Brian Goff
aa733ba8a8 Merge pull request #31672 from dperny/service-logs-formatting
Service logs formatting
2017-03-13 19:08:55 -04:00
Nishant Totla
44855dff42 Improve warnings when image digest pinning fails
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2017-03-13 15:16:35 -07:00
Justin Cormack
916c6b55b9 Merge pull request #31796 from vdemeester/update-docker-credential-helpers-to-v0.5.0
Update docker-credential-helpers to v0.5.0
2017-03-13 22:04:21 +00:00
Tibor Vass
f947d823f0 Merge pull request #31767 from mstanleyjones/fix_tables
Fix markdown in references for Kramdown
2017-03-13 14:13:15 -07:00
Justin Cormack
72f1425ff2 Merge pull request #31740 from Microsoft/jjh/privcheck
Windows: Balk on --privileged
2017-03-13 20:35:45 +00:00
Daniel Nephin
e7bf5be18b Add compose file version 3.2
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-13 16:20:42 -04:00
Vincent Demeester
9dec486cf6 Update docker-credential-helpers to v0.5.0
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-13 21:08:41 +01:00
Daniel Nephin
6a21a127ab Refactor container run cli command.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-13 16:05:51 -04:00
Sebastiaan van Stijn
75f1bf0e86 Merge pull request #31752 from Microsoft/jjh/stringer
Fix stringer in Result (pkg\testutil\cmd)
2017-03-13 20:33:56 +01:00
Daniel Nephin
751552c65f Move endpoint_mode under deploy and add it to the schema.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-13 15:00:56 -04:00
allencloud
9679065728 support both endpoint modes in stack
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-13 15:00:49 -04:00
Kenfe-Mickael Laventure
4c95db877c Update containerd to version 949e6facb77383876aeff8a6944dde66b3089574
This fixes a regression where debug logs where hidden in debug mode.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-13 11:44:40 -07:00
John Howard (VM)
64615c9aa8 Windows: CI Only unpause on Hyper-V containers
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-13 11:24:25 -07:00
Aaron Lehmann
47cd4bf526 Merge pull request #31784 from albers/fix-completion-service-update-constraint
Fix bash completion for service constraints
2017-03-13 10:42:22 -07:00
Aaron Lehmann
47615d9871 Merge pull request #31674 from dperny/service-logs-err-on-tty
Error on attempting services logs on TTY container
2017-03-13 10:17:33 -07:00
Justin Cormack
2c6a1e1878 Merge pull request #31579 from ijc25/cpuacct
Correct CPU usage calculation in presence of offline CPUs and newer Linux
2017-03-13 16:32:18 +00:00
John Howard (VM)
4af3389d43 Windows: Balk on --privileged
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-13 08:56:17 -07:00
Harald Albers
d1340b9440 Fix bash completion for service constraints
- Remove bash completion for `service update --constraint`
- Add bash completion for `service update --constraint-{add,rm}`

Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-13 16:52:38 +01:00
John Howard (VM)
f577131d3b Fix stringer in Result (pkg\testutil\cmd)
Signed-off-by: John Howard (VM) <jhoward@ntdev.microsoft.com>
2017-03-13 08:40:31 -07:00
Vincent Demeester
4744b01d3b Merge pull request #31712 from rcjsuen/patch-2
Fix directive example to match description
2017-03-13 16:34:29 +01:00
Vincent Demeester
9c498eae4d Merge pull request #31682 from albers/completion-service-create--stop-signal
Add bash completion for `service create|update --stop-signal`
2017-03-13 16:22:27 +01:00
Vincent Demeester
e311c14019 Merge pull request #31773 from cyphar/apparmor-fix-ensure-exec
daemon: also ensureDefaultApparmorProfile in exec path
2017-03-13 16:15:49 +01:00
Vincent Demeester
be453c5a13 Merge pull request #30788 from ripcurld0/hide_win_opts
Hide command options that are related to Windows
2017-03-13 16:15:29 +01:00
Sebastiaan van Stijn
562d2dc978 Merge pull request #30648 from allencloud/do-not-fail-fast-when-inspect
do not fail fast when executing inspect command
2017-03-13 16:04:04 +01:00
Vincent Demeester
2fca6526d6 Merge pull request #31503 from Microsoft/jjh/cleanuphcsonrestore
Windows: Cleanup HCS on restore
2017-03-13 13:43:35 +01:00
Sebastiaan van Stijn
7f6e7088b7 Merge pull request #31047 from yallop/cli-v-state
Flags for specifying bind mount consistency
2017-03-13 11:36:10 +01:00
erxian
4bcb114496 refine docs to describe experimental feature docker build --squash
Signed-off-by: erxian <evelynhsu21@gmail.com>
2017-03-13 16:19:15 +08:00
Santhosh Manohar
6708676464 Vendor libnetwork for network inspect --verbose changes
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-03-12 21:23:21 -07:00
Aleksa Sarai
790a81ea9a daemon: also ensureDefaultApparmorProfile in exec path
When 567ef8e785 ("daemon: switch to 'ensure' workflow for AppArmor
profiles") was merged, it didn't correctly handle the exec path if
AppArmor profiles were deleted. Fix this by duplicating the
ensureDefaultApparmorProfile code in the exec code.

Fixes: 567ef8e785 ("daemon: switch to 'ensure' workflow for AppArmor profiles")
Signed-off-by: Aleksa Sarai <asarai@suse.de>
2017-03-13 15:20:05 +11:00
Misty Stanley-Jones
0ce13eb0d3 Fix markdown in references for Kramdown
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-03-12 12:01:06 -07:00
Vincent Demeester
613334eb50 Merge pull request #31736 from mlaventure/update-runc
Update runc to 9c2d8d184e5da67c95d601382adf14862e4f2228
2017-03-12 10:52:32 +01:00
Boaz Shuster
7199522ea2 Hide command options that are related to Windows
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-12 08:47:17 +02:00
John Howard
f8821202c6 Avoid TestExecWindowsOpenHandles timing out
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-03-10 18:46:01 -08:00
Sebastiaan van Stijn
8b02a15d52 Merge pull request #31176 from adshmh/29662-stack-deploy-error-if-external-combined-with-other-volume-options
stack deploy exits with error if both 'external' and other options are specified for a volume
2017-03-11 01:59:43 +01:00
Tibor Vass
e10f9db26d Merge pull request #30047 from duglin/distError
Add the mediaType to the error
2017-03-10 16:44:49 -08:00
Tibor Vass
43f8bce876 Merge pull request #31743 from aaronlehmann/vendor-swarmkit-0e2d9eb
Vendor swarmkit 0e2d9eb
2017-03-10 16:33:15 -08:00
Drew Erny
8dc437bd9b Add tail and since to service logs
This change adds the ability to do --tail and --since on docker service
logs. It wires up the API endpoints to each other and fixes some older
bugs. It adds integration tests for these new features.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-03-10 14:59:00 -08:00
Drew Erny
37ae1ef0ff Error on attempting service logs on TTY container
Right now getting logs from a service with an attached TTY does not
work. The behavior was undefined and caused the command to hang and
strange messages to occur in the daemon logs.

This returns errors, both deep in the swarmkit adapter (to guard against
undefined behavior, which is Bad) and in the daemon (to tell users that
the thing they're asking for is not possible).

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-03-10 14:48:56 -08:00
Kenfe-Mickael Laventure
6cea6d40fc Update runc to 9c2d8d184e5da67c95d601382adf14862e4f2228
This fix a conflict with systemd daemon-reload (see
https://github.com/opencontainers/runc/pull/1344)

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-10 14:07:56 -08:00
Victor Vieux
b6c5b4730b Merge pull request #31739 from mlaventure/update-containerd
Update containerd to 9f68f96b8c0746e254b52bc1defcf7cc0c1a62eb
2017-03-10 14:04:53 -08:00
Aaron Lehmann
79bf23845b Vendor swarmkit 0e2d9eb
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-10 11:15:44 -08:00
Brian Goff
c29c2a9a70 Merge pull request #31679 from allencloud/put-secret-in-swarm-thing
move secret into swarm thing in swagger
2017-03-10 13:50:25 -05:00
Brian Goff
05e7f956bd Merge pull request #31532 from aboch/vnd
Vendoring libnetwork @1a01921
2017-03-10 12:55:19 -05:00
Kenfe-Mickael Laventure
07ad8c6640 Update containerd to 9f68f96b8c0746e254b52bc1defcf7cc0c1a62eb
This include ensure that containerd GRPC healthcheck service is
register before the restore process is done as this can take a while.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-10 09:16:12 -08:00
Brian Goff
2c2983cd8e Merge pull request #31665 from mlaventure/aufs-lsof-oob
Remove aufs debugEBusy()
2017-03-10 11:51:14 -05:00
Justin Cormack
400d154737 Merge pull request #31703 from jen20/solaris-cflags
pkg/system: Set appropriate CFLAGS on Solaris
2017-03-10 14:34:53 +00:00
Sebastiaan van Stijn
61f7f0fc9e Merge pull request #31730 from thaJeztah/cherry-autoremove-it
Add integration tests for client- and daemon-side auto-remove
2017-03-10 15:00:14 +01:00
Vincent Demeester
83e29a5d87 Merge pull request #31582 from dnephin/misc-flag-cleanup
Cleanup some memory flags used in the CLI
2017-03-10 14:16:42 +01:00
Ian Campbell
115f91d757 Correct CPU usage calculation in presence of offline CPUs and newer Linux
In https://github.com/torvalds/linux/commit/5ca3726 (released in v4.7-rc1) the
content of the `cpuacct.usage_percpu` file in sysfs was changed to include both
online and offline cpus. This broke the arithmetic in the stats helpers used by
`docker stats`, since it was using the length of the PerCPUUsage array as a
proxy for the number of online CPUs.

Add current number of online CPUs to types.StatsJSON and use it in the
calculation.

Keep a fallback to `len(v.CPUStats.CPUUsage.PercpuUsage)` so this code
continues to work when talking to an older daemon. An old client talking to a
new daemon will ignore the new field and behave as before.

Fixes #28941.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-03-10 10:24:33 +00:00
Sebastiaan van Stijn
b3e4412ab4 Add integration tests for client- and daemon-side auto-remove
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 32dbb5c465)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-10 11:04:00 +01:00
Sebastiaan van Stijn
6c31abde20 Merge pull request #30870 from ripcurld0/fix_msg_rm
Fix the rm error message when a container is restarting/paused
2017-03-10 10:04:49 +01:00
allencloud
fb1f22b06a do not fail fast when executing inspect command
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-10 16:09:09 +08:00
Sebastiaan van Stijn
18163a42ec Merge pull request #31718 from aaronlehmann/broken-resp
cluster: Fix shadowed resp variable
2017-03-10 08:36:12 +01:00
catinthesky
a7497c39cd Fixing issue of docker top command failure when dealing with -m option
Changed per requested review to refactor to make it more logic clear.

Current output for "docker top <contianer-id> m" option,eg:
root@b2c7ec58399d:/go/src/github.com/docker/docker# docker top 755d5871ec45 am
PID                 TTY                 STAT                TIME                COMMAND
148                 pts/0               -                   0:00                bash
-                   -                   Ss+                 0:00                -

fixing issue:#30580

Signed-off-by: catinthesky <yaozaiyong@hotmail.com>
2017-03-10 02:50:21 +00:00
allencloud
6918624985 move secret into swarm thing in swagger
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-10 10:20:55 +08:00
Akihiro Suda
d610d3f61c TestDuplicateMountpointsForVolumesFromAndMounts: remove unintentional dependency for /tmp/data
/tmp/data needs to be created before running this test (by some other test)

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-10 02:04:45 +00:00
Aaron Lehmann
9d127f8de3 cluster: Fix shadowed resp variable
The response would never reach the client because it was being
redeclared in the current scope.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-09 17:58:12 -08:00
Akihiro Suda
239645c08d Merge pull request #31701 from jlaswell/master
Fix typo in run.md documentation
2017-03-10 10:15:49 +09:00
Michael Crosby
abb0fec9d0 Merge pull request #31704 from mlaventure/handle-paused-container-on-non-live-restore
Handle paused container when restoring without live-restore set
2017-03-09 15:59:02 -08:00
Boaz Shuster
0ec8f56a3d Fix the rm error message when a container is restarting/paused
Running the rm command on a paused/restarting container
will give an error message saying the container is running
which is incorrect.

To fix that, the error message will have the correct
container state and a procedure to remove it accordingly.

Notice: docker-py was bumped to:
        4a08d04aef0595322e1b5ac7c52f28a931da85a5

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-03-10 00:39:16 +02:00
Kenfe-Mickael Laventure
eac66b67be Remove aufs debugEBusy()
Since it was introduced no reports were made and lsof seems to cause
issues on some systems.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-09 14:35:13 -08:00
Remy Suen
f00fa63988 Fix directive example to match description
The description claims the directive is appearing after a comment but
the sample Dockerfile has the directive appear after an instruction.
Changed the ordering of the lines to match the example's description.

Signed-off-by: Remy Suen <remy.suen@gmail.com>
2017-03-10 07:11:30 +09:00
Kenfe-Mickael Laventure
c458d3bb98 Handle paused container when restoring without live-restore set
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-09 13:37:08 -08:00
Brian Goff
9bf36cb443 Merge pull request #31667 from mlaventure/update-runc
Update runc to 54296cf40ad8143b62dbcaa1d90e520a2136ddfe
2017-03-09 15:50:12 -05:00
Ying Li
bf7766bfe8 Use either the system root pool or an empty cert pool with custom CA roots,
and not a joint system+custom CA roots pool, when connecting from a docker
client to a remote daemon.

Signed-off-by: Ying Li <ying.li@docker.com>
2017-03-09 11:19:20 -08:00
Ying Li
868f90a0db Bump the version of go-connections
Signed-off-by: Ying Li <ying.li@docker.com>
2017-03-09 11:19:14 -08:00
James Nugent
4683f588ce pkg/system: Set appropriate CFLAGS on Solaris
The cgo in `meminfo_solaris.go` initializes variables in for loops, and
therefore requires a `-std=c99` `CFLAG` in order to compile (at least on
modern SmartOS).

Signed-off-by: James Nugent <james@jen20.com>
2017-03-09 13:40:05 -05:00
John Laswell
4a20252137 Fix typo in run.md documentation
Signed-off-by: John Laswell <john.n.laswell@gmail.com>
2017-03-09 13:08:48 -05:00
Sebastiaan van Stijn
705e031b98 Merge pull request #31396 from kevinfeyrer/patch-2
Update vlan-networks.md
2017-03-09 15:02:58 +01:00
Brian Goff
89b4c1d353 Merge pull request #31681 from lixiaobing10051267/masterLayer
modify ID to ChainID to avoid confusing
2017-03-09 08:45:35 -05:00
Sebastiaan van Stijn
6cf8ff5d1d Merge pull request #31684 from albers/fix-stop-signal-help-message
Fix description of `docker run|create --stop-signal` in help message
2017-03-09 11:36:26 +01:00
lixiaobing10051267
1b0f2d71a1 modify ID to ChainID to avoid confusing
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-03-09 16:59:04 +08:00
Akihiro Suda
59ba54094e integration-cli-on-swarm: make sure deferred function gets executed before os.Exit()
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-09 08:54:11 +00:00
Harald Albers
b303e229ca Fix description of docker run|create --stop-signal in help message
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-09 09:32:16 +01:00
Akihiro Suda
b9aa04cf9a integration-cli-on-swarm: new CLI flag: -keep-executor
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-09 08:13:13 +00:00
Harald Albers
994948a08f Improve bash completion for create|run --stop-signal
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-09 09:06:35 +01:00
Harald Albers
81cbf49e52 Add bash completion for service create|update --stop-signal
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-09 09:02:00 +01:00
Tonis Tiigi
adeb3e3684 Fix inefficient file paths filter
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-03-08 18:59:25 -08:00
Drew Erny
83c34de515 Fixed concerns, updated, and rebased PR.
Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-03-08 16:35:58 -08:00
Jon Johnson
cdc46abde5 Always HEAD blobs at least once during pushes
Signed-off-by: Jon Johnson <jonjohnson@google.com>
2017-03-08 15:36:12 -08:00
John Howard
a8e144dab4 Windows: no pidfile when service
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-03-08 15:18:30 -08:00
Kenfe-Mickael Laventure
49131f3ad4 Update runc to 54296cf40ad8143b62dbcaa1d90e520a2136ddfe
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-03-08 14:56:29 -08:00
Andrea Luzzardi
70a4369f5e service logs: Improve formatting
- Align output. Previously, output would end up unaligned because of
longer task names (e.g. web.1 vs web.10)
- Truncate task IDs and add a --no-trunc option
- Added a --no-ids option to remove IDs altogether
- Got rid of the generic ID Resolver as we need more customization.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2017-03-08 14:08:04 -08:00
kevinfeyrer
6ea36d7d48 Update vlan-networks.md
Some small changes to get the examples so that they run without error for me.
Improve consistency of presentation of the examples.
Fix some typos

Signed-off-by: kevinfeyrer <kevin.feyrer@btinternet.com>

Update vlan-networks.md

Restore "ip" accidentally removed

Signed-off-by: kevinfeyrer <kevin.feyrer@btinternet.com>

Update vlan-networks.md

Change prompt from container "$$" to host "$"

Signed-off-by: kevinfeyrer <kevin.feyrer@btinternet.com>

Update vlan-networks.md

Some changes suggested by cpuguy83 and thaJeztah

Signed-off-by: kevinfeyrer <kevin.feyrer@btinternet.com>
2017-03-08 21:53:24 +00:00
Boris Pruessmann
fcadb77b97 seccomp support for debian jessie
Based on jessie-backports.

Signed-off-by: Boris Pruessmann <boris@pruessmann.org>
2017-03-08 20:02:18 +01:00
Tõnis Tiigi
3fe2730ab3 Merge pull request #31535 from aaronlehmann/vendor-swarmkit-7fc7503
Vendor swarmkit d60ccf3
2017-03-08 09:52:28 -08:00
Daniel Nephin
7abeb08a8c Wrap errors in digest package so they are consistent between platforms.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-08 11:48:46 -05:00
Daniel Nephin
69d7362058 Use assertions in image package unit tests.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-08 11:46:10 -05:00
Daniel Nephin
9ea5e02e92 extract a function
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-08 11:46:09 -05:00
Brian Goff
71f249967e Merge pull request #31654 from dnephin/add-missing-validate
Add compose-bindata validation to default
2017-03-08 10:57:05 -05:00
Daniel Nephin
18e0a327ca Add compose-bindata validation to default.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-08 10:23:40 -05:00
Sebastiaan van Stijn
fb1890fb95 Merge pull request #31177 from allencloud/donot-allow-subsecond-in-dockerfile-healthcheck
do not allow sub second in healthcheck options in Dockerfile
2017-03-08 15:18:09 +01:00
Sebastiaan van Stijn
fb024df8f0 Merge pull request #31443 from james-nesbitt/export-more-compose-methods
exported add. cli compose loader parsing methods
2017-03-08 15:12:42 +01:00
Sebastiaan van Stijn
58e787602d Merge pull request #31641 from amatsus/master
Fix typo in CHANGELOG.md
2017-03-08 15:10:45 +01:00
Justin Cormack
ab8a22de36 Merge pull request #31611 from tophj-ibm/skip-plugin-test
skip plugin test on non x86 architectures
2017-03-08 14:00:15 +00:00
Akihiro MATSUSHiMA
d9325e102c Fix typo in CHANGELOG.md
Signed-off-by: Akihiro Matsushima <amatsusbit@gmail.com>
2017-03-08 21:13:05 +09:00
Vincent Demeester
d4a8c3b438 Merge pull request #30856 from allencloud/make-secret-update-support-name-and-id-prefix
make secret update support name and id prefix
2017-03-08 12:31:44 +01:00
Sebastiaan van Stijn
7e031413f2 Merge pull request #31566 from AkihiroSuda/use-latest-vndr
rerun vndr
2017-03-08 12:16:50 +01:00
Brian Goff
c430aea83c Merge pull request #31623 from aaronlehmann/dropped-taskspec-field
Fix dropped field in task translation from GRPC to REST
2017-03-08 05:24:48 -05:00
Chris Gibson
b4a1634cec Fix fish autocompletion with custom ps output
In the docker config.json, if `psFormat` or `imagesFormat` is set to a
non-standard format, it breaks autocompletion.

This fixes the issue by using a custom format.

Signed-off-by: Chris Gibson <chris@chrisg.io>
2017-03-08 14:19:48 +08:00
Akihiro Suda
1921fad6f5 api: clarify that Env var without = is removed from the environment
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-08 04:27:25 +00:00
Akihiro Suda
193730bec1 Merge pull request #31620 from justincormack/seccomp-up
Seccomp Update
2017-03-08 12:38:17 +09:00
Aaron Lehmann
39433318fe Vendor swarmkit d60ccf3
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-07 19:09:21 -08:00
Akihiro Suda
5a1b06d7fd rerun vndr
* run latest vndr so as to collect more LICENSE files
 * remove unused packages
 * vendor github.com/philhofer/fwd with LICENSE.md (MIT)
 * vendor github.com/bsphere/le_go with LICENSE (MIT)

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-03-08 02:29:34 +00:00
Aaron Lehmann
f7d846094a cluster: Proceed with startup if cluster component can't be created
The current behavior is for dockerd to fail to start if the swarm
component can't be started for some reason. This can be difficult to
debug remotely because the daemon won't be running at all, so it's not
possible to hit endpoints like /info to see what's going on. It's also
very difficult to recover from the situation, since commands like
"docker swarm leave" are unavailable.

Change the behavior to allow startup to proceed.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-07 16:50:39 -08:00
Darren Stahl
e507066303 Add missing resources to update block for Windows containers
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-03-07 16:25:17 -08:00
Darren Stahl
b819ffdb20 Stop holding client container lock during shutdown
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-03-07 16:24:34 -08:00
Remy Suen
f3d5d9753a Fix typo in sample output
Changed `ICONTAINER ID` to `CONTAINER ID`.

Signed-off-by: Remy Suen <remy.suen@gmail.com>
2017-03-08 08:39:43 +09:00
Aaron Lehmann
497c4f05b9 Fix dropped field in task translation from GRPC to REST
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-07 14:55:15 -08:00
Justin Cormack
9067ef0e32 Seccomp Update
- Update libseccomp-golang to 0.9.0 release
- Update libseccomp to 2.3.2 release
- add preadv2 and pwritev2 syscalls to whitelist

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-03-07 22:19:46 +00:00
Brian Goff
fd5f9d7941 Merge pull request #31265 from cyli/remove_swarm_subdirs
Rather than remove the swarm directory and re-create, remove the subdirs
2017-03-07 14:30:34 -05:00
Brian Goff
dd221a1e17 Merge pull request #31258 from dnephin/fix-override-default-stack-network
Support customizing the default network for a stack
2017-03-07 14:28:16 -05:00
Arash Deshmeh
96039b394a stack deploy exits with error if both 'external' and any other options are specified for volumes
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-03-07 14:21:45 -05:00
James Nesbitt
a1560a0cf2 exported cli compose loader parsing methods
Signed-off-by: James Nesbitt <james.nesbitt@wunderkraut.com>
2017-03-07 17:36:35 +02:00
Daniel Nephin
afcaeedbd4 Use opts.MemBytes for flags.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-07 10:32:49 -05:00
Brian Goff
ba5c0f88d5 Merge pull request #30568 from khudgins/nimbleplugin
added listing for Nimble Storage's volume plugin
2017-03-07 09:31:53 -05:00
Christopher Jones
e3c6cbed22 skip plugin test on non x86 architectures
Because the plugins in dockerhub aren't multi-arch, they will
fail on non x86-64 platforms. Comment this test out like we do with
the others.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-03-07 09:28:10 -05:00
Vincent Demeester
7bf4085264 Merge pull request #31198 from docbobo/master-manpages-aarch64
Improved aarch64 build
2017-03-07 13:53:48 +01:00
Jimmy Song
7038931b14 modify docker plugin sshfs entrypoint
Signed-off-by: Jimmy Song <rootsongjc@gmail.com>
2017-03-07 17:06:27 +08:00
allencloud
9d30525a04 make secret update support name and id prefix
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-03-07 16:01:21 +08:00
Aaron Lehmann
f8273a216e cluster: Renew the context after communicating with the registry
When pinning by digest, the registry might be slow or unresponsive. This
could cause the context to already be expired by the time UpdateService
or CreateService is called. We want digest pinning to be a best-effort
operation, so it's problematic if a slow or misbehaving registry
prevents the service operation from completing. Replace the context
after communicating with the registry, so we have a fresh timeout for
the gRPC call.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-06 16:05:56 -08:00
Tibor Vass
65068ea4c0 Merge pull request #31340 from anusha-ragunathan/plugin_nw_filter
Add network plugin filter test
2017-03-06 15:31:59 -08:00
Daniel Nephin
2e9f9d2c34 Some things just need to be line wrapped.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-06 16:01:57 -05:00
Vincent Demeester
de5ca681b5 Merge pull request #30807 from chchliang/networkproject
Check parameter --ip --ip6 --link-local-ip in `docker network connect`
2017-03-06 21:11:55 +01:00
Anusha Ragunathan
5e0e957061 Add network plugin filter test
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-03-06 12:05:20 -08:00
Victor Vieux
a2bf823a94 Merge pull request #31577 from thaJeztah/update-changelog-17.03.0-ce
Update changelog 17.03.0 ce
2017-03-06 11:19:26 -08:00
Sebastiaan van Stijn
31930bdfe1 Merge pull request #31580 from thaJeztah/move-jana-to-alumni
Move Jana to alumni
2017-03-06 20:17:19 +01:00
Vincent Demeester
4e051181f7 Merge pull request #31578 from vdemeester/request-daemon-host
[test-integration] Update request.* signature to remove the host
2017-03-06 19:45:01 +01:00
Kenfe-Mickaël Laventure
c6e102c830 Merge pull request #31194 from albers/completion-volume-aliases
Add support for command aliases to bash completion of `docker volume`
2017-03-06 09:52:41 -08:00
Sebastiaan van Stijn
1aeb2cf7cb Move Jana to alumni
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 18:22:00 +01:00
Keith Hudgins
05f37ad4f5 added listing for Nimble Storage's volume plugin
Signed-off-by: Keith Hudgins <greenman@greenman.org>

updated nimble plugin url
2017-03-06 12:15:25 -05:00
Daniel Nephin
a1bbb2f7ea Convert new compose volume type to swarm mount type
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-06 11:45:01 -05:00
Daniel Nephin
190dc5a40a Support expanded mounts in Compose loader
Add a test for loading expanded mount format.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-06 11:45:01 -05:00
Daniel Nephin
32c955b8fe Parse a volume spec on the client, with support for windows drives
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-06 11:45:01 -05:00
Daniel Nephin
65c899bee5 Add expanded mount syntax to Compose schema and types.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-06 11:45:01 -05:00
Sebastiaan van Stijn
2de9de60cd Fix duplicate "swarm mode" heading
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 16:56:45 +01:00
Vincent Demeester
b11ba1231e Update request.* signature to remove the host
99.9% of use case for request call are using daemonHost. This makes it
default and adds a `request.DoOnHost` function to be able to specify
the host for specific, more complex use cases.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-06 16:41:33 +01:00
Victor Vieux
98b7c4b00a add -ce support
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
(cherry picked from commit 44aec1b692)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 16:33:20 +01:00
Victor Vieux
ce67699ede update CHANGELOG
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
(cherry picked from commit 4fa77953f8)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 15:57:53 +01:00
Victor Vieux
ee887f327d Merge pull request #31205 from vieux/update_changelog_17.03
update CHANGELOG for 17.03.0-ce
(cherry picked from commit 9fb5c83df0)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 15:57:44 +01:00
Victor Vieux
dff2a0ac12 fix CHANGELOG date
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
(cherry picked from commit ce07fb6b0f)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 15:57:36 +01:00
Victor Vieux
6db395b966 bump 17.03.1-ce-rc1
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
(cherry picked from commit 1c44f35eb1)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-06 15:52:13 +01:00
Sebastiaan van Stijn
3cfc3e30a8 Merge pull request #31543 from chawlanikhil24/master
Replaced "err" with  "nil" & added a comment
2017-03-06 15:11:14 +01:00
Sebastiaan van Stijn
6753b3bef3 Merge pull request #31549 from cyphar/TestDaemonCommand-fix
cmd: docker: fix TestDaemonCommand
2017-03-06 15:10:40 +01:00
Vincent Demeester
95cb74818a Merge pull request #31450 from thaJeztah/fix-volume-force-remove
do not ignore "volume in use" errors when force-delete
2017-03-06 14:35:46 +01:00
Nikhil Chawla
73309aa009 Fixed the typo in the code
Signed-off-by: Nikhil Chawla <chawlanikhil24@gmail.com>
2017-03-06 17:31:04 +05:30
Brian Goff
3fdb0c57ef Merge pull request #31558 from albers/completion-service--rollback
Add bash completion for `service create|update --rollback-*`
2017-03-05 22:29:52 -05:00
Harald Albers
07a5119b1a Improve bash completion for service create|update --update-failure-action
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-05 10:42:44 -08:00
Harald Albers
5a9425c417 Add bash completion for service create|update --rollback-*
Also remove wrong completion for `docker service create --rollback`

Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-05 10:41:19 -08:00
Aleksa Sarai
dd7159060f cmd: docker: fix TestDaemonCommand
In more recent versions of Cobra, `--help` parsing is done before
anything else resulting in TestDaemonCommand not actually passing. I'm
actually unsure if this test ever passed since it appears that !daemon
is not being run as part of the test suite.

Signed-off-by: Aleksa Sarai <asarai@suse.de>
2017-03-05 15:26:49 +11:00
Yong Tang
338565805c Merge pull request #31108 from aaronlehmann/automatic-rollback
Automatic service rollback on failure
2017-03-03 18:47:14 -08:00
Aaron Lehmann
f9bd8ec8b2 Implement server-side rollback, for daemon versions that support this
Server-side rollback can take advantage of the rollback-specific update
parameters, instead of being treated as a normal update that happens to
go back to a previous version of the spec.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-03 16:33:34 -08:00
Aaron Lehmann
3a88a24d23 Add support for rollback flags
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-03 16:33:34 -08:00
Aaron Lehmann
cc9d04647a Add support for the "rollback" failure action
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-03 16:33:34 -08:00
Alessandro Boch
ef794c3649 Add test for anonymous container w/ net-alias on swarm network
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-03 15:55:06 -08:00
Alessandro Boch
b005c7d6eb Vendoring libnetwork @1a01921
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-03-03 15:55:06 -08:00
Aaron Lehmann
94d1a5b366 Merge pull request #31533 from yongtang/30733-fix
Fix error caused by overlapping merge of #30733
2017-03-03 15:19:00 -08:00
Boris Pruessmann
2ca57fe0b0 Added support for debian-stretch (aarch64)
Signed-off-by: Boris Pruessmann <boris@pruessmann.org>
2017-03-03 23:09:33 +01:00
Yong Tang
f2197b6794 Fix error caused by overlapping merge of 30733
This fix fixes build error caused by overlapping merge of 30733 and 28213.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-03-03 13:26:00 -08:00
Kenfe-Mickaël Laventure
9369acc776 Merge pull request #30733 from yongtang/02022017-formatter-header
Allow `--format` to use different delim in `table` format
2017-03-03 11:25:19 -08:00
Vincent Demeester
cddb8981ca Merge pull request #31522 from vdemeester/fix-clean-in-env
Ignore no such container in testEnv.Clean
2017-03-03 20:24:58 +01:00
Vincent Demeester
5dd89abdf1 Ignore no such container in testEnv.Clean
When moving the clean function there, this check was not ported and
generated some errors on the CI. `deleteContainer` now fail if any
error but the clean function won't if "no such container" (because of
some races -_-).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-03 15:57:27 +01:00
Sebastiaan van Stijn
57fd478169 Merge pull request #31083 from xulike666/fight-for-readability
fix some typos from module contrib to man
2017-03-03 15:13:01 +01:00
Sebastiaan van Stijn
3a5a1c3f3d Merge pull request #30725 from aaronlehmann/topology
Topology-aware scheduling
2017-03-03 15:01:12 +01:00
Sebastiaan van Stijn
e1da516598 Merge pull request #30265 from allencloud/add-CheckDuplicate-details-and-logic
add CheckDuplicate docs and logics in network
2017-03-03 14:18:52 +01:00
Sebastiaan van Stijn
10719ab6e4 Merge pull request #31511 from albers/completion-dashes-in-function-names
Improve POSIX compatibility of bash completion
2017-03-03 13:15:58 +01:00
Harald Albers
76f4681b56 Improve POSIX compatibility of bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
2017-03-03 10:26:33 +01:00
Vincent Demeester
dc1b0e1b2c Merge pull request #28279 from chchliang/updown
--max-concurrent-downloads,--max-concurrent-uploads must great than or equal to 0
2017-03-03 10:06:59 +01:00
Vincent Demeester
f4e82d71a8 Merge pull request #31491 from rawkode/feature/healthchecks-missing-environment
Healthchecks should inherit environment
2017-03-03 08:36:37 +01:00
Vincent Demeester
305601bb31 Merge pull request #31485 from vdemeester/fix-inContainer-detection
Fix inContainer detection which CROSSPLATFORM env variable missing
2017-03-03 08:35:59 +01:00
Akihiro Suda
91f11437b6 Merge pull request #30888 from estesp/moar-manifestlist-debug-output
Add debug output to manifest list parsing
2017-03-03 13:09:38 +09:00
Brian Goff
55b955d9ff Merge pull request #31409 from yuexiao-wang/fix-version
'docker daemon' deprecation message doesn't use the new version
2017-03-02 22:02:09 -05:00
yuexiao-wang
5a9cee7bb5 'docker daemon' deprecation message doesn't use the new versioning scheme
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-03-03 17:26:49 +08:00
Tibor Vass
0ab40a7552 Merge pull request #31496 from vieux/update_deprecation
update deprecation dates
2017-03-02 16:03:39 -08:00
John Howard
f59593cbd1 Windows: Cleanup HCS on restore
Signed-off-by: John Howard <jhoward@microsoft.com>

This ensures that any compute processes in HCS are cleanedup
during daemon restore. Note Windows cannot (currently) reconnect
to containers on restore.
2017-03-02 15:13:12 -08:00
Justin Cormack
0b9fddb789 Merge pull request #31478 from cyphar/seccomp-fix-unsupported-build
profiles: seccomp: fix !seccomp build
2017-03-02 09:23:28 -08:00
David McKay
647dce9dea Healthchecks should inherit environment
Signed-off-by: David McKay <david@rawkode.com>
2017-03-02 16:23:56 +00:00
Vincent Demeester
b985db92a3 Fix inContainer detection which CROSSPLATFORM env variable missing
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-02 14:36:37 +01:00
Sven Dowideit
9bebc635a2 Merge pull request #31484 from thaJeztah/waves-bye-to-down-under
Move Sven to alumni
2017-03-02 23:17:49 +10:00
Sebastiaan van Stijn
26537cafbc Move Sven to alumni
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-02 14:08:52 +01:00
Boris Pruessmann
47d887b33d Fixed incompatibilities with latest xenial
Signed-off-by: Boris Pruessmann <boris@pruessmann.org>
2017-03-02 13:46:11 +01:00
Vincent Demeester
6361117b59 Merge pull request #31480 from thaJeztah/carry-31213-update-experimental-index
[carry 31213] Update index.md
2017-03-02 12:22:12 +01:00
scjane
e20bbe59e9 Update index.md
Signed-off-by: Wang Jie <wangjie5@chinaskycloud.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-02 12:18:55 +01:00
Sebastiaan van Stijn
75483d2124 Merge pull request #31476 from thaJeztah/update-poule-config
update poule-config; add Yong to auto-assignment
2017-03-02 11:23:44 +01:00
Vincent Demeester
3b5d8e6a8d Merge pull request #31339 from albers/completion-service-ps--only-one-service
Bash completion for `docker service ps` completes only one service
2017-03-02 11:21:17 +01:00
Sebastiaan van Stijn
da3c711c12 update poule-config; add Yong to auto-assignment
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-02 11:15:40 +01:00
Aleksa Sarai
a3155743ad profiles: seccomp: fix !seccomp build
Previously building with seccomp disabled would cause build failures
because of a mismatch in the type signatures of DefaultProfile().

Signed-off-by: Aleksa Sarai <asarai@suse.de>
2017-03-02 21:13:17 +11:00
Vincent Demeester
3e561e4a84 Merge pull request #31356 from coolljt0725/fix_suspend
devicemapper: Fix suspend a removed device
2017-03-02 10:11:48 +01:00
Akihiro Suda
6b615d7638 Merge pull request #31472 from fate-grand-order/fixed
fix func name "BuildFromContext" in comment
2017-03-02 18:11:04 +09:00
fate-grand-order
d37df06ebe fix func name "BuildFromContext" in comment
Signed-off-by: Helen Xie <chenjg@harmonycloud.cn>
2017-03-02 17:00:40 +08:00
Sebastiaan van Stijn
1a412a0470 Merge pull request #31460 from vdemeester/integration-clean-in-env-p1
Move TearDownTest cleaning to environment package
2017-03-02 09:51:46 +01:00
Sebastiaan van Stijn
9321a12115 Merge pull request #31467 from thaJeztah/remove-jekyll-markers
remove Jekyll tags from CLI reference
2017-03-02 08:27:12 +01:00
Kenfe-Mickaël Laventure
d8b0d2b9e9 Merge pull request #30729 from dmcgowan/update-go-connections
Update go-connections package
2017-03-01 18:24:32 -08:00
chchliang
e59af2abe6 --max-concurrent-downloads,--max-concurrent-uploads must great than or equal to 0
Signed-off-by: chchliang <chen.chuanliang@zte.com.cn>
2017-03-02 09:23:01 +08:00
Sebastiaan van Stijn
7e3169f26d remove Jekyll tags from CLI reference
These Markdown files are now embedded in a YAML
file for templating in the documentation, and
these special markers are no longer needed.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-02 02:14:15 +01:00
Alexander Morozov
9358189fa3 Merge pull request #30657 from madhanrm/ns1
Support --net=container:<NameOrID> for windows (Shared Pod Network)
2017-03-01 13:59:52 -08:00
Brian Goff
563eb10202 Merge pull request #31434 from tophj-ibm/skip-more-plugin-tests
[multi-arch] skip more plugin tests on non-x86
2017-03-01 16:01:28 -05:00
Sebastiaan van Stijn
01ed606439 Merge pull request #29775 from AkihiroSuda/integration-cli-on-swarm
[EXPERIMENTAL] Integration Test on Swarm (completes in about 5 minutes, with 10 Swarm nodes)
2017-03-01 21:16:05 +01:00
Vincent Demeester
1858656925 Move TearDownTest cleaning to environment package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-03-01 21:04:11 +01:00
Ying Li
68506bd239 Rather than remove the swarm directory and re-create, remove the swarm subdirs
Signed-off-by: Ying Li <ying.li@docker.com>
2017-03-01 11:56:39 -08:00
Boris Pruessmann
ea70c9f596 Incorporated feedback from review
Signed-off-by: Boris Pruessmann <boris@pruessmann.org>
2017-03-01 20:27:53 +01:00
David Sheets
f13297c0be Add 'consistent', 'cached', and 'delegated' mode flags
This adds 'consistency' mode flags to the mount command line argument.
Initially, the valid 'consistency' flags are 'consistent', 'cached',
'delegated', and 'default'.

Signed-off-by: David Sheets <dsheets@docker.com>
Signed-off-by: Jeremy Yallop <yallop@docker.com>
2017-03-01 18:13:47 +00:00
Sebastiaan van Stijn
bb9f19503c Merge pull request #30754 from yongtang/25696-stop-signal
Add `--stop-signal` for `service create` and `service update`
2017-03-01 18:10:57 +01:00
Sebastiaan van Stijn
9d521a4d2f do not ignore "volume in use" errors when force-delete
When using `docker volume rm -f`, all errors were ignored,
and volumes where Purged, even if they were still in
use by a container.

As a result, repeated calls to `docker volume rm -f`
actually removed the volume.

The `-f` option was implemented to ignore errors
in case a volume was already removed out-of-band
by a volume driver plugin.

This patch changes the remove function to not
ignore "volume in use" errors if `-f` is used.
Other errors are still ignored as before.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-01 16:36:43 +01:00
Lei Jitang
6e25bb2ed6 devicemapper: fix suspend removed device
when doing devices.cancelDeferredRemoval, the device could have been removed
and return ErrEnxio, but it continue to check if it is need to do suspend.
doSuspend := devinfo != nil && devinfo.Exists != 0 uses a devinfo which is
get before devices.cancelDeferredRemoval(baseInfo), it is outdate, the device
has been removed and there is no need to do suspend. If do suspend it will return
devicemapper: Error running deviceSuspend dm_task_run failed.

Signed-off-by: Lei Jitang <leijitang@huawei.com>
2017-03-01 21:58:14 +08:00
Sebastiaan van Stijn
fabe16ee34 Merge pull request #31412 from vdemeester/integration-request-pass
[test-integration] convert request.SockRequestRaw to appropriate methods
2017-03-01 14:15:50 +01:00
Sebastiaan van Stijn
822abee151 Merge pull request #31124 from vdemeester/volume-unit-tests
Add unit tests to cli/command/volume package
2017-03-01 14:13:47 +01:00
Vincent Demeester
72989415ac Merge pull request #31442 from lixiaobing10051267/masterBuildTest
fix wrong foo to zzz in docker_cli_build_test.go
2017-03-01 11:51:44 +01:00
lixiaobing10051267
2276de8704 fix wrong foo to zzz in docker_cli_build_test.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-03-01 17:49:54 +08:00
Madhan Raj Mookkandy
040afcce8f (*) Support --net:container:<containername/id> for windows
(*) (vdemeester) Removed duplicate code across Windows and Unix wrt Net:Containers
(*) Return unsupported error for network sharing for hyperv isolation containers

Signed-off-by: Madhan Raj Mookkandy <MadhanRaj.Mookkandy@microsoft.com>
2017-02-28 20:03:43 -08:00
Tianon Gravi
6e04fbf748 Merge pull request #31076 from AkihiroSuda/check-vendor
hack/validate/vendor: add more checks
2017-02-28 15:35:16 -08:00
Christopher Jones
362d082b6e [multi-arch] skip more plugin tests on non-x86
Until the plugins are multi-arch plugins, or built on runtime,
skip these tests like we do with the remainder of the plugin tests.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-02-28 16:53:30 -05:00
Doug Davis
c127d9614f Add the mediaType to the error
Without this fix the error the client might see is:
	target is unknown
which wasn't helpful to me when I saw this today. With this fix I
now see:
	MediaType is unknown: 'text/html'
which helped me track down the issue to the registry I was talking to.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2017-02-28 11:36:32 -08:00
Phil Estes
9a8cb9313c Add debug output to manifest list parsing
Per request for more debug info on how the engine deals with
multi-platform "manifest list" images, this adds information about the
manifest list entries and whether it found an os/arch match, and the
digest of the match.

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com>
2017-02-28 14:11:13 -05:00
Sebastiaan van Stijn
fe9ab05886 Merge pull request #31425 from vieux/choose_cross
pass DOCKER_CROSSPLATFORMS to the container in the Makefile
2017-02-28 19:28:19 +01:00
Aaron Lehmann
b88429f8ca Merge pull request #31419 from thaJeztah/buffer-test-coverage
Improve coverage of pkg/ioutils/buffer
2017-02-28 10:19:54 -08:00
Victor Vieux
8aa1158164 pass DOCKER_CROSSPLATFORMS to the container in the Makefile
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-28 10:14:19 -08:00
Sebastiaan van Stijn
d265590a98 Merge pull request #31418 from thaJeztah/more-auto-assign
Add more maintainers to "auto-assign"
2017-02-28 18:34:00 +01:00
Vincent Demeester
40f390e67e Merge pull request #31384 from allencloud/validate-extrahosts-in-deamon-side
validate extraHosts in daemon side
2017-02-28 18:28:10 +01:00
Sebastiaan van Stijn
e77c2001aa Merge pull request #31354 from anusha-ragunathan/dial_socket
Net dial to the plugin socket during enable.
2017-02-28 18:24:56 +01:00
Vincent Demeester
f85ee17810 Convert request.SockRequestRaw to appropriate methods
`request.SockRequestRaw` is deprecated, let's use appropriate methods
for those. This is a first pass, `SockRequest` still needs to be removed.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 17:12:30 +01:00
Vincent Demeester
ae00a139cb Merge pull request #31190 from albers/completion-hide-aliases
Hide aliases in bash completion of `docker node|service`
2017-02-28 16:54:53 +01:00
Vincent Demeester
38d985a1c1 Merge pull request #31290 from thaJeztah/print-d_type_warning
add d_type warning to docker info, and optimize output
2017-02-28 16:35:00 +01:00
Sebastiaan van Stijn
d10915ba6c Add more maintainers to "auto-assign"
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-28 14:39:48 +01:00
Lei Jitang
fdcc7879c8 Merge pull request #31413 from lixiaobing10051267/masterRx
update Reported less Txbytes to RxPackets in docker_api_stats_test.go
2017-02-28 21:20:39 +08:00
Sebastiaan van Stijn
392ece2239 Improve coverage of pkg/ioutils/buffer
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-28 14:11:15 +01:00
Vincent Demeester
98a1d9a712 Merge pull request #30843 from vdemeester/daemon-duplication-refactor
Few daemon duplication refactor
2017-02-28 13:14:07 +01:00
lixiaobing10051267
5690de3c0e update Reported less Txbytes to RxPackets in docker_api_stats_test.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-02-28 19:42:35 +08:00
Vincent Demeester
250e05e427 Add a lockedManagerAction method to Cluster…
… in order to remove duplication.
Each time we update a cluster object, we do some common
operations (lock, verify it's on a manager, get the request context,
and the update). This introduce a method and refactor few
update/remove method that allows to duplicate less code.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 11:12:11 +01:00
Vincent Demeester
f7819fcb25 Refactor cpu-realtime file creation to remove duplication
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 11:12:06 +01:00
Vincent Demeester
2028d8698d Reduce duplication in graphdriver
Removes some duplication in counter.go and proxy.go

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 11:12:02 +01:00
Vincent Demeester
cb6832c6d3 Extract common code from disconnectFromNetwork and releaseNetwork
Both method are trying to detach the container from a cluster
network. The code is exactly the same, this removes the duplication.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 11:11:59 +01:00
Vincent Demeester
af0d9bdfe4 Refactor publish/expose filter to remove duplication
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 11:11:55 +01:00
Vincent Demeester
12485d62ee Introduce a CheckContainer to remove duplication
Some methods need to get a container *and* validate some conditon on
these (is the container running, …). The CheckContainer allows
to do that and helps remove some duplication.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 11:11:48 +01:00
Vincent Demeester
a620c0172c Refactor endpoint*FromGRPC to limit duplication
endpointSpecFromGRPC and endpointFromGRPC do the exact same thing for
endpoint{,Spec}.Ports, let's extract that to a method.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 10:51:55 +01:00
Vincent Demeester
3c5932086a Remove daemon.VXSubnets duplicate code
Refactor daemon.V4Subnets and daemon.V6Subnets to limit duplication

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-28 10:51:40 +01:00
Vincent Demeester
c956d25bfc Merge pull request #31393 from aaronlehmann/vendor-swarmkit-46bbd41
Vendor swarmkit 46bbd41
2017-02-28 09:40:20 +01:00
allencloud
d524dd95cc validate extraHosts in daemon side
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-28 10:37:59 +08:00
Anusha Ragunathan
1b41b7a4f4 Net dial to the plugin socket during enable.
When a plugin fails to start, we still incorrectly mark it as enabled.
This change verifies that we can dial to the plugin socket to confirm that
the plugin is functional and only then mark the plugin as enabled. Also,
dont delete the plugin on install, if only the enable fails.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-02-27 18:11:28 -08:00
Akihiro Suda
28797019b3 [EXPERIMENTAL] Integration Test on Swarm
This commit adds contrib/integration-cli-on-swarm/integration-cli-on-swarm.sh,
which enables IT to be running in parallel, using Swarm-mode and Funker.

Please refer to contrib/integration-cli-on-swarm/README.md

The test takes almost 5 to 6 minutes, with 10 n1-standard-4 GCE instances.

  $ ./contrib/integration-cli-on-swarm/integration-cli-on-swarm.sh --push-worker-image example.gcr.io/foo/bar --replicas 30 --shuffle
  2016/12/29 08:32:15 Loaded 1618 tests (30 chunks)
  2016/12/29 08:32:15 Executing 30 chunks in parallel, against "integration-cli-worker"
  2016/12/29 08:32:15 Executing chunk 0 (contains 54 test filters)
  ..
  2016/12/29 08:34:34 Finished chunk 28 [1/30] with 54 test filters in 2m19.098068003s, code=0.
  2016/12/29 08:34:38 Finished chunk 12 [2/30] with 54 test filters in 2m23.088569511s, code=0.
  2016/12/29 08:34:48 Finished chunk 10 [3/30] with 54 test filters in 2m33.880679079s, code=0.
  2016/12/29 08:34:54 Finished chunk 20 [4/30] with 54 test filters in 2m39.973747028s, code=0.
  2016/12/29 08:35:11 Finished chunk 18 [5/30] with 54 test filters in 2m56.28384361s, code=0.
  2016/12/29 08:35:11 Finished chunk 29 [6/30] with 52 test filters in 2m56.54047088s, code=0.
  2016/12/29 08:35:15 Finished chunk 1 [7/30] with 54 test filters in 3m0.285044426s, code=0.
  2016/12/29 08:35:22 Finished chunk 6 [8/30] with 54 test filters in 3m7.211775338s, code=0.
  2016/12/29 08:35:24 Finished chunk 25 [9/30] with 54 test filters in 3m9.938413009s, code=0.
  2016/12/29 08:35:30 Finished chunk 27 [10/30] with 54 test filters in 3m15.219834368s, code=0.
  2016/12/29 08:35:36 Finished chunk 9 [11/30] with 54 test filters in 3m21.615434162s, code=0.
  2016/12/29 08:35:41 Finished chunk 13 [12/30] with 54 test filters in 3m26.576907401s, code=0.
  2016/12/29 08:35:45 Finished chunk 17 [13/30] with 54 test filters in 3m30.290752537s, code=0.
  2016/12/29 08:35:53 Finished chunk 2 [14/30] with 54 test filters in 3m38.148423321s, code=0.
  2016/12/29 08:35:55 Finished chunk 24 [15/30] with 54 test filters in 3m40.09669137s, code=0.
  2016/12/29 08:35:57 Finished chunk 8 [16/30] with 54 test filters in 3m42.299945108s, code=0.
  2016/12/29 08:35:57 Finished chunk 22 [17/30] with 54 test filters in 3m42.946558809s, code=0.
  2016/12/29 08:35:59 Finished chunk 23 [18/30] with 54 test filters in 3m44.232557165s, code=0.
  2016/12/29 08:36:02 Finished chunk 3 [19/30] with 54 test filters in 3m47.112051358s, code=0.
  2016/12/29 08:36:11 Finished chunk 15 [20/30] with 54 test filters in 3m56.340656645s, code=0.
  2016/12/29 08:36:11 Finished chunk 11 [21/30] with 54 test filters in 3m56.882401231s, code=0.
  2016/12/29 08:36:22 Finished chunk 19 [22/30] with 54 test filters in 4m7.551093516s, code=0.
  2016/12/29 08:36:23 Finished chunk 21 [23/30] with 54 test filters in 4m8.221093446s, code=0.
  2016/12/29 08:36:25 Finished chunk 16 [24/30] with 54 test filters in 4m10.450451705s, code=0.
  2016/12/29 08:36:27 Finished chunk 5 [25/30] with 54 test filters in 4m12.162272692s, code=0.
  2016/12/29 08:36:28 Finished chunk 14 [26/30] with 54 test filters in 4m13.977801031s, code=0.
  2016/12/29 08:36:29 Finished chunk 0 [27/30] with 54 test filters in 4m14.34086812s, code=0.
  2016/12/29 08:36:49 Finished chunk 26 [28/30] with 54 test filters in 4m34.437085539s, code=0.
  2016/12/29 08:37:14 Finished chunk 7 [29/30] with 54 test filters in 4m59.22902721s, code=0.
  2016/12/29 08:37:20 Finished chunk 4 [30/30] with 54 test filters in 5m5.103469214s, code=0.
  2016/12/29 08:37:20 Executed 30 chunks in 5m5.104379119s. PASS: 30, FAIL: 0.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-02-28 02:10:09 +00:00
Victor Vieux
5d68ef529b update deprecation dates
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-27 17:16:47 -08:00
Tibor Vass
7fb83eb762 Merge pull request #31343 from aboch/vnd
Vendoring libnetwork @bdc9dce
2017-02-27 15:06:03 -08:00
Victor Vieux
406addf3f7 Merge pull request #31388 from ddingel/s390_add_yakkety
Add support for s390x ubuntu-yakkety deb
2017-02-27 14:22:53 -08:00
Sebastiaan van Stijn
fb5ccc6605 Merge pull request #31398 from pjaffe/patch-1
Remove incorrect duplicate phrase from build.md
2017-02-27 23:08:47 +01:00
pjaffe
7623563575 Remove incorrect duplicate phrase from build.md
A phrase from the "Text files" section in build.md was incorrectly duplicated under the "Tarball contexts" section.

Signed-off-by: Peter Jaffe <pjaffe@nevo.com>
2017-02-27 17:05:24 -05:00
Aaron Lehmann
17288c611a Topology-aware scheduling
This adds support for placement preferences in Swarm services.

- Convert PlacementPreferences between GRPC API and HTTP API
- Add --placement-pref, --placement-pref-add and --placement-pref-rm to CLI
- Add support for placement preferences in service inspect --pretty
- Add integration test

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-02-27 13:29:54 -08:00
Anusha Ragunathan
52ce5c2548 Merge pull request #31071 from anusha-ragunathan/plugin_filter_network
Service creation using network plugin filters.
2017-02-27 11:59:11 -08:00
Aaron Lehmann
99119fcafa Vendor swarmkit 46bbd41
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-02-27 11:51:00 -08:00
Sebastiaan van Stijn
8b6ae13c08 Merge pull request #31314 from williamh/split-openrc-log
contrib/init/openrc: allow separate logs for stdout and stderr
2017-02-27 19:31:57 +01:00
Vincent Demeester
6da111b3bb Add unit tests to cli/command/volume package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-27 18:39:35 +01:00
Vincent Demeester
ce79f6b644 Merge pull request #31382 from albers/completion-build--add-host
Add bash completion for `docker build --add-host`
2017-02-27 15:25:12 +01:00
Dominik Dingel
7f54153ba8 Add support for s390x ubuntu-yakkety deb
Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
2017-02-27 14:52:43 +01:00
Harald Albers
8de3eb0486 Add bash completion for docker build --add-host
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-27 12:56:57 +01:00
Sebastiaan van Stijn
a64ea37753 Merge pull request #30383 from TDAbboud/30096-add-host-docker-build
Add --add-host for docker build
2017-02-27 12:42:18 +01:00
Akihiro Suda
a6576b8a2b Merge pull request #31212 from fate-grand-order/fixed
use t.Fatal() to output the err message and fix typo
2017-02-27 12:26:35 +09:00
Vincent Demeester
60a94f7a04 Merge pull request #31349 from Phineas/master
Update copyright dates
2017-02-26 16:06:39 +01:00
Vincent Demeester
24b4c9e737 Merge pull request #31351 from dnephin/what-are-even-build-args
Refactor to remove duplicate code around BuildArgs
2017-02-26 16:04:30 +01:00
Brian Goff
33ffb74d3c Merge pull request #31363 from genki/fixed_typo_in_formatter
Fixed typo in service formatter.
2017-02-26 06:24:05 -05:00
Genki Takiuchi
d654c3d831 Fixed typo.
Signed-off-by: Genki Takiuchi <genki@s21g.com>
2017-02-26 12:59:18 +09:00
Daniel Nephin
b7577dd2ad Support customizing the default network for a stack.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-02-24 17:32:23 -05:00
Daniel Nephin
6e005fd5cc Refactor to remove duplicate code around BuildArgs.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-02-24 16:22:32 -05:00
phineas
da8cf590eb Update copyright dates
Signed-off-by: phineas <phin@phineas.io>
2017-02-24 19:41:59 +00:00
Alessandro Boch
ff6a3bef5a Vendoring libnetwork @bdc9dce
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-24 11:08:53 -08:00
Aaron Lehmann
55fcd6f4db Merge pull request #31192 from thaJeztah/warn-instead-of-error
don't log v2 pull as error when retrying
2017-02-24 09:58:13 -08:00
Arash Deshmeh
6d2a7eebcb docker compose interpolation format error now includes a hint on escaping $ characters.
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-02-24 11:37:40 -05:00
Harald Albers
a7b2f8dd8f Bash completion for docker service ps completes only one service
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-24 16:50:00 +01:00
Vincent Demeester
3470c8d767 Merge pull request #31330 from albers/completion-fix-node-plus-self
Fix bash completion for `docker service ps --filter node`
2017-02-24 15:35:27 +01:00
Vincent Demeester
d65a721f40 Merge pull request #31329 from albers/completion-desired-state-shutdown
Add completion for `--filter desired-state=shutdown`
2017-02-24 15:33:52 +01:00
Vincent Demeester
a0993f6993 Merge pull request #31331 from albers/completion-node-ls--filter-missing
Add bash completion for missing filters of `docker node ls`
2017-02-24 15:33:27 +01:00
Brian Goff
dd4a6c5aff Merge pull request #31313 from dperny/31306-fix-specify-stdoutstderr
Fix service logs API to be able to specify stream
2017-02-24 09:11:38 -05:00
Harald Albers
23b0c39fa6 Add bash completion for missing filters of docker node ls
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-24 14:29:23 +01:00
Sebastiaan van Stijn
8606144159 log fallback errors as "info"
Fallback errors are not an error, but an
informational message.

This changes those errors to be logged
as "Info" instead of "Error".

After this patch, debug logs look like this;

    DEBU[0050] Calling GET /_ping
    DEBU[0050] Calling POST /v1.27/images/create?fromImage=localhost%3A5000%2Ffoo&tag=latest
    DEBU[0050] Trying to pull localhost:5000/foo from https://localhost:5000 v2
    WARN[0050] Error getting v2 registry: Get https://localhost:5000/v2/: http: server gave HTTP response to HTTPS client
    INFO[0050] Attempting next endpoint for pull after error: Get https://localhost:5000/v2/: http: server gave HTTP response to HTTPS client
    DEBU[0050] Trying to pull localhost:5000/foo from http://localhost:5000 v2
    INFO[0050] Attempting next endpoint for pull after error: manifest unknown: manifest unknown
    DEBU[0050] Trying to pull localhost:5000/foo from https://localhost:5000 v1
    DEBU[0050] attempting v1 ping for registry endpoint https://localhost:5000/v1/
    DEBU[0050] Fallback from error: Get https://localhost:5000/v1/_ping: http: server gave HTTP response to HTTPS client
    INFO[0050] Attempting next endpoint for pull after error: Get https://localhost:5000/v1/_ping: http: server gave HTTP response to HTTPS client
    DEBU[0050] Trying to pull localhost:5000/foo from http://localhost:5000 v1
    DEBU[0050] [registry] Calling GET http://localhost:5000/v1/repositories/foo/images
    ERRO[0050] Not continuing with pull after error: Error: image foo:latest not found

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-24 14:27:35 +01:00
Harald Albers
4fb663a3b4 Fix bash completion for docker service ps --filter node
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-24 14:09:26 +01:00
Harald Albers
55fcfe7e8b Add completion for --filter desired-state=shutdown
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-24 13:31:59 +01:00
Drew Erny
f63c62ce70 Fix service logs API to be able to specify stream
Before this change, doing service logs was just tossing the stream
selectors and always using the default (both streams). This change adds
a check for which streams the user wants and only includes those.

Fixes #31306

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-02-23 15:09:09 -08:00
William Hubbs
65c1a3be5b contrib/init/openrc: allow separate logs for stdout and stderr
Signed-off-by: William Hubbs <w.d.hubbs@gmail.com>
2017-02-23 17:07:26 -06:00
Victor Vieux
87e45626f4 Merge pull request #31292 from albers/completion-exe
Activate bash completion for Windows executable
2017-02-23 10:47:24 -08:00
Sebastiaan van Stijn
8d28fc8fc4 Merge pull request #30731 from shin-/plugin_privileges_param_fix
Parameter name in GetPluginPrivileges is "remote"
2017-02-23 19:39:28 +01:00
Brian Goff
27c9a6e9c2 Merge pull request #31291 from albers/docs-daemon-hosts
Clarify why `hosts` in `daemon.json` does not work
2017-02-23 10:47:26 -05:00
Brian Goff
89b193adbe Merge pull request #31282 from YuPengZTE/devPretty
Delete dots to align with other commands description
2017-02-23 09:49:58 -05:00
Brian Goff
07ca9109a3 Merge pull request #31278 from vieux/bump_containerd
update containerd to 665e84e6c28653a9c29a6db601636a92d46896f3
2017-02-23 09:25:08 -05:00
Harald Albers
270a7bb501 Activate bash completion for Windows executable
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-23 14:45:18 +01:00
Harald Albers
340b75dd41 Clarify why hosts in daemon.json does not work
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-23 14:03:58 +01:00
Sebastiaan van Stijn
1921559798 add d_type warning to docker info, and optimize output
The overlay(2) drivers were moved up in the list of storage drivers,
and are known to have problems if the backing filesystem does not
support d_type.

Commit 2e20e63da2 added a warning,
which is logged in the daemon logs, however, many users do not
check those logs, and may overlook this warning.

This patch adds the same warning to the output of `docker info`
so that the warning is more easily found.

In addition, the output of warnings printed by `docker info` is
optimized, by;

- moving all warnings to the _end_ of the output, instead of
  mixing them with the regular output
- wrapping the storage-driver warnings, so that they are more
  easily readable

Example output with this patch applied
============================================

devicemapper using loopback devices:

    ...
    Insecure Registries:
     127.0.0.0/8
    Live Restore Enabled: false

    WARNING: devicemapper: usage of loopback devices is strongly discouraged for production use.
             Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.
    WARNING: bridge-nf-call-iptables is disabled
    WARNING: bridge-nf-call-ip6tables is disabled

overlay2 on xfs without d_type support;

    ...
    Insecure Registries:
     127.0.0.0/8
    Live Restore Enabled: false

    WARNING: overlay2: the backing xfs filesystem is formatted without d_type support, which leads to incorrect behavior.
             Reformat the filesystem with ftype=1 to enable d_type support.
             Running without d_type support will not be supported in future releases.
    WARNING: bridge-nf-call-iptables is disabled

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-23 13:36:57 +01:00
Boris Pruessmann
cdf17e6943 Improved aarch64 build
- Added 'golint', 'yamllint', and 'swagger'
- Fixed man/Dockerfile.aarch64 by bootstrapping Go 1.7.5

Signed-off-by: Boris Pruessmann <boris@pruessmann.org>
2017-02-23 10:51:27 +01:00
yupengzte
ec95ad7353 Delete dots to align with other commands description
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-02-23 16:46:08 +08:00
Victor Vieux
52ba250f7e Merge pull request #31279 from aaronlehmann/shutdown-error-leakage
Shutdown leaks an error when the container was never started
2017-02-22 23:47:39 -08:00
chchliang
b7ce6ce02e Check parameter --ip --ip6 --link-local-ip in
Signed-off-by: chchliang <chen.chuanliang@zte.com.cn>
2017-02-23 14:13:55 +08:00
Aaron Lehmann
37b492ae1b Shutdown leaks an error when the container was never started
I found that sometimes tasks would end up in a rejected state when
trying to update them quickly. The problem was that Shutdown could fail
if called before the container was started. Instead of returning an
error in this case, Shutdown should succeed. This allows tasks to
progress to the "shutdown" state as expected.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-02-22 19:12:07 -08:00
fate-grand-order
2a8d6368d4 use t.Fatal() to output the err message where the values used for formatting
text does not appear to contain a placeholder

Signed-off-by: Helen Xie <chenjg@harmonycloud.cn>
2017-02-23 10:16:22 +08:00
Victor Vieux
06f4049b8d update containerd to 665e84e6c28653a9c29a6db601636a92d46896f3
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-22 18:04:56 -08:00
Alexander Morozov
b0986f3b55 Merge pull request #31259 from mlaventure/bump-runc
Bump runc to version a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70
2017-02-22 17:47:00 -08:00
Alexander Morozov
b3e7f70137 Merge pull request #31263 from nalind/journal-doublefree
Synchronize the cursor returned by followJournal
2017-02-22 17:45:49 -08:00
Victor Vieux
1948cc5fac Merge pull request #31276 from thaJeztah/update-authors
Update authors
2017-02-22 17:23:25 -08:00
Sebastiaan van Stijn
5dfac5499a Update authors
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-23 02:17:51 +01:00
Victor Vieux
19cd2aa389 Merge pull request #31203 from yongtang/02202017-Swagger-ContainerSpec
Add missing fields in Swagger docs
2017-02-22 15:54:23 -08:00
Sebastiaan van Stijn
cf8408106d Merge pull request #31204 from yongtang/31179-Swagger-Secrets
Add missing Secrets in Swagger docs
2017-02-23 00:45:32 +01:00
Victor Vieux
f67eb69fe3 Merge pull request #31231 from mlaventure/fix-journald-invalid-free
Prevent freeing a possible invalid pointer from journald
2017-02-22 15:36:36 -08:00
Kenfe-Mickael Laventure
6f0e2c8c8b Bump runc to version a01dafd48bc1c7cc12bdb01206f9fea7dd6feb70
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-02-22 14:10:33 -08:00
Nalin Dahyabhai
d57c330617 Synchronize the cursor returned by followJournal
Make sure that the cursor value returned by followJournal() is the last
of the values returned by its goroutine's calls to drainJournal() by
waiting for it, rather than returning a value that may be superceded by
another if we're singalling the goroutine that it should exit by closing
a pipe.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
2017-02-22 16:22:00 -05:00
Kenfe-Mickael Laventure
81630df854 Prevent freeing a possible invalid pointer from journald
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-02-22 07:54:10 -08:00
Vincent Demeester
4534dcd494 Merge pull request #31031 from WeiZhang555/stats-all-docs
[Docs] Add docs for stating stopped containers
2017-02-22 11:14:15 +01:00
Vincent Demeester
89fe0e1b14 Merge pull request #30954 from yongtang/29448-swagger-version
Improve documentation of `Version` usage for Swarm API
2017-02-22 10:59:10 +01:00
Akihiro Suda
f001c54fee Merge pull request #31248 from lixiaobing10051267/masterCliTest
rectify the function name used by note
2017-02-22 17:40:50 +09:00
lixiaobing10051267
8fff3ea3d6 rectify the function name used by note
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-02-22 16:13:45 +08:00
Lei Jitang
ffc70d2f0c Merge pull request #31211 from lixiaobing10051267/masterAttach
invalide detach keys provided
2017-02-22 11:28:15 +08:00
lixiaobing10051267
660ec32e8f invalide detach keys provided
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-02-22 09:48:18 +08:00
Alexander Morozov
093867b9a6 Merge pull request #31189 from runcom/fix-build-cache-from
image/cache: fix isValidParent logic
2017-02-21 15:57:18 -08:00
Yong Tang
61e3e80b63 Improve documentation of Version usage for Swarm API
This fix is an attempt to improve the documentation of
`Version` usage for Swarm API in Swagger docs.

As is shown in the docs updates, `Version` field in Swarm
API is a way to ensure safe concurrency and determinism
so that multiple updates to the same swarm related objects
(Node, Service, etc) will not unintentially overwrite each other.

This fix fixes 29448.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-21 15:42:25 -08:00
Yong Tang
c2d49ec214 Add --stop-signal for service create and service update
This fix tries to address the issue raised in 25696 where
it was not possible to specify `--stop-signal` for `docker service create`
and `docker service update`, in order to use special signal to stop
the container.

This fix adds `--stop-signal` and update the `StopSignal` in `Config`
through `service create` and `service update`.

Related docs has been updated.

Integration test has been added.

This fix fixes 25696.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-21 15:19:45 -08:00
Victor Vieux
19795b934c Merge pull request #31206 from xuzhenglun/master
fix wrong print format
2017-02-21 14:13:32 -08:00
Sebastiaan van Stijn
1138803d66 Merge pull request #31232 from thaJeztah/move-james-to-alumni
move James to alumni
2017-02-21 23:11:08 +01:00
Krasi Georgiev
2914098996 ignore registry url from user when it is the default namespace
Signed-off-by: Krasi Georgiev <krasi@vip-consult.solutions>
2017-02-21 22:04:54 +02:00
John Howard
5fd1aee29a Merge pull request #30747 from friism/update-windows-dockerfiles
update git, hoist powershell setttings to top and get git simpler
2017-02-21 10:53:57 -08:00
Antonio Murdaca
1cf4b2b8bd image/cache: fix isValidParent logic
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-02-21 19:32:04 +01:00
Sebastiaan van Stijn
d1b8126331 move James to alumni
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-21 18:20:49 +01:00
Alexander Morozov
1ad165dba1 Merge pull request #31136 from tonistiigi/more-locks
Add more locking to storage drivers
2017-02-21 07:39:33 -08:00
Vincent Demeester
aef8aa565f Merge pull request #31207 from duglin/BuildArgDocs
Add even more docs around BuildArgs and *string
2017-02-21 09:46:31 +01:00
Boris Pruessmann
f9543b339d Added debian-jessie for aarch64
Adding debian-jessie as output for running make deb on aarch64. Also
update GO_VERSION to 1.8 to fix issues with incorrect pagesize.-

Signed-off-by: Boris Pruessmann <boris@pruessmann.org>
2017-02-21 07:43:57 +01:00
Yong Tang
7e6ce7c176 Add missing Secrets in Swagger docs
This fix tries to address the issue in 31179 where
secrets fields is missing for `docker service create`
or `docker service update`.

This fix adds Secrets for `ContainerSpec` in Swagger docs.

This fix fixes 31179.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-20 19:29:25 -08:00
Doug Davis
9419ccd706 Add even more docs around BuildArgs and *string
PR #31197 made me think I needed to add more text explaing why
BuildArgs needs to be a *string instead of string.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2017-02-20 19:19:56 -08:00
Reficul
9b1ceecd8a fix wrong print format
Signed-off-by: Reficul <xuzhenglun@gmail.com>
2017-02-21 10:26:06 +08:00
Yong Tang
897e69143a Add missing fields in Swagger docs
This fix adds the missing fields of `Hostname`, `OpenStdin`,
`Hosts`, `Groups`, and `Healthcheck` to `ContainerSpec`.
This fix also moves the `Label` in `ContainerSpec` to align with
the definition order.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-20 16:06:20 -08:00
Sebastiaan van Stijn
25500d56a5 Merge pull request #30814 from YuPengZTE/devSwarmCliExplain
fix the type
2017-02-21 00:59:58 +01:00
Victor Vieux
f10085165a Merge pull request #31164 from vieux/missing_api_changes
add missing API changes
2017-02-20 15:42:19 -08:00
Tony Abboud
7a962e4577 Add --add-host for docker build
Signed-off-by: Tony Abboud <tdabboud@hotmail.com>
2017-02-20 17:32:28 -05:00
Harald Albers
073047101e Add support for command aliases to bash completion of docker volume
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-20 18:19:57 +01:00
Harald Albers
52330a907a Hide aliases in bash completion of docker node|service
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-20 16:48:42 +01:00
Vincent Demeester
75843d36aa Merge pull request #31034 from erxian/refine-service-update-document
add rollback explanation to docker service update command document
2017-02-20 09:29:38 +01:00
allencloud
63811a82b6 do not allow sub second in healthcheck options in Dockerfile
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-20 15:47:34 +08:00
erxian
34919accaa add rollback explanation to docker service update command document
Signed-off-by: erxian <evelynhsu21@gmail.com>
2017-02-20 11:37:07 +08:00
Vincent Demeester
91cffdbedb Merge pull request #31159 from tonistiigi/fix-size-lock
Don’t hold container lock for size calculation
2017-02-19 16:31:21 +01:00
Victor Vieux
a7e6d2ca1f add missing API changes
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-19 01:33:43 -08:00
Sebastiaan van Stijn
475a8be5e5 Merge pull request #31160 from pastcompute/patch-1
Fix missing whitespace between words in manpage
2017-02-19 01:24:38 -08:00
Andrew McDonnell
296c803d32 Fix whitespace error.
Signed-off-by: Andrew McDonnell <bugs@andrewmcdonnell.net>
2017-02-19 17:28:26 +10:30
Tonis Tiigi
bd33a99acf Don’t hold container lock for size calculation
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-02-18 18:11:48 -08:00
Sebastiaan van Stijn
b89aff1afa Merge pull request #30898 from allencloud/add-link-query-in-container-rm-api-doc
add link query in container rm api doc
2017-02-18 09:53:51 -08:00
Victor Vieux
04c6a04f29 Merge pull request #31145 from yongtang/29972-service-read-only-follow-up
Update version-history.md for `ReadOnly` parameter
2017-02-17 23:24:24 -08:00
Sebastiaan van Stijn
6486924f0b Merge pull request #31141 from thaJeztah/swarm-node-error-return-503
fix status-code for "locked" swarm and "certificate expired"
2017-02-17 21:10:45 -08:00
Yong Tang
097b38c15d Update version-history.md for ReadOnly parameter
This fix updates the `docs/api/version-history.md`
for `ReadOnly` parameter, which is now available in
`POST /services/create` and `POST /services/(id or name)/update`.

This fix is a follow up to 30162.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-17 19:18:37 -08:00
Aaron.L.Xu
e0577d5fe8 fix some typos from module contrib to man
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-02-18 10:08:55 +08:00
Sebastiaan van Stijn
cf449cf69c Merge pull request #31013 from alihandemir/patch-1
Update LICENSE date
2017-02-17 17:44:36 -08:00
Victor Vieux
7761c69e23 Merge pull request #31055 from Microsoft/jjh/fix30278
Windows: Retry workaround for RS1/RS2 compute system enumeration
2017-02-17 16:53:16 -08:00
Sebastiaan van Stijn
7e44fffe40 fix status-code for "locked" swarm and "certificate expired"
These errors were producing the wrong status code,
changing to 503.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-17 16:51:50 -08:00
Tonis Tiigi
fc1cf1911b Add more locking to storage drivers
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-02-17 15:50:25 -08:00
Victor Vieux
cf5fe9ed0b Merge pull request #31075 from vieux/switch_to_new_versioning_scheme
Switch to new versioning scheme
2017-02-17 15:43:28 -08:00
Brian Goff
95a2aed95e Merge pull request #31125 from thaJeztah/fix-TestPullFailsWithAlteredLayer
fix TestPullFailsWithAlteredLayer
2017-02-17 16:24:34 -05:00
Anusha Ragunathan
6dd2a82458 Merge pull request #29984 from jmzwcn/issueNNP
[feature]: add daemon flag to set no_new_priv as default for unprivileged containers
2017-02-17 11:43:43 -08:00
Sebastiaan van Stijn
4077614fb3 fix DockerSchema1RegistrySuite.TestPullFailsWithAlteredLayer
This test was failing if after the busybox image switched to a
single layer.

The test fails because it alters the data of an empty layer and
relies on a side effect of another empty layer not being skipped
on pull to pass.

(The original patch was provided by Tonis Tiigi)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-17 10:34:33 -08:00
Anusha Ragunathan
b1debf1374 Merge pull request #28213 from yongtang/11062016-service-ps-format
Add `--format` to `docker service ps`
2017-02-17 10:23:18 -08:00
Anusha Ragunathan
bcdd6aa356 Service creation using network plugin filters.
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-02-17 09:41:37 -08:00
Alexander Morozov
0de867b315 Merge pull request #30967 from adshmh/24631-service-without-labels-returns-empty-map
Inspect output on service without labels is an empty map instead of null, fixes #24631
2017-02-17 08:49:32 -08:00
Alexander Morozov
f00514a1d0 Merge pull request #31114 from allencloud/split-compose-stack-deploy-from-deploydotgo
split compose deploy from deploy.go
2017-02-17 08:48:51 -08:00
Vincent Demeester
40532143c2 Merge pull request #30848 from nishanttotla/suppress-digest-docker-ps
Suppressing image digest in docker ps
2017-02-17 10:27:49 +01:00
Vincent Demeester
0ac25dfc75 Merge pull request #29742 from miaoyq/rewrite-validate-privileges
Rewrite the function 'validatePrivileges' without checking order
2017-02-17 10:24:11 +01:00
Vincent Demeester
146bc072a9 Merge pull request #31069 from tonistiigi/fix-overlay2-unmount
overlay2: fix unmounting layer without merge dir
2017-02-17 10:21:47 +01:00
allencloud
f46a14f7b6 split compose deploy from deploy.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-17 17:13:31 +08:00
Vincent Demeester
d07cd8c321 Merge pull request #29894 from cpuguy83/cleanup_volumedriver_retry_test
Use vol plugin creator instead of inserting spec
2017-02-17 09:46:31 +01:00
Vincent Demeester
e1839ab953 Merge pull request #31103 from tonistiigi/update-docs-link
Update storage driver options link
2017-02-17 09:45:31 +01:00
Brian Goff
a2106c8224 Merge pull request #30809 from fate-grand-order/branch
Correct fmt.Fprintf and t.Fatalf
2017-02-16 23:02:03 -05:00
Brian Goff
8e57694452 Merge pull request #31088 from xulike666/make-code-readable-again
Typo fixed and this time I provide my cSpell.json
2017-02-16 22:04:27 -05:00
Tonis Tiigi
e9864cc0ec Update storage driver options link
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-02-16 18:32:17 -08:00
Brian Goff
623612fe09 Merge pull request #30679 from mlaventure/cgroup-devices-docs
Add example for --device-cgroup-rule to create reference
2017-02-16 21:18:04 -05:00
Brian Goff
7978eef623 Merge pull request #30618 from cpuguy83/fix_data_races
Fix some data races
2017-02-16 21:15:21 -05:00
Sebastiaan van Stijn
88de5c36c7 Merge pull request #31023 from mstanleyjones/fix_liquid_errors
Fix some Liquid errors
2017-02-16 18:13:15 -08:00
Nishant Totla
b04536f61f Suppressing image digest in docker ps
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2017-02-16 18:11:56 -08:00
Brian Goff
e412e33a2f Merge pull request #30946 from sdurrheimer/zsh-completion-log-opts
Add zsh completion for docker log options 'max-buffer-size|mode'
2017-02-16 20:51:31 -05:00
Brian Goff
a12454d7a9 Merge pull request #31006 from vdemeester/30991-secret-mode-in-stack-deploy
Set 0444 as default secret mode in stack deploy
2017-02-16 20:34:21 -05:00
Brian Goff
39851eac0c Merge pull request #31070 from cpuguy83/31060_fix_log_read_spin
Fix cpu spin waiting for log write events
2017-02-16 20:15:38 -05:00
Aaron Lehmann
793c94fe44 Merge pull request #31091 from yongtang/02162017-swarmkit-update
Update SwarmKit to 6bc357e9c5f0ac2cdf801898a43d08c260b4d5d0
2017-02-16 17:12:00 -08:00
Tibor Vass
32b776d0d8 Merge pull request #31102 from vdemeester/add-yongtang-to-maintainers
Add Yong Tang to maintainers
2017-02-16 14:31:18 -08:00
Vincent Demeester
c7cf5fcf6c Add Yong Tang to maintainers
This adds Yong Tang as a maintainer for
docker/docker, as was proposed and
voted on the maintainers mailinglist.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-16 23:09:09 +01:00
Daniel Nephin
3e53ecaaae Merge pull request #31085 from vdemeester/sort-stack-ls
Sort `docker stack ls` by name
2017-02-16 14:23:48 -05:00
Vincent Demeester
c31f73abfd Merge pull request #29001 from darrenstahlmsft/WindowsOnLinux
Block pulling Windows images on non-Windows daemons
2017-02-16 19:57:54 +01:00
Tõnis Tiigi
bd81a16df0 Merge pull request #31002 from vdemeester/images-remove-handle-tag-digest
reference: handle combination of tag and digest in ImageDelete
2017-02-16 10:49:04 -08:00
Yong Tang
ec860ca252 Update SwarmKit to 6bc357e9c5f0ac2cdf801898a43d08c260b4d5d0
This fix tries to update the SwarmKit from
ed384f3b3957f65e3111bd020f9815f3d4296fa2
to
6bc357e9c5f0ac2cdf801898a43d08c260b4d5d0

The following is the list of docker related changes:
1. Took long time for Docker Swarm service turn desired state from Ready to Running (Issue #28291)
2. Native Swarm in 1.12 - panic: runtime error: index out of range (Issue #25608)
3. Global mode target replicas keep increasing (Issue #30854)
4. Creating service with publish mode=host and without published port crashes swarm manager (Issue #30938)
5. Define signals used to stop containers for updates (Issue #25696) (PR #30754)

This fix fixes #28291, #25608, #30854, #30938.
This fix is required by PR #30754.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-16 08:50:00 -08:00
Aaron.L.Xu
f8a4047796 why there are so many mistakes in our repo (up to /cmd)
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-02-17 00:32:48 +08:00
Brian Goff
7f0b833621 Merge pull request #31054 from darrenstahlmsft/WaitOOBE
Windows: Wait for OOBE to prevent crashing during host update
2017-02-16 11:18:25 -05:00
Vincent Demeester
55e2ed2a65 Merge pull request #31073 from aboch/naip
Release the network attachment on allocation failure
2017-02-16 16:36:28 +01:00
Vincent Demeester
387ff3c41d Merge pull request #30746 from yongtang/29936-validate-insecure-registry
Validate insecure registry (`--insecure-registry`) values
2017-02-16 14:53:51 +01:00
Vincent Demeester
97d85127c2 Sort docker stack ls by name
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-16 14:30:39 +01:00
Alessandro Boch
91820b6941 Release the network attachment on allocation failure
- otherwise the attachment task will stay in store and
  consume IP addresses and there is no way to remove it.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-16 05:21:06 -08:00
Madhu Venugopal
136e400a4c Merge pull request #31016 from aboch/vnd
Vendoring libnetowrk @5537cb4
2017-02-16 04:30:55 -08:00
Daniel Zhang
d7fda019bb Add daemon flag to set no_new_priv as default for unprivileged containers.
Signed-off-by: Daniel Zhang <jmzwcn@gmail.com>
2017-02-16 19:05:14 +08:00
Vincent Demeester
f2b68c6cc1 Set 0444 as default secret mode in stack deploy
Change the default secret mode to match the default one used in
`service` subcommands.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-16 11:26:05 +01:00
Vincent Demeester
0fbfeb17e5 reference: handle combination of tag and digest in ImageDelete
If you remove an image with digest+tag, it will fail because it wont
find it in the reference store (where digest+tag -> digest). Let's
make sure we do the same in ImageDelete, stripping the tag if
digest+tag are present.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-16 10:48:40 +01:00
Akihiro Suda
051b9a434f hack/validate/vendor: add more checks
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-02-16 07:43:03 +00:00
Victor Vieux
47396d6377 Switch to new versioning scheme
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-15 23:22:50 -08:00
Brian Goff
7a179972ff Fix cpu spin waiting for log write events
This loop is not ever going to return since it's never actually setting
the `err` var except on the first iteration.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-15 21:41:32 -05:00
Tonis Tiigi
e1af6c8a57 overlay2: fix unmounting layer without merge dir
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-02-15 17:58:12 -08:00
Brian Goff
d26cf30a60 Merge pull request #31056 from tonistiigi/build-cache-fix
Reset stdin config before running build actions
2017-02-15 18:02:57 -05:00
Alexander Morozov
d52350d662 Merge pull request #30416 from stevenh/linux-mount-fixes
Fix linux mount calls not applying propagation type changes
2017-02-15 14:10:54 -08:00
Darren Stahl
e128a65685 Windows: Wait for OOBE to prevent crashing during host update
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-02-15 14:01:54 -08:00
Alexander Morozov
f18bc25fa1 Merge pull request #29819 from vdemeester/service-validate-publish-simple-syntax
Make sure we validate simple syntax on service commands
2017-02-15 12:31:46 -08:00
Tonis Tiigi
0f293f9eb3 Reset stdin config before running build actions
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-02-15 11:49:17 -08:00
John Howard
83a2db2097 Windows: Retry loop to fix HCS race condition enumerating containers
Signed-off-by: John Howard <jhoward@microsoft.com>

This fixes https://github.com/docker/docker/issues/30278 where
there is a race condition in HCS for RS1 and RS2 builds, and enumeration
of compute systems can return access is denied if a silo is being
torn down in the kernel while HCS is attempting to enumerate them.
2017-02-15 11:16:24 -08:00
Alexander Morozov
abe6a073c7 Merge pull request #28638 from yongtang/28626-improve-error-handling
Improve error handling of experimental features in non-experimental mode
2017-02-15 11:00:03 -08:00
John Howard
9983a7b88f Revendor Microsoft\hcsshim to v0.5.12
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-15 10:16:16 -08:00
Victor Vieux
ee560bd748 Merge pull request #30303 from allencloud/rewrite-reload
refactor config reload in daemon
2017-02-15 09:40:55 -08:00
Victor Vieux
3167bb8629 Merge pull request #29957 from ilianaw/amazonlinux-rpms
Build the docker-engine RPM for Amazon Linux
2017-02-15 09:40:03 -08:00
Victor Vieux
07aaa71806 Merge pull request #31040 from BSWANG/master
fix docker stack omit external volume's "nocopy" parameter
2017-02-15 09:35:07 -08:00
Alihan Demir
da028586e6 Update LICENSE date
Signed-off-by: Alihan Demir <alihan.demir.6153@gmail.com>
2017-02-15 17:34:33 +01:00
Anusha Ragunathan
ce0f9b5e10 Merge pull request #30861 from runcom/fix-plug-errcheck
plugin: check errors
2017-02-15 07:50:27 -08:00
Steven Hartland
b3b14b97b1 Fix linux mount calls not applying propagation type changes
Propagation type changes must be done as a separate call, in the
same way as read only bind mounts.

To fix this:
1. Ensure propagation type change flags aren't included in other calls.
2. Apply propagation type change in a separate call.

Also:
* Make it clear which parameters are ignored by passing them as empty.
* Add tests to ensure Mount options are applied correctly.

Fixes #30415

Signed-off-by: Steven Hartland <steven.hartland@multiplay.co.uk>
2017-02-15 14:15:09 +00:00
allencloud
75f5d63ec8 rewrite reload code
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-15 21:57:27 +08:00
Brian Goff
946787e85e Merge pull request #30922 from dperny/fix-log-error-handling-return-error
Fix both logs commands to correctly handle errors
2017-02-15 08:41:42 -05:00
Justin Cormack
3b5ed562fc Merge pull request #30971 from dargor/allow_sync_file_range2
Allow sync_file_range2 on supported architectures.
2017-02-15 13:00:50 +00:00
bingshen.wbs
4fe611958c fix docker stack volume's nocopy parameter
Signed-off-by: bingshen.wbs <bingshen.wbs@alibaba-inc.com>
2017-02-15 19:46:27 +08:00
Vincent Demeester
ed003ffbe5 Merge pull request #31029 from BSWANG/master
fix docker daemon reload bug
2017-02-15 10:06:18 +01:00
Vincent Demeester
e8b92f154d Merge pull request #30832 from allencloud/update-swaggeryml-on-cluster-status-code
remove 400 and 404 for get nodes endpoint and add 503 for secret update
2017-02-15 09:45:44 +01:00
Antonio Murdaca
3716dd2272 plugin: check errors
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-02-15 09:35:36 +01:00
Steve Durrheimer
ba97d6be90 Add zsh completion for docker log options 'max-buffer-size|mode'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-15 08:49:13 +01:00
Arash Deshmeh
1b347cfc79 Fixing #24631, inspect output on swarm object types without labels is empty object {}
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2017-02-15 01:25:55 -05:00
Zhang Wei
7a36d55a86 [Docs] Add docs for stating stopped containers
This commit adds docs with example showing `docker stats` stopped
containers.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-02-15 14:20:30 +08:00
bingshen.wbs
51870c7e92 fix docker daemon reload bug
Signed-off-by: bingshen.wbs <bingshen.wbs@alibaba-inc.com>
2017-02-15 10:58:09 +08:00
Misty Stanley-Jones
2e19cc0cc4 Fix some Liquid errors
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-02-14 16:40:15 -08:00
Sebastiaan van Stijn
3dc87714d1 Merge pull request #30524 from mstanleyjones/30149_update_plugin_apidocs
Update plugin_volume apidocs for v2
2017-02-14 15:27:04 -08:00
Drew Erny
f19b0d72d1 fix docker logs error handling
Previously, `docker logs` (and by extension, `docker service logs`) had
an error in the way they returned errors that occurred after a stream
had already been started. Specifically, the errors were added verbatim
to the HTTP response, which caused StdCopy to fail with an esoteric
error. This change updates StdCopy to accept errors from the source
stream and then return those errors when copying to the destination
stream.

Signed-off-by: Drew Erny <drew.erny@docker.com>
2017-02-14 14:38:42 -08:00
Yong Tang
e49589505a Validate insecure registry (--insecure-registry) values
This fix is based on:
https://github.com/docker/docker/issues/29936#issuecomment-277494885

Currently the insecure registry is only checked to see if it contains
scheme (`http(s)://`) or not. No fully validation is done and this
caused many confusions like in #29936.

This fix tries to address the issue.

This fix adds additional validation so that an insecure registry
is validated to make sure it is in `host:port` format where host
could be IPv4/IPv6 or a host name, and port could be an integer
between 0-65535.

Additional unit tests have been added.

This fix is related to #29936.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-14 13:13:23 -08:00
Sebastiaan van Stijn
fddab1444f Merge pull request #30921 from anusha-ragunathan/debug_docs
Add plugin socket related debug docs.
2017-02-14 13:10:23 -08:00
Brian Goff
e70227e6d2 Merge pull request #30873 from albers/completion-fix-start--checkpoint
Fix bash completion for `start --checkpoint`
2017-02-14 16:00:15 -05:00
Brian Goff
03db46362e Merge pull request #30941 from sdurrheimer/zsh-completion-service-logs
Add zsh completion for 'docker service logs' command
2017-02-14 15:59:19 -05:00
Brian Goff
4f6e4bfd02 Merge pull request #30943 from sdurrheimer/zsh-completion-checkpoint
Add zsh completion for 'docker checkpoint' commands
2017-02-14 15:58:45 -05:00
Brian Goff
da9a162301 Merge pull request #30945 from sdurrheimer/zsh-completion-plugin
Add zsh completion for missing 'docker plugin' commands and options
2017-02-14 15:57:25 -05:00
Brian Goff
0464441fb1 Merge pull request #30952 from yongtang/02122017-swagger-attachable
Add `attachable` for network object in swagger api docs
2017-02-14 15:53:52 -05:00
Gabriel Linder
52d8f582c3 Allow sync_file_range2 on supported architectures.
Signed-off-by: Gabriel Linder <linder.gabriel@gmail.com>
2017-02-14 21:29:33 +01:00
Anusha Ragunathan
6b8ae52865 Add plugin socket related debug docs.
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-02-14 12:13:48 -08:00
Alessandro Boch
5b6048fd63 Vendoring libnetowrk @5537cb4
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-14 11:52:57 -08:00
Alexander Morozov
22472c8be5 Merge pull request #29702 from WeiZhang555/stats-all-format-name-panic
Send "Name" and "ID" when stating stopped containers
2017-02-14 10:48:42 -08:00
Vincent Demeester
24523d9b75 Merge pull request #30396 from sdurrheimer/zsh-completion-hide-legacy-commands
Zsh completion hide legacy commands
2017-02-14 19:42:25 +01:00
Akihiro Suda
9042dbdb3b Merge pull request #30985 from yongtang/29936-distribution-update
Update docker/distribution to b38e5838b7b2f2ad48e06ec4b500011976080621
2017-02-14 12:25:57 +09:00
yupengzte
d735972d31 fix the type
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-02-14 09:54:27 +08:00
Akihiro Suda
eac68dbbbc Merge pull request #30340 from ijrandom/master
Fix #30311: dockerd leaks ExecIds on failed exec -i
2017-02-14 10:13:16 +09:00
Yong Tang
20141b5219 Update docker/distribution to b38e5838b7b2f2ad48e06ec4b500011976080621
This fix updates docker/distribution to b38e5838b7b2f2ad48e06ec4b500011976080621
from 545102ea07aa9796f189d82f606b7c27d7aa3ed3

Changes related to docker issue:
1. Validate insecure registry (`--insecure-registry`) values (30746)

This fix is related to 30746.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-13 16:37:47 -08:00
Misty Stanley-Jones
48ccdf1f7a Update plugin_volume apidocs for v2
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-02-13 16:28:54 -08:00
Vincent Demeester
4163b5cbd5 Merge pull request #30983 from tianon/usr-bin-env-bash
Convert script shebangs from "#!/bin/bash" to "#!/usr/bin/env bash"
2017-02-13 20:48:05 +01:00
Aaron Lehmann
b8a3595941 Merge pull request #30834 from allencloud/refactor-daemon-cluster-handler-and-helper
refactor cluster/helper.go and split cluster.go into multiple files
2017-02-13 11:31:30 -08:00
Kenfe-Mickaël Laventure
c9fa3eed1b Merge pull request #30823 from albers/completion-plugin-upgrade
Add bash completion for `docker plugin upgrade`
2017-02-13 11:09:21 -08:00
Tianon Gravi
52379fa76d Convert script shebangs from "#!/bin/bash" to "#!/usr/bin/env bash"
This is especially important for distributions like NixOS where `/bin/bash` doesn't exist, or for MacOS users who've installed a newer version of Bash than the one that comes with their OS.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-02-13 11:01:54 -08:00
Alexander Morozov
ca3f82752c Merge pull request #30980 from albers/completion-mode-non-blocking
Fix bash completion for `--log-opt mode`
2017-02-13 11:00:27 -08:00
Vincent Demeester
5870675ebc Merge pull request #29864 from tianon/schemaVersion-2
Update "download-frozen-image-v2.sh" for schemaVersion 2
2017-02-13 19:53:19 +01:00
Brian Goff
6fb658eaed Merge pull request #30970 from cmehay/install
Force copy on make install to avoid Text file busy error
2017-02-13 13:49:46 -05:00
Harald Albers
2c52ec8403 Add bash completion for docker plugin upgrade
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-13 19:36:54 +01:00
Harald Albers
1fdb54eaf3 Fix bash completion for --log-opt mode
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-13 18:49:37 +01:00
Alexander Morozov
f3a8886d88 Merge pull request #29673 from vdemeester/extract-daemon-config
Extract daemon configuration and discovery to their own package
2017-02-13 09:11:13 -08:00
Brian Goff
019eb5d71f Merge pull request #30851 from chchliang/networktest
add testcase check connect.EndpointConfig not nil
2017-02-13 10:58:02 -05:00
Brian Goff
9ec42d4c3c Merge pull request #30948 from sdurrheimer/zsh-completion-service-format
Add zsh completion for 'docker {service ls,stack services} --format'
2017-02-13 09:57:15 -05:00
Brian Goff
ae190da1d2 Merge pull request #30949 from sdurrheimer/zsh-completion-ps-ports-filter
Add zsh completion for 'docker {ps,service ls} --filter expose|publish'
2017-02-13 09:44:46 -05:00
Brian Goff
6ab2220043 Merge pull request #30947 from sdurrheimer/zsh-completion-daemon-default-shm-size
Add zsh completion for 'dockerd --default-shm-size'
2017-02-13 09:34:42 -05:00
Brian Goff
0d9bb4ee12 Merge pull request #30944 from sdurrheimer/zsh-completion-build-squash
Add zsh completion for 'docker build --squash'
2017-02-13 09:33:39 -05:00
Christophe Mehay
01273ad85f Force copy on make install to avoid Text file busy error
Signed-off-by: Christophe Mehay <cmehay@online.net>
2017-02-13 14:17:06 +01:00
Vincent Demeester
a11e3bd5f9 Merge pull request #30871 from allencloud/split-swarm-test-into-multiple-files
split docker_api_swarm_test.go into multiple files
2017-02-13 11:42:25 +01:00
Sebastiaan van Stijn
a8f4d82176 Merge pull request #30965 from YuPengZTE/devDes
fix typo
2017-02-13 00:02:28 -08:00
yupengzte
266107f301 fix typo
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-02-13 15:47:38 +08:00
Sebastiaan van Stijn
b5b6752230 Merge pull request #30956 from yongtang/02122017-deprecated-login-email-removal
Add missing link in deprecated.md
2017-02-12 23:37:37 -08:00
Sebastiaan van Stijn
27ab008626 Merge pull request #30940 from sdurrheimer/zsh-completion-swarm-unlock-cmds
Add zsh completion for 'docker swarm unlock|unlock-key' commands
2017-02-12 23:35:46 -08:00
Michael Friis
5e19064462 update git, hoist powershell setttings to top and use simpler way to get git
Signed-off-by: Michael Friis <friism@gmail.com>
2017-02-12 19:27:05 -08:00
Sebastiaan van Stijn
db68291dab Merge pull request #30960 from allencloud/remove-redundant-colon
remove redundant colon introduced by mistake
2017-02-12 18:22:32 -08:00
allencloud
df64bc3ed0 remove redundant colon introduced by mistake
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-13 10:16:57 +08:00
Yong Tang
ee65dd0286 Add missing link in deprecated.md
This fix adds a missing link in deprecated.md
```
Deprecated In Release: [v1.13.0]...
```

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-12 15:15:52 -08:00
Yong Tang
ca020416e4 Add attachable for network object in swagger api docs
This fix adds `Attachable` property for network object
in the documentation of Swagger API docs

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-12 14:07:55 -08:00
Vincent Demeester
c110abfa9f Merge pull request #30900 from YuPengZTE/devPublisedPort
Add "=" before the value of PublishedPort
2017-02-12 21:56:43 +01:00
Vincent Demeester
5d47cb901b Merge pull request #30939 from sdurrheimer/zsh-completion-swarm-init-update
Add zsh completion for missing 'docker swarm init|update' options
2017-02-12 21:49:00 +01:00
Steve Durrheimer
ac56080930 Add zsh completion for 'docker {ps,service ls} --filter expose|publish'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 21:24:13 +01:00
Steve Durrheimer
8afb7f035d Add zsh completion for 'docker {service ls,stack services} --format'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 21:17:00 +01:00
Steve Durrheimer
1c387303af Add zsh completion for 'dockerd --default-shm-size'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 21:10:37 +01:00
Steve Durrheimer
7ee899065f Add zsh completion for missing 'docker plugin' commands and options
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 20:52:15 +01:00
Steve Durrheimer
5b3f5f97f2 Add zsh completion for 'docker build --squash'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 20:11:13 +01:00
Steve Durrheimer
0011a9eddd Add zsh completion for 'docker checkpoint' commands
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 20:06:38 +01:00
Steve Durrheimer
a89a104fb6 Add zsh completion for 'docker service logs' command
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 17:54:34 +01:00
Steve Durrheimer
e9a10ef4ad Add zsh completion for 'docker swarm unlock|unlock-key' commands
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 17:44:17 +01:00
allencloud
94b880f919 add CheckDuplicate docs and logics in network
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-13 00:34:40 +08:00
Steve Durrheimer
e31a6f278b Add zsh completion for missing 'docker swarm init|update' options
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-12 17:31:32 +01:00
Sebastiaan van Stijn
58152530cc Merge pull request #30886 from vieux/bring_back_changelog
add 1.13.x CHANGELOG to master
2017-02-11 18:19:00 -08:00
Sebastiaan van Stijn
e5066ef666 Merge pull request #30476 from yongtang/30447-port-config-long-syntax
Support expanded syntax of ports in `docker stack deploy`
2017-02-11 11:13:54 -08:00
allencloud
75a315d43e create a new file swarm.go and move swarm part code from cluster.go into swarm.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-12 02:54:07 +08:00
allencloud
4f4151bba4 create a new file networks.go and move network part codes from cluster.go into networks.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-12 02:50:17 +08:00
allencloud
6be675c752 create a new file task.go and move task part codes from cluster.go into tasks.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-12 02:45:00 +08:00
allencloud
6ff14b48c7 create a new file services.go and move service part codes from cluster.go into services.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-12 02:43:23 +08:00
allencloud
7591e313a4 create a new file nodes.go and move node part codes from cluster.go into nodes.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-12 02:36:09 +08:00
allencloud
b6fb3a56dc refactor helper.go and move getSecret to helper.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-12 02:30:53 +08:00
Akihiro Suda
9a6ebf08e7 Merge pull request #30905 from allencloud/remove-redudant-code-in-unlock-and-better-error-msg
remove redundant code and better error msg
2017-02-11 20:13:31 +09:00
Yong Tang
8b165cad1a Ignore some functions in the Go template when header is rendered
This fix ignore some functions in the Go template when header is
redendered, so that `--format "{{truncate .ID 1}}"` will still
be able to redener the header correctly.

Additional test cases have been added to the unit test.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-10 19:34:50 -08:00
Yong Tang
ea61dac9e6 Allow --format to use different delim in table format
This fix is an attempt to address
https://github.com/docker/docker/pull/28213#issuecomment-273840405

Currently when specify table format with table `--format "table {{.ID}}..."`,
the delimiter in the header section of the table is always `"\t"`.
That is actually different from the content of the table as the delimiter
could be anything (or even contatenated with `.`, for example):
```
$ docker service ps web --format 'table {{.Name}}.{{.ID}}' --no-trunc

NAME                ID
web.1.inyhxhvjcijl0hdbu8lgrwwh7
 \_ web.1.p9m4kx2srjqmfms4igam0uqlb
```

This fix is an attampt to address the skewness of the table when delimiter
is not `"\t"`.

The basic idea is that, when header consists of `table` key, the header section
will be redendered the same way as content section. A map mapping each
placeholder name to the HEADER entry name is used for the context of the header.

Unit tests have been updated and added to cover the changes.

This fix is related to #28313.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-10 19:34:50 -08:00
allencloud
5c0ea56d56 remove redundant code and better error msg
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-11 09:22:07 +08:00
Yong Tang
8421fc6349 Additional experimental features in non-experimental mode error handling
This fix is the follow up of the last commit.
In this fix:
1. If any of the parents of a command has tags, then this command's
`Args` (Args validation func) will be wrapped up. The warpped up func
will check to see if the feature is supported or not. If it is not supported,
then a not supported message is generated instead.

This fix is related to 28626.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-10 17:05:10 -08:00
Yong Tang
9f6fea8e7b Improve error handling of experimental features in non-experimental mode
This fix tries to address several issues raised in 28626 where
run against a non-experimental daemon may not generate correct
error message:
1. Incorrect flags were not checked against the supported features:
   ```
   $ docker stack --nonsense
   unknown flag: --nonsense
   ```
2. Subcommands were not checked against the supported features:
   ```
   $ docker stack ls
   Error response from daemon: This node is not a swarm manager...
   ```

This fix address the above mentioned issues by:
1. Add a pre-check for FlagErrorFunc
2. Recursively check if a feature is supported for cmd and its parents.

This fix fixes 28626.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-10 16:54:19 -08:00
Yong Tang
f8c7c921d9 Add --format to docker service ps
This fix tries to address the issue raised in 27189 where
it is not possible to support configured formatting stored in
config.json.

Since `--format` was not supported in `docker service ps`,
the flag `--format` has also been added in this fix.

This fix
1. Add `--format` to `docker service ps`
2. Add `tasksFormat` to config.json
3. Add `--format` to `docker stack ps`
4. Add `--format` to `docker node ps`

The related docs has been updated.

An integration test has been added.

This fix fixes 27189.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-10 16:53:04 -08:00
Sebastiaan van Stijn
584e399d96 Merge pull request #30889 from aaronlehmann/addreference-tag-digest
reference: Handle combination of tag and digest in AddReference
2017-02-10 13:27:12 -08:00
Dmitry Shyshkin
3cc0d6bb04 Fix #303111: dockerd leaks ExecIds on failed exec -i
Signed-off-by: Dmitry Shyshkin <dmitry@shyshkin.org.ua>
2017-02-10 21:13:00 +02:00
Brian Goff
be6481041d Merge pull request #30903 from allencloud/remove-unused-headers-in-secret-create
remove unused headers in secret_create.go
2017-02-10 14:10:31 -05:00
Sebastiaan van Stijn
1eb2841334 Merge pull request #30839 from yongtang/02082017-swarmkit-update
Update SwarmKit to ed384f3b3957f65e3111bd020f9815f3d4296fa2
2017-02-10 10:14:30 -08:00
Brian Goff
69be892c9d Merge pull request #30901 from xulike666/fight-for-readability
Fix some easy typos in cmd/* :D
2017-02-10 13:09:25 -05:00
Misty Stanley-Jones
c621fbce04 Merge pull request #29559 from mstanleyjones/define_bridge
Define bridge networks
2017-02-10 09:25:29 -08:00
Daniel Nephin
cbf2f4d281 Use 2 seconds instead of 2000 milliseconds
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-02-10 11:30:07 -05:00
allencloud
69afd30444 split docker_api_swarm_test.go into multiple files
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-11 00:18:01 +08:00
allencloud
2972b99f1b add link query in container rm api doc
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-11 00:17:37 +08:00
allencloud
31d9ce6f5c remove unused headers in secret_create.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-11 00:16:48 +08:00
Brian Goff
bade08a063 Merge pull request #30896 from Microsoft/jjh/emitcommit
Windows: make.ps1 emit commit ID
2017-02-10 09:56:02 -05:00
Justin Cormack
eaffb3099a Merge pull request #30893 from Microsoft/jjh/disabletesttemporarily
Windows: Temporarily disable TestBuildLastModified
2017-02-10 11:38:56 +00:00
hyzhou.zhy
78f2e0011e Add Aliyun mirror support to hack/install.sh
Signed-off-by: hyzhou.zhy <hyzhou.zhy@alibaba-inc.com>
2017-02-10 17:42:20 +08:00
Victor Vieux
b847fe563a Merge pull request #30885 from vieux/restore_join_token
print 'worker' join token after swarm init
2017-02-10 00:12:06 -08:00
Aaron.L.Xu
437e81cd69 review code about cmd/* and fix some easy typos :D
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-02-10 15:52:33 +08:00
yupengzte
e9a85c5909 Add = before the value of PublishedPort
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-02-10 14:53:18 +08:00
John Howard
f48f1ff34c Windows: make.ps1 emit commit ID
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-09 20:01:23 -08:00
John Howard
8eb0af1a0c Windows: Temporarily disable TestBuildLastModified
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-09 18:13:20 -08:00
Aaron Lehmann
b7a2d85316 reference: Handle combination of tag and digest in AddReference
With the switchover to the unified reference package, AddReference no
longer does the right thing when passed a reference that has both a
digest and a tag. It would put both the digest in the tag in the
reference stored in the repositories.json file, which isn't the right
format, and would mean that neither "docker run" nor docker services
could locate the image. This meant that a simple "docker service create"
command like "docker service create --name foo busybox top" would create
a service that immediately went into a restart loop, because it couldn't
use the image that had been pulled.

Fix AddReference to strip out the tag when both a tag and digest are
specified. We do this because we don't necessarily want to overwrite the
tag - when both a digest and tag are specified, the tag is only
advisory.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-02-09 16:30:46 -08:00
Victor Vieux
ce29081d80 add 1.13.x CHANGELOG to master
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-09 15:11:06 -08:00
Victor Vieux
18adec5c89 print 'worker' join token after swarm init
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-09 14:54:05 -08:00
Brian Goff
bdf4cad1d1 Do group lookup in listeners package
This used to be handled by go-connections, but now it only takes a group
ID (int).

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-09 16:38:52 -05:00
Derek McGowan
e5d77c64a2 Convert socket group to int
Sockets interface has been updated to take in a the group
id as an integer rather than a string.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-02-09 16:10:38 -05:00
Derek McGowan
4f223337a5 Update go-connections package
fixes #30450

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-02-09 16:10:38 -05:00
Brian Goff
7efc286518 Merge pull request #30146 from tonistiigi/update-net
vendor: update golang/net to c427ad74c
2017-02-09 12:41:08 -05:00
Brian Goff
10c0af0835 Merge pull request #30702 from allencloud/update-api-docs-about-filters
add missing filter type in swagger.yml and sort filter type in alphabets
2017-02-09 10:33:49 -05:00
Justin Cormack
cff32a411a Merge pull request #30849 from vieux/bump_api_1.27
bump engine API to 1.27
2017-02-09 13:48:43 +00:00
Harald Albers
33d9b58472 Fix bash completion for start --checkpoint
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-09 14:41:50 +01:00
Arnaud Porterie
f86283fc32 Merge pull request #30864 from icecrime/fix_poule_config
Fix poule configuration
2017-02-09 01:40:17 -08:00
Arnaud Porterie (icecrime)
3bf1922333 Fix poule configuration
Signed-off-by: Arnaud Porterie (icecrime) <arnaud.porterie@docker.com>
2017-02-09 01:37:53 -08:00
chchliang
fd74940304 add test case check connect.EndpointConfig not nil
Signed-off-by: chchliang <chen.chuanliang@zte.com.cn>
2017-02-09 11:26:20 +08:00
Zhang Wei
eb3a7c2329 Send "Name" and "ID" when stating stopped containers
When `docker stats` stopped containers, client will get empty stats data,
this commit will gurantee client always get "Name" and "ID" field, so
that it can format with `ID` and `Name` fields successfully.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-02-09 09:46:59 +08:00
Sebastiaan van Stijn
40dbbd3f9b Merge pull request #30804 from mstanleyjones/cli_fixups
Cli fixups
2017-02-08 17:07:43 -08:00
Misty Stanley-Jones
52df69f00d Standardized formatting of CLI reference commands
Command name should be a H1

Only Description, Examples, and Related Commands should be H2

Changed 'Related information' heading to 'Related commands' since 99% it is only linking commands

Added some examples where relevant

Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-02-08 16:57:58 -08:00
Misty Stanley-Jones
80ee21e533 Removed unused image
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-02-08 16:38:31 -08:00
Misty Stanley-Jones
e2ce870371 Add info about the relationship between swarm leave and node rm
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-02-08 16:38:31 -08:00
Iliana Weller
0b0216b67b Build the docker-engine RPM for Amazon Linux
Signed-off-by: Iliana Weller <iweller@amazon.com>
2017-02-08 16:19:22 -08:00
Victor Vieux
6bad3fc9fb bump engine API to 1.27
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-08 16:14:58 -08:00
Sebastiaan van Stijn
dea528e8cd Merge pull request #29906 from allencloud/update-events-related-things
update events related doc and swagger.yml
2017-02-08 14:13:37 -08:00
Misty Stanley-Jones
1e74df3637 Define bridge networks
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-02-08 13:33:34 -08:00
Vincent Demeester
f19bfbbf8c Merge pull request #30835 from icecrime/update_poule
Randomly assigned pull requests after 2 weeks
2017-02-08 22:23:24 +01:00
Yong Tang
6fb3a9d33c Update SwarmKit to ed384f3b3957f65e3111bd020f9815f3d4296fa2
This fix updates SwarmKit to ed384f3b3957f65e3111bd020f9815f3d4296fa2.
Notable changes since last update (3ca4775ba4a5519e2225c3337c7db8901ec39d26):

1. Fix duplicated ports allocation with restarted swarm. (Docker issue #29247)
2. Topology-aware scheduling (Docker PR #30725)

Docker issue #29247 was labeled 1.13.1, though it is advised that
related SwarmKit changes only to be merged to master
(based on the feedback https://github.com/docker/swarmkit/pull/1802#issuecomment-274143500)

This fix fixes #29247 (master only).
This fix is related to #30725.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-08 11:59:13 -08:00
Sebastiaan van Stijn
d4be5a2f67 Merge pull request #30802 from anusha-ragunathan/debug_docs
Add plugin debug docs.
2017-02-08 11:49:11 -08:00
Anusha Ragunathan
94c40a3074 Add plugin debug docs.
Doc fix for #30761

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-02-08 11:46:24 -08:00
Alexander Morozov
f5116c6802 Merge pull request #30776 from WeiZhang555/stats-all-format-name-panic-cli
Fix panic of "docker stats --format {{.Name}} --all"
2017-02-08 11:40:06 -08:00
Aaron Lehmann
846b787819 Merge pull request #30453 from yongtang/30242-duplicate-network-name-inspect
Return error in case `docker network inspect` is ambiguous
2017-02-08 09:18:31 -08:00
Arnaud Porterie (icecrime)
e27838049d Fix typo
Signed-off-by: Arnaud Porterie (icecrime) <arnaud.porterie@docker.com>
2017-02-08 07:58:46 -08:00
Arnaud Porterie (icecrime)
d4f5fa29db Randomly assign pull requests older than two weeks
Add a daily job to randomly assign pull requests which have been opened
for more than two weeks.

Signed-off-by: Arnaud Porterie (icecrime) <arnaud.porterie@docker.com>
2017-02-08 07:58:32 -08:00
Brian Goff
98d34ae606 Merge pull request #30812 from allencloud/add-filters-for-plugin-list-in-swaggeryml
add filters for plugin list endpoint in swagger.yml
2017-02-08 10:35:21 -05:00
allencloud
5692a7ba3d remove 400 and 404 for get nodes endpoint and add 503 for secret update
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-08 23:06:09 +08:00
Vincent Demeester
db63f9370e Extract daemon configuration and discovery to their own package
This also moves some cli specific in `cmd/dockerd` as it does not
really belong to the `daemon/config` package.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-08 09:53:38 +01:00
Steve Durrheimer
7027cd5b37 Fix useless trailing backslash in zsh completion
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-08 08:11:20 +01:00
Steve Durrheimer
d41ceb9d73 Add cache invalidation in zsh completion when the DOCKER_HIDE_LEGACY_COMMANDS envvar changes
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-02-08 08:10:34 +01:00
allencloud
26649de086 add filters for plugin list endpoint in swagger.yml
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-08 14:07:20 +08:00
fate-grand-order
921002137a Correct fmt.Fprintf and t.Fatalf
Signed-off-by: Helen Xie <chenjg@harmonycloud.cn>
2017-02-08 12:32:40 +08:00
Zhang Wei
5a7b3c78e0 Fix panic of "docker stats --format {{.Name}} --all"
This commit fixes panic when execute stats command:

* use --format {{.Name}} with --all when there're exited containers.
* use --format {{.Name}} while stating exited container.

The root cause is when stating an exited container, the result from the
api didn't contain the Name and ID field, which will make format
process panic.

Panic log is like this:

```
panic: runtime error: slice bounds out of range [recovered]
	panic: runtime error: slice bounds out of range

goroutine 1 [running]:
panic(0xb20f80, 0xc420014110)
	/usr/local/go/src/runtime/panic.go:500 +0x1a1
text/template.errRecover(0xc4201773e8)
	/usr/local/go/src/text/template/exec.go:140 +0x2ad
panic(0xb20f80, 0xc420014110)
	/usr/local/go/src/runtime/panic.go:458 +0x243
github.com/docker/docker/cli/command/formatter.(*containerStatsContext).Name(0xc420430160,
0x0, 0x0)
	/go/src/github.com/docker/docker/cli/command/formatter/stats.go:148
+0x86
reflect.Value.call(0xb9a3a0, 0xc420430160, 0x2213, 0xbe3657, 0x4,
0x11bc9f8, 0x0, 0x0, 0x4d75b3, 0x1198940, ...)
	/usr/local/go/src/reflect/value.go:434 +0x5c8
reflect.Value.Call(0xb9a3a0, 0xc420430160, 0x2213, 0x11bc9f8, 0x0, 0x0,
0xc420424028, 0xb, 0xb)
	/usr/local/go/src/reflect/value.go:302 +0xa4
text/template.(*state).evalCall(0xc420177368, 0xb9a3a0, 0xc420430160,
0x16, 0xb9a3a0, 0xc420430160, 0x2213, 0x1178fa0, 0xc4203ea330,
0xc4203de283, ...)
	/usr/local/go/src/text/template/exec.go:658 +0x530
```

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-02-08 10:26:52 +08:00
Brian Goff
41650df87e Merge pull request #30474 from allencloud/sort-volume-drivers
sort volume drivers  and auth plugins in info response
2017-02-07 21:13:21 -05:00
Yong Tang
abf31ee083 Return error in case docker network inspect is ambiguous
This fix is partially based on comment
https://github.com/docker/docker/issues/30242#issuecomment-273517205

Currently, `docker network inspect` relies on `FindNetwork()` which
does not take into consideration that multiple networks with the same
name might exist.

This fix propose to return `docker network inspect` in a similiar
fashion like other commands:
1. Lookup full ID
2. Lookup full name
3. Lookup partial ID
If multiple networks exist, an error will be returned.

NOTE: this fix is not a complete fix for the issue raised in
https://github.com/docker/docker/issues/30242#issuecomment-273517205
where SwarmKit is unable to update when multiple networks with the same
name exit.
To fix that issue requires multiple places when `FindNetwork()` is called.
Because of the impact of changing `FindNetwork()`, this fix focus on
the issue in `docker network inspect`.

A separate PR will be created to address
https://github.com/docker/docker/issues/30242#issuecomment-273517205

An integration test has been added.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-07 18:05:29 -08:00
Akihiro Suda
31f172bdb5 Merge pull request #30790 from vdemeester/pr-30602
Carry #30602 : Bump go-units
2017-02-08 11:04:22 +09:00
Kenfe-Mickaël Laventure
1459dc573a Merge pull request #30642 from albers/completion-improve-plugin-enable
Improve bash completion for `docker plugin enable|disable`
2017-02-07 17:58:12 -08:00
Vincent Demeester
14790e4008 Merge pull request #30694 from godefroi/26937-fix-rfc5424-log-format-1
Add NILVALUE for STRUCTURED-DATA in RFC5424 logs
2017-02-07 23:22:39 +01:00
Sebastiaan van Stijn
91f36e4b8a Merge pull request #30661 from yongtang/02012017-man-expose-publish-filter
Update API history and man page for `--filter expose/publish`
2017-02-07 14:05:36 -08:00
Kenfe-Mickaël Laventure
9f8a7b6b45 Merge pull request #30638 from albers/completion-ps-filter-by-ports
Add bash completion for `docker ps --filter expose|publish`
2017-02-07 13:38:19 -08:00
Kenfe-Mickaël Laventure
a19ead01be Merge pull request #30640 from albers/completion-plugin-ls--filter
Add bash completion for `docker plugin ls --filter`
2017-02-07 13:32:29 -08:00
Vincent Demeester
254fc83cba Merge pull request #30457 from dmcgowan/distribution-reference-update-2
reference: use distribution reference and remove fork
2017-02-07 22:01:25 +01:00
Vincent Demeester
cb89d658dc Bump go-units
To include  https://github.com/docker/go-units/pull/23
Fixes a unit test that fails because of it.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-07 21:58:56 +01:00
Daniel Nephin
1b4e2b7c87 Merge pull request #29552 from dnephin/fix-build-with-log-driver
Ignore the daemon log config when building images
2017-02-07 15:47:41 -05:00
Vincent Demeester
0daff908a8 Merge pull request #30780 from xulike666/update-vender-for-go-gelf
Update dependency for Graylog2/go-gelf
2017-02-07 21:40:08 +01:00
Brian Goff
5381f9f726 Merge pull request #29563 from yongtang/21845-duplicate-mount-point-volumes-from
Fix duplicate mount points for multiple `--volumes-from` in `docker run`
2017-02-07 14:58:51 -05:00
Derek McGowan
3a1279393f Use distribution reference
Remove forked reference package. Use normalized named values
everywhere and familiar functions to convert back to familiar
strings for UX and storage compatibility.

Enforce that the source repository in the distribution metadata
is always a normalized string, ignore invalid values which are not.
Update distribution tests to use normalized values.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-02-07 11:08:37 -08:00
Derek McGowan
2bea87393b Update swarmkit vendor
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-02-07 11:08:36 -08:00
Aaron Lehmann
bbd4c87377 Merge pull request #30787 from kevinetc123/typo-2
fix some types on errors and form
2017-02-07 10:34:39 -08:00
Anusha Ragunathan
124b480967 Merge pull request #30767 from cpuguy83/plugin_upgrade_swagger
Update swagger spec for plugin upgrade
2017-02-07 10:32:40 -08:00
Misty Stanley-Jones
e0cc664cc3 Merge pull request #30523 from nathanleclaire/document_init
Document --init flag for docker run
2017-02-07 09:28:30 -08:00
Yong Tang
f07a28a541 Support expanded ports in Compose loader
This commit adds support for expanded ports in Compose loader,
and add several unit tests for loading expanded port format.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-07 09:14:56 -08:00
Yong Tang
60c1eaf8f0 Add expanded port syntax to Compose schema and types.
This commit adds expanded port syntax to Compose schema and types
so that it is possible to have
```
ports:
  - mode: host
    target: 80
    published: 9005
```

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-07 09:12:55 -08:00
Yong Tang
9526e5c6ae Fix duplicate mount point for --volumes-from in docker run
This fix tries to fix the issue raised in 21845. The issue with 21845
is that if multiple `--volumes-from` with the same destination has been
specified, then one volume will be overridden by the other. This will mess
up with volumes reference and prevent the overridden volume from
being removed at the end.

Issue 21845 was observed with `docker-compose` though it is possible to
emulate the same behavior with `docker` alone:
```
$ cat Dockerfile
FROM busybox
VOLUME ["/tmp/data"]
$ docker build -t vimage .
$ docker run --name=data1 vimage true
$ docker run --name=data2 vimage true
$ docker run --name=app --volumes-from=data1 --volumes-from=data2 -d busybox top
$ docker rm -f -v $(docker ps -aq)
$ docker volume ls
$ docker volume rm ...
```
NOTE: Second case:
```
$ cat Dockerfile
FROM busybox
VOLUME ["/tmp/data"]
$ docker build -t vimage .
$ docker run --name=data1 vimage true
$ docker run --name=data2 vimage true
$ docker run --name=app --volumes-from=data1 --volumes-from=data2 -v /tmp/data:/tmp/data -d busybox top
$ docker rm -f -v $(docker ps -aq)
$ docker volume ls
$ docker volume rm ...
```
NOTE: Third case: Combination of --volumes-from and `HostConfig.Mounts` (API only)

This fix tries to address the issue by return an error if duplicate
mount points was used with `--volumes-from`.

An integration test has been added.

This fix fixes 21845.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-07 08:30:56 -08:00
Yong Tang
9fc393615f Update API history and man page for --filter expose/publish
This fix updates API history and man page for
`docker ps --filter expose/publish`, from the feedback:
https://github.com/docker/docker/pull/27557#issuecomment-276832876

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-07 08:24:46 -08:00
Brian Goff
ae48cd04da Update swagger spec for plugin upgrade
This was added in 03c6949739 but spec was
not updated.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-07 11:21:54 -05:00
Vincent Demeester
09114fe9f0 Merge pull request #30197 from yongtang/30178-service-health-check-none
Fix issue where service healthcheck is `{}` in remote API
2017-02-07 17:17:26 +01:00
Sebastiaan van Stijn
c5a592a0a4 Merge pull request #30789 from vdemeester/carry-update-docker-stack-experimental
Update docker stack experimental notes
2017-02-07 08:11:26 -08:00
Vincent Demeester
f3da980a45 Merge pull request #30734 from allencloud/add-400-status-code-for-events-endpoint
add status code 400 for api endpoint /events
2017-02-07 17:02:50 +01:00
Sebastiaan van Stijn
0a51ad2586 Merge pull request #30639 from Microsoft/jjh/makeshortcut
Windows: Make.ps1 default to build binaries
2017-02-07 07:39:33 -08:00
Vincent Demeester
3225150b16 Update docker stack experimental notes
Update command usage and help.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-07 15:17:47 +01:00
kaiwentan
ac9c47e26f fix some types on errors and form
Signed-off-by: kaiwentan <kaiwentan@harmonycloud.cn>
2017-02-07 20:29:32 +08:00
Vincent Demeester
aa4ecd153b Make sure we validate simple syntax on service commands
We ignored errors for simple syntax in `PortOpt` (missed that in the
previous migration of this code). This make sure we don't ignore
`nat.Parse` errors.

Test has been migrate too (errors are not exactly the same as before
though -_-)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-07 12:45:47 +01:00
Aaron.L.Xu
79d47a3bb7 fetch the latest code with zero-harm but good-readability for Graylog2/go-gelf
update vendor.conf for github.com/Graylog2/go-gelf

Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-02-07 17:27:17 +08:00
Sebastiaan van Stijn
09e99ef1fc Merge pull request #30771 from tophj-ibm/fix-manpages-p-z
ppc64le and s390x fixes for manpages
2017-02-06 21:53:19 -08:00
Sebastiaan van Stijn
9e80a2a457 Merge pull request #30774 from aaronlehmann/swarm-leave-docs-fix
Fix grammatical error in swarm_leave.md
2017-02-06 21:33:12 -08:00
Sebastiaan van Stijn
7c7be84238 Merge pull request #30773 from aboch/gn
getAllNetworks unnecessary walks all the networks
2017-02-06 20:28:30 -08:00
Aaron Lehmann
248b1c23d3 Fix grammatical error in swarm_leave.md
Correct this sentence so it reads correctly. "to on a manager" should be
"on a manager".

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-02-06 17:31:55 -08:00
Alessandro Boch
5d71cc01b6 getAllNetworks unnecessary walks all the networks
- libnetwork controller Networks() already returns
  a copy list. Also Networks() correctly skips any
  network which ahs already been marked for deletion
  while getNetworks implementation bypass this.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-06 16:37:51 -08:00
Victor Vieux
41864ca0ec Merge pull request #30732 from stevvooe/validate-mounts-at-start
cluster/executor: check mounts at start
2017-02-06 15:01:48 -08:00
Christopher Jones
5bec1b6864 added ppc64le and s390x fixes for manpages
Fixes manpages for p and z by downloading a specific version
of go instead of relying on the distro version.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-02-06 17:51:37 -05:00
Victor Vieux
94c4c68607 Merge pull request #30755 from andrewhsu/golang-1.7.5-for-manpages
use golang 1.7.5 for building man pages
2017-02-06 14:48:28 -08:00
Alexander Morozov
90709776c5 Merge pull request #30749 from yongtang/28005-docker-stats-header-windows
Fix Windows `docker stats` showing Linux headers
2017-02-06 14:09:23 -08:00
Alexander Morozov
d38753303a Merge pull request #30136 from tg123/master
Windows: return err instead of panic when convert string to utf16
2017-02-06 14:00:00 -08:00
Andrew Hsu
1c7a66eda7 remove musl-dev in man/Dockerfile.armhf
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2017-02-06 13:32:21 -08:00
Stephen J Day
92899ffac8 cluster/executor: check mounts at start
While it is important to not create controllers for an invalid task,
certain properties should only be checked immediately before use. Early
host validation of mounts prevents resolution of the task Executor when
the mounts are not relevant to execution flow. In this case, we have a
check for the existence of a bind mount path in a creation function that
prevents a task controller from being resolved. Such early validation
prevents one from interacting directly with a controller and result in
unnecessary error reporting.

In accordance with the above, we move the validation of the existence of
host bind mount paths to the `Controller.Start` phase. We also call
these "checks", as they are valid mounts but reference non-existent
paths.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-02-06 13:09:53 -08:00
Derek McGowan
24698a07cb Update distribution vendor
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-02-06 13:06:52 -08:00
Alexander Morozov
dc15fe8a34 Merge pull request #30764 from tiborvass/stacktrace-debug-mode
Show stacktrace in daemon logs only if 500 internal error
2017-02-06 12:41:50 -08:00
Alexander Morozov
e06ae6f419 Merge pull request #30742 from yongtang/29975-compose-network-attachable
Add compose support of `attachable` in networks
2017-02-06 12:27:44 -08:00
Anusha Ragunathan
0113128b2a Merge pull request #30701 from allencloud/add-status-code-404-for-plugin-in-api-doc
add status code 404 for plugin api endpoint enable and disable
2017-02-06 11:53:17 -08:00
Alexander Morozov
b11f988dd0 Merge pull request #30753 from NickrenREN/daemon-register
remove Register return value
2017-02-06 11:47:17 -08:00
Alexander Morozov
d4136eb525 Merge pull request #30769 from tianon/prompt-for-confirmation
Fix "command.PromptForConfirmation" to accept "enter" for the "N" default
2017-02-06 11:44:45 -08:00
Andrew Hsu
a6886bfc52 use precompiled go from google, needs debian to work
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2017-02-06 11:29:25 -08:00
Tõnis Tiigi
00d2057698 Merge pull request #30760 from justincormack/yamlup
Update Go Yaml
2017-02-06 11:14:55 -08:00
Brian Goff
1d3f6e4aaf Merge pull request #30690 from aboch/vnd
Vendoring libnetwork @802895f
2017-02-06 13:20:51 -05:00
Tibor Vass
f7d9bb6248 Show stacktrace in daemon logs only if 500 internal error
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-02-06 10:13:21 -08:00
Tianon Gravi
2198b0568f Fix "command.PromptForConfirmation" to accept "enter" for the "N" default
This adjusts `command.PromptForConfirmation` in `cli/command/utils.go` to use `bufio`'s `ReadLine` rather than using `fmt.Fscan` for reading input, which makes `<Enter>` properly accept the default value of "No" as one would expect.

This new code actually came from `cli/command/plugin/install.go`'s `acceptPrivileges` function, which I've also refactored here to use `command.PromptForConfirmation` as it should.

Additionally, this updates `cli/command/plugin/upgrade.go`'s `runUpgrade` function to use `command.PromptForConfirmation` for further consistency.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-02-06 09:13:07 -08:00
Justin Cormack
08304e8538 Update Go Yaml
- changes license to Apache from LGPLv3
- small fixes for Go 1.8, parsing.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-02-06 13:08:58 +00:00
Vincent Demeester
191719e39a Merge pull request #30710 from albers/completion-service--format
Add bash completion for `(stack services|service ls) --format`
2017-02-06 11:44:26 +01:00
Tõnis Tiigi
67dffe2741 Merge pull request #30683 from milindchawre/fix_30503
Adding support for docker max restart time
2017-02-05 23:33:31 -08:00
Andrew Hsu
7b52ec5f10 from golang:1.7.5-alpine for docker-manpage-dev
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2017-02-05 22:40:57 -08:00
NickrenREN
78b50c129e remove Register return value
Since Register() will never return err,remove the return value

Signed-off-by: NickrenREN <yuquan.ren@easystack.cn>
2017-02-06 12:44:24 +08:00
Sebastiaan van Stijn
06c4c5f499 NetworksPrune: do not return warnings as error
`NetworksPrune()` is designed to ignore errors
encountered during removal of networks, and only
print them as warnings.

However, the last error encountered was returned
by the function, resulting in the prune command
to be reported as "failing" wheras it did not.

In addition, in situations where a network
failed to be removed, the networks that
_were_ succesfully removed were not reported
back.

This patch changes the function to not return
the error, and to return the list of networks
that were succesfully removed at all times.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-05 16:18:27 -08:00
Yong Tang
0a3a3ba2b6 Fix Windows docker stats showing Linux headers
This fix is an attempt to fix issue raised in #28005 where
`docker stats` on Windows shows Linux headers if there is
no containers in stats.

The reason for the issue is that, in case there is no container,
a header is faked in:
https://github.com/docker/docker/blob/v1.13.0/cli/command/formatter/formatter.go#L74-L78
which does not know OS type information (as OS was stored with container stat entries)

This fix tries to fix the issue by moving OS type information
to stats context (instead of individual container stats entry).

Additional unit tests have been added.

This fix fixes #28005.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-05 08:55:30 -08:00
Sebastiaan van Stijn
4af2555a35 Merge pull request #30290 from vdemeester/carry-pr-27834
Carry #27834 — Do not require `.git` in the build context
2017-02-04 19:19:16 -08:00
Yong Tang
cf4b7a5b87 Add compose support of attachable in networks
This fix tries to address the issue raised in 29975 where
it was not possible to specify `attachable` flag for networks
in compose format.

NOTE: Compose format aleady supports `labels` in networks.

This fix adds the support of `attachable` for compose v3.1 format.

Additiona unit tests have been updated and added.

This fix fixes 29975.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-04 14:16:06 -08:00
Vincent Demeester
f538c4bd3c Merge pull request #30187 from thaJeztah/show-error-on-unsupported-flags
print error if unsupported flags are used
2017-02-04 22:43:51 +01:00
Vincent Demeester
eb6b972c49 Merge pull request #30686 from anusha-ragunathan/windowsPath
Add Windows specific exec root for plugins.
2017-02-04 16:12:16 +01:00
Sebastiaan van Stijn
fac13e4e07 Merge pull request #28751 from ijc25/wrap-help-output
Wrap CLI --help output to terminal width
2017-02-03 23:04:11 -08:00
allencloud
44bd658913 add expose and publish filter in swagger.yml and CLI docs for docker/master
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-04 14:28:14 +08:00
allencloud
da1f05d66d add missing filter type and sort filter type in alphabets
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-04 14:25:55 +08:00
allencloud
323f575087 add status code 400 for api endpoint /events
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-04 13:40:24 +08:00
milindchawre
9bd3a7c029 Adding support for docker max restart time
Signed-off-by: milindchawre <milindchawre@gmail.com>
2017-02-04 03:54:47 +00:00
Sebastiaan van Stijn
d6b1b532a1 Merge pull request #30553 from lewisdaly/21050-improve-user-namespace-docs
Updated dockerd docs with note about user namespaces
2017-02-03 19:48:06 -08:00
Lewis Daly
2f9280dcd0 Updated dockerd docs with note about user namespaces
Signed-off-by: Lewis Daly <lewisdaly@me.com>

Updated uid/gid reference to be more canonical - and signed commit

Signed-off-by: Lewis Daly <lewisdaly@me.com>

Editorial suggestion

I tried my hand at rewriting this a bit for readability. Can you please verify that the facts are correct, especially about the permission changes? You can feel free to squash my commit with yours so that it's signed. You'll need to pull the change from your fork to work on it locally.

Editorial suggestion

I tried my hand at rewriting this a bit for readability. Can you please verify that the facts are correct, especially about the permission changes? You can feel free to squash my commit with yours so that it's signed. You'll need to pull the change from your fork to work on it locally.
2017-02-04 13:50:50 +10:30
Tibor Vass
4dbc105fc1 Merge pull request #30673 from mavenugo/nr
List Networks need not pull all the endpoints
2017-02-03 19:09:43 -08:00
Joffrey F
5bec534da5 Parameter name in GetPluginPrivileges is "remote"
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-02-03 18:10:16 -08:00
Alexander Morozov
ea4d124395 Merge pull request #30210 from thaJeztah/carry-29727
[carry 29727] update unit-file; wait for network to be online
2017-02-03 17:17:08 -08:00
Sebastiaan van Stijn
34148978bd print error if unsupported flags are used
Docker 1.13 and up allows a client to communicate
with older daemons. As a result, flags may be
present that are not supported by the older daemon.

The client already _hides_ flags that are not
supported yet, but this doesn't present users
from using those flags.

This change shows an error if a flag is used
that is not supported by the daemon (either
based on the API version, or because experimental
features are not enabled).

Note that for some options, a check is already
in place in the API client. For those
options, this is just a minor enhancement
to more clearly indicate which _flag_ is
not supported.

Before this change;

    DOCKER_API_VERSION=1.24 docker run -d --stop-timeout=30 busybox top
    mjfyt3qpvnq0iwmun3sjwth9i

    echo -e "FROM busybox\nRUN echo foo > bar" |  DOCKER_API_VERSION=1.24 docker build --squash -
    "squash" requires API version 1.25, but the Docker server is version 1.24

After this change;

    DOCKER_API_VERSION=1.24 docker run -d --stop-timeout=30 busybox top
    "--stop-timeout" requires API version 1.25, but the Docker daemon is version 1.24

    echo -e "FROM busybox\nRUN echo foo > bar" | DOCKER_API_VERSION=1.24 docker build --squash -
    "--squash" requires API version 1.25, but the Docker daemon is version 1.24

    echo -e "FROM busybox\nRUN echo foo > bar" | docker build --squash -
    "--squash" is only supported on a Docker daemon with experimental features enabled

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-03 16:59:20 -08:00
Yanqiang Miao
dafeeac4fd Rewrite the function 'validatePrivileges' without checking order
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-02-04 08:47:40 +08:00
Anusha Ragunathan
fa49c076d4 Merge pull request #29414 from cpuguy83/plugin_upgrade
Add docker plugin upgrade
2017-02-03 15:27:48 -08:00
Brian Goff
e8307b868d Make propagated mount persist outside rootfs
This persists the "propagated mount" for plugins outside the main
rootfs. This enables `docker plugin upgrade` to not remove potentially
important data during upgrade rather than forcing plugin authors to hard
code a host path to persist data to.

Also migrates old plugins that have a propagated mount which is in the
rootfs on daemon startup.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-03 16:22:58 -05:00
Brian Goff
03c6949739 Add docker plugin upgrade
This allows a plugin to be upgraded without requiring to
uninstall/reinstall a plugin.
Since plugin resources (e.g. volumes) are tied to a plugin ID, this is
important to ensure resources aren't lost.

The plugin must be disabled while upgrading (errors out if enabled).
This does not add any convenience flags for automatically
disabling/re-enabling the plugin during before/after upgrade.

Since an upgrade may change requested permissions, the user is required
to accept permissions just like `docker plugin install`.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-03 16:21:12 -05:00
Vincent Demeester
617be0ef2b Bind mount .git 👼
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-03 21:00:32 +01:00
Alexander Morozov
08567641bb Merge pull request #30717 from albers/completion-dockerd--default-shm-size
Add bash completion for `dockerd --default-shm-size`
2017-02-03 11:27:46 -08:00
Alexander Morozov
73e218c965 Merge pull request #30718 from allencloud/update-incorrect-comments-of-checkpoint
update incorrect comments of CheckpointList
2017-02-03 11:22:30 -08:00
Alexander Morozov
453c5c1650 Merge pull request #30720 from albers/completion-refactor-shared-completions
Refactor use of shared completion functions
2017-02-03 11:14:11 -08:00
Alexander Morozov
70dc4cd446 Merge pull request #30719 from alfred-landrum/gdcounter
Fix RefCounter count return
2017-02-03 11:09:17 -08:00
Harald Albers
013152972d Refactor use of shared completion functions
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-03 18:01:32 +01:00
Alfred Landrum
874a502b1d Fix RefCounter count return
Signed-off-by: Alfred Landrum <alfred.landrum@docker.com>
2017-02-03 08:47:55 -08:00
allencloud
98ffe52fbc update incorrect comments of CheckpointList
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-04 00:41:35 +08:00
Harald Albers
a45ab91066 Add bash completion for dockerd --default-shm-size
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-03 17:39:32 +01:00
Harald Albers
6f86066d44 Add bash completion for {stack services,service ls} --format
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-03 13:09:46 +01:00
Ian Campbell
a4f71ccff6 Wrap output of docker cli --help
This should go some way to unblocking a solution to #18797, #18385 etc by
removing the current rather restrictive constraints on help text length.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-02-03 11:05:49 +00:00
Ian Campbell
a6e536e415 Revendor github.com/spf13/pflag to 9ff6c6923cfffbcd502984b8e0c80539a94968b7
$ git log --oneline dabebe21bf79..9ff6c6923cff
9ff6c69 Add FlagSet.FlagUsagesWrapped(cols) which wraps to the given column (#105)
a9a634f Add BoolSlice and UintSlice flag types. (#111)
a232f6d Merge pull request #102 from bogem/redundant
5126803 Merge pull request #110 from hardikbagdi/master
230dccf add badges to README.md
c431975 Merge pull request #107 from xilabao/add-user-supplied-func-when-parse
271ea0e Make command line parsing available outside pflag
25f8b5b Merge pull request #109 from SinghamXiao/master
1fcda0c too many arguments
5ccb023 Remove Go 1.5 from Travis
86d3545 Clean up code

I am interested in 9ff6c69 for a followup.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-02-03 11:05:49 +00:00
Victor Vieux
c3b660b112 Merge pull request #30654 from Microsoft/jjh/unifyworkdir
Windows: Unify workdir handling
2017-02-03 00:37:54 -08:00
allencloud
75f7305888 add status code 404 for plugin api endpoint enable and disable
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-03 15:13:10 +08:00
Madhu Venugopal
f388b7aa8a List Networks need not pull all the endpoints
Pulling all the endpoints is a very resource heavy operation especially
for Global-scoped networks with a backing KVStore. Such heavy operations
can be fetched for individual network inspect. These are unneccessary
for a simple network list operation.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2017-02-02 20:19:58 -08:00
Tibor Vass
edd977db97 Merge pull request #30685 from Microsoft/jjh/commandLine
Windows: Remove unused commandLine
2017-02-02 16:06:31 -08:00
Alessandro Boch
1e98350ab4 Revert "Fix IT case for network name validation"
This reverts commit 9cebccfb95.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-02 15:38:12 -08:00
Alessandro Boch
9e555ce7c3 Vendoring libnetwork @802895f
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-02-02 15:22:26 -08:00
Mark Parker
b7d802bbcc Add NILVALUE for STRUCTURED-DATA in RFC5424 logs
RFC 5424 (https://tools.ietf.org/html/rfc5424#section-6.2) requires that
STRUCTURED-DATA be present, either as NILVALUE (-) or as one or more
SD-ELEMENT items. Because Docker doesn't ever create any SD-ELEMENT items,
the format should output the NILVALUE instead. This resolves parsing issues
in various RFC 5424-compliant syslog servers.

Signed-off-by: Mark Parker <godefroi@gmail.com>
2017-02-02 15:16:14 -07:00
Anusha Ragunathan
26517a0161 Add Windows specific exec root for plugins.
Fixes #30572

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-02-02 14:00:12 -08:00
Sebastiaan van Stijn
e07c392c49 Merge pull request #30180 from allencloud/add-endpoint-mode-a-default-value
add endpoint mode a default value
2017-02-02 11:51:44 -08:00
Alexander Morozov
12b8432413 Merge pull request #30644 from Microsoft/jjh/makecheckgoversion
Windows: make.ps1 validate go version
2017-02-02 11:39:56 -08:00
John Howard
f42033ba94 Windows: Unify workdir handling
Signed-off-by: John Howard <jhoward@microsoft.com>

Working directory processing was handled differently for Hyper-V and Windows-Server containers, as annotated in the builder documentation (updated in this PR). For Hyper-V containers, the working directory set by WORKDIR was not created. This PR makes Hyper-V containers work the same as Windows Server containers (and the same as Linux).

Example (only applies to Hyper-V containers, so not reproducible under CI environment)
Dockerfile:
FROM microsoft/nanoserver
WORKDIR c:\installer
ENV GOROOT=c:\installer
ADD go.exe .
RUN go --help
Running on Windows Server 2016, using docker master without this change, but with daemon set to --exec-opt isolation=hyperv as it would be for Client operating systems.
PS E:\go\src\github.com\docker\docker> dockerd -g c:\control --exec-opt isolation=hyperv
time="2017-02-01T15:48:09.657286100-08:00" level=info msg="Windows default isolation mode: hyperv"
time="2017-02-01T15:48:09.662720900-08:00" level=info msg="[graphdriver] using prior storage driver: windowsfilter"
time="2017-02-01T15:48:10.011588000-08:00" level=info msg="Graph migration to content-addressability took 0.00 seconds"
time="2017-02-01T15:48:10.016655800-08:00" level=info msg="Loading containers: start."
time="2017-02-01T15:48:10.460820000-08:00" level=info msg="Loading containers: done."
time="2017-02-01T15:48:10.509859600-08:00" level=info msg="Daemon has completed initialization"
time="2017-02-01T15:48:10.509859600-08:00" level=info msg="Docker daemon" commit=3c64061 graphdriver=windowsfilter version=1.14.0-dev
First with no explicit isolation:
PS E:\docker\build\unifyworkdir> docker build --no-cache .
Sending build context to Docker daemon  10.1 MB
Step 1/5 : FROM microsoft/nanoserver
 ---> 89b8556cb9ca
Step 2/5 : WORKDIR c:\installer
 ---> 7e0f41d08204
Removing intermediate container 236c7802042a
Step 3/5 : ENV GOROOT c:\installer
 ---> Running in 8ea5237183c1
 ---> 394b70435261
Removing intermediate container 8ea5237183c1
Step 4/5 : ADD go.exe .
 ---> e47401a1745c
Removing intermediate container 88dcc28e74b1
Step 5/5 : RUN go --help
 ---> Running in efe90e1b6b8b
container efe90e1b6b8b76586abc5c1dc0e2797b75adc26517c48733d90651e767c8463b encountered an error during CreateProcess: failure in a Windows system call: The directory name is invalid. (0x10b) extra info: {"ApplicationName":"","CommandLine":"cmd /S /C go --help","User":"","WorkingDirectory":"C:\\installer","Environment":{"GOROOT":"c:\\installer"},"EmulateConsole":false,"CreateStdInPipe":true,"CreateStdOutPipe":true,"CreateStdErrPipe":true,"ConsoleSize":[0,0]}
PS E:\docker\build\unifyworkdir>
Then forcing process isolation:
PS E:\docker\build\unifyworkdir> docker build --isolation=process --no-cache .
Sending build context to Docker daemon  10.1 MB
Step 1/5 : FROM microsoft/nanoserver
 ---> 89b8556cb9ca
Step 2/5 : WORKDIR c:\installer
 ---> 350c955980c8
Removing intermediate container 8339c1e9250c
Step 3/5 : ENV GOROOT c:\installer
 ---> Running in bde511c5e3e0
 ---> b8820063b5b6
Removing intermediate container bde511c5e3e0
Step 4/5 : ADD go.exe .
 ---> e4ac32f8902b
Removing intermediate container d586e8492eda
Step 5/5 : RUN go --help
 ---> Running in 9e1aa235af5f
Cannot mkdir: C:\installer is not a directory
PS E:\docker\build\unifyworkdir>
Now compare the same results after this PR. Again, first with no explicit isolation (defaulting to Hyper-V containers as that's what the daemon it set to) - note it now succeeds 😄
PS E:\docker\build\unifyworkdir> docker build --no-cache .
Sending build context to Docker daemon  10.1 MB
Step 1/5 : FROM microsoft/nanoserver
 ---> 89b8556cb9ca
Step 2/5 : WORKDIR c:\installer
 ---> 4f319f301c69
Removing intermediate container 61b9c0b1ff6f
Step 3/5 : ENV GOROOT c:\installer
 ---> Running in c464a1d612d8
 ---> 96a26ab9a7b5
Removing intermediate container c464a1d612d8
Step 4/5 : ADD go.exe .
 ---> 0290d61faf57
Removing intermediate container dc5a085fffe3
Step 5/5 : RUN go --help
 ---> Running in 60bd56042ff8
Go is a tool for managing Go source code.

Usage:

        go command [arguments]

The commands are:

        build       compile packages and dependencies
        clean       remove object files
        doc         show documentation for package or symbol
        env         print Go environment information
        fix         run go tool fix on packages
        fmt         run gofmt on package sources
        generate    generate Go files by processing source
        get         download and install packages and dependencies
        install     compile and install packages and dependencies
        list        list packages
        run         compile and run Go program
        test        test packages
        tool        run specified go tool
        version     print Go version
        vet         run go tool vet on packages

Use "go help [command]" for more information about a command.

Additional help topics:

        c           calling between Go and C
        buildmode   description of build modes
        filetype    file types
        gopath      GOPATH environment variable
        environment environment variables
        importpath  import path syntax
        packages    description of package lists
        testflag    description of testing flags
        testfunc    description of testing functions

Use "go help [topic]" for more information about that topic.

The command 'cmd /S /C go --help' returned a non-zero code: 2
And the same with forcing process isolation. Also works 😄
PS E:\docker\build\unifyworkdir> docker build --isolation=process --no-cache .
Sending build context to Docker daemon  10.1 MB
Step 1/5 : FROM microsoft/nanoserver
 ---> 89b8556cb9ca
Step 2/5 : WORKDIR c:\installer
 ---> f423b9cc3e78
Removing intermediate container 41330c88893d
Step 3/5 : ENV GOROOT c:\installer
 ---> Running in 0b99a2d7bf19
 ---> e051144bf8ec
Removing intermediate container 0b99a2d7bf19
Step 4/5 : ADD go.exe .
 ---> 7072e32b7c37
Removing intermediate container a7a97aa37fd1
Step 5/5 : RUN go --help
 ---> Running in 7097438a54e5
Go is a tool for managing Go source code.

Usage:

        go command [arguments]

The commands are:

        build       compile packages and dependencies
        clean       remove object files
        doc         show documentation for package or symbol
        env         print Go environment information
        fix         run go tool fix on packages
        fmt         run gofmt on package sources
        generate    generate Go files by processing source
        get         download and install packages and dependencies
        install     compile and install packages and dependencies
        list        list packages
        run         compile and run Go program
        test        test packages
        tool        run specified go tool
        version     print Go version
        vet         run go tool vet on packages

Use "go help [command]" for more information about a command.

Additional help topics:

        c           calling between Go and C
        buildmode   description of build modes
        filetype    file types
        gopath      GOPATH environment variable
        environment environment variables
        importpath  import path syntax
        packages    description of package lists
        testflag    description of testing flags
        testfunc    description of testing functions

Use "go help [topic]" for more information about that topic.

The command 'cmd /S /C go --help' returned a non-zero code: 2
PS E:\docker\build\unifyworkdir>
2017-02-02 11:25:07 -08:00
John Howard
b7106a92f2 Windows: Remove unused commandLine
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-02 11:16:11 -08:00
Darren Stahl
d55304065b Block Windows images on Linux
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-02-02 11:07:30 -08:00
Kenfe-Mickaël Laventure
de26546680 Merge pull request #30668 from albers/completion-log-opt-ringbuffer
Add bash completion for `{dockerd,docker run} --log-opt max-buffer-size|mode`
2017-02-02 08:47:03 -08:00
Harald Albers
5d9acc2e61 Add bash completion for {dockerd,docker run} --log-opt max-buffer-size|mode
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-02 17:29:35 +01:00
Kenfe-Mickael Laventure
2d9105335b Add example for --device-cgroup-rule to create reference
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-02-02 07:31:17 -08:00
Vincent Demeester
31f1ff029f Merge pull request #30653 from vipconsult/28766-fix-checkpoint-ls-error-messages
more descriptive error for checkpoint ls  for non existent containers
2017-02-02 14:41:53 +01:00
Vincent Demeester
ada44345dd Merge pull request #30040 from Microsoft/jjh/ntauthority
Windows: Test for run as local system
2017-02-02 12:13:55 +01:00
Vincent Demeester
8ed8366efd Merge pull request #29896 from Microsoft/jjh/gofmt
Windows: gofmt checker fixes
2017-02-02 12:12:57 +01:00
Vincent Demeester
c6a3ed39f5 Merge pull request #30645 from yongtang/02012017-man-plugin-ls
Add markdown for man page of `docker plugin ls`
2017-02-02 10:42:31 +01:00
Vincent Demeester
4ca00c09b6 Merge pull request #28199 from yongtang/11062016-service-ls-format
Add `--format` to `docker service ls`
2017-02-02 10:40:04 +01:00
Sebastiaan van Stijn
1caba6c71e Merge pull request #30660 from yongtang/02012017-man-container
Make markdown for man pages of `docker container ...` consistent
2017-02-01 23:15:12 -08:00
Sebastiaan van Stijn
32697b57c8 Merge pull request #30663 from Mashimiao/reference-cmdline-service-tfix
reference/commandline: small tfix
2017-02-01 22:23:08 -08:00
Ma Shimiao
31f63d64e3 reference/commandline: small tfix
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
2017-02-02 13:54:45 +08:00
Phil Estes
f0089a85ec Merge pull request #30460 from yongtang/28176-attach-binary-frame-websocket
Use binary frame for websocket attach endpoint
2017-02-01 20:02:46 -08:00
John Howard
a08e1304d4 Windows: gofmt check write out right filename
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-01 19:13:33 -08:00
John Howard
ffbe4b6ff1 Windows: Test for run as local system
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-01 18:37:44 -08:00
Yong Tang
6c27237f76 Make markdown for man pages of docker container ... consistent
This fix updates the markdown for man pages of `docker container ...`
so that they are consistent. The changes are based on feedback:
https://github.com/docker/docker/pull/30645#discussion_r99020188
https://github.com/docker/docker/pull/30645#discussion_r99020304

1. Use `H2 (##)` as needed
2. Use unrpiviledged prompt (`$`) instead of (`#`)

This PR convers files under man/src/container/*.md

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-01 18:34:55 -08:00
Yong Tang
8ee9c635b2 Add markdown for man page of docker plugin ls
This fix adds markdown for man page of `docker plugin ls`,
based on https://github.com/docker/docker/pull/28627#issuecomment-276731752

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-01 18:28:16 -08:00
Brian Goff
bb0a532fc2 Merge pull request #30203 from allencloud/validate-healthcheck-params-in-daemon-side
validate healthcheck params in daemon side
2017-02-01 21:19:30 -05:00
Victor Vieux
632c8dd4cf Merge pull request #30616 from thaJeztah/fix-yakkety-install
install dirmngr if needed
2017-02-01 17:21:21 -08:00
Krasi Georgiev
8ddfd2f759 more descriptive error fo checkpoint ls for non existent containers
Signed-off-by: Krasi Georgiev <krasi@vip-consult.solutions>
2017-02-02 00:42:29 +02:00
Vincent Demeester
3c64061b67 Merge pull request #29747 from xlgao-zju/break-the-for
exit collect when we get EOF
2017-02-01 22:29:18 +01:00
Alexander Morozov
dc20f2abd4 Merge pull request #28762 from cpuguy83/logger_ring_buffer
Implement optional ring buffer for container logs
2017-02-01 13:04:01 -08:00
Alexander Morozov
3138a8f9f2 Merge pull request #30643 from dnephin/fix-stack-remove-test-flake
Add missing build tag for stack tests
2017-02-01 12:31:02 -08:00
Sebastiaan van Stijn
f5263c8074 install dirmngr if needed
as of Ubuntu Yakkety, dirmngr is now in a separate
package (see https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1634464)

this patch updates the install script to install
the dirmngr package if it's not installed.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-02-01 12:17:23 -08:00
Alexander Morozov
39f717ac89 Merge pull request #30444 from albers/completion-checkpoints
Add bash completion for `docker checkpoint`
2017-02-01 11:44:37 -08:00
Brian Goff
7917a36cc7 Fix some data races
After running the test suite with the race detector enabled I found
these gems that need to be fixed.
This is just round one, sadly lost my test results after I built the
binary to test this... (whoops)

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-01 14:43:58 -05:00
Alexander Morozov
f9998c8c9f Merge pull request #30613 from mattmoor/track-elided-pulls
Add tracking to elided layer pulls.
2017-02-01 11:38:35 -08:00
Brian Goff
3f4fccb65f Use sync.Pool for logger Messages
This reduces allocs and bytes used per log entry significantly as well
as some improvement to time per log operation.

Each log driver, however, must put messages back in the pool once they
are finished with the message.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-01 13:52:37 -05:00
Brian Goff
054abff3b6 Implement optional ring buffer for container logs
This allows the user to set a logging mode to "blocking" (default), or
"non-blocking", which uses the ring buffer as a proxy to the real log
driver.

This allows a container to never be blocked on stdio at the cost of
dropping log messages.

Introduces 2 new log-opts that works for all drivers, `log-mode` and
`log-size`. `log-mode` takes a  value of "blocking", or "non-blocking"
I chose not to implement this as a bool since it is difficult to
determine if the mode was set to false vs just not set... especially
difficult when merging the default daemon config with the container config.
`log-size` takes a size string, e.g. `2MB`, which sets the max size
of the ring buffer. When the max size is reached, it will start
dropping log messages.

```
BenchmarkRingLoggerThroughputNoReceiver-8           	2000000000	        36.2 ns/op	 856.35 MB/s	       0 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputWithReceiverDelay0-8   	300000000	       156 ns/op	 198.48 MB/s	      32 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputConsumeDelay1-8        	2000000000	        36.1 ns/op	 857.80 MB/s	       0 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputConsumeDelay10-8       	1000000000	        36.2 ns/op	 856.53 MB/s	       0 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputConsumeDelay50-8       	2000000000	        34.7 ns/op	 894.65 MB/s	       0 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputConsumeDelay100-8      	2000000000	        35.1 ns/op	 883.91 MB/s	       0 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputConsumeDelay300-8      	1000000000	        35.9 ns/op	 863.90 MB/s	       0 B/op	       0 allocs/op
BenchmarkRingLoggerThroughputConsumeDelay500-8      	2000000000	        35.8 ns/op	 866.88 MB/s	       0 B/op	       0 allocs/op
```

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-02-01 13:52:37 -05:00
John Howard
5e7a9e523f Windows: make.ps1 validate go version
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-01 10:31:27 -08:00
Alexander Morozov
dc78b3a1d4 Merge pull request #29863 from ncdc/journald-logdriver-drain-one-more-time-after-follow-ends
journald logs: drain 1 more time at container exit
2017-02-01 10:30:14 -08:00
Daniel Nephin
dd1d35c269 Add missing build tag for stack tests.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-02-01 13:25:37 -05:00
Harald Albers
f8456192ab Improve bash completion for docker plugin enable|disable
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-01 19:18:32 +01:00
Harald Albers
dc83181404 Add bash completion for docker plugin ls --filter
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-01 19:05:06 +01:00
John Howard
674247f5f0 Windows: Make.ps1 default to build binaries
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-02-01 09:54:04 -08:00
Harald Albers
6d00b6530b Add bash completion for docker ps --filter expose|publish
Signed-off-by: Harald Albers <github@albersweb.de>
2017-02-01 18:44:12 +01:00
Vincent Demeester
829ea91bd1 Merge pull request #30633 from vdemeester/29809-fix-network-ipam-configuration-on-master
Follow-up of 29826 Use default driver for IPAM if none
2017-02-01 17:53:49 +01:00
Yong Tang
000f0403d9 Add --format to docker service ls
This fix tries to improve the display of `docker service ls`
and adds `--format` flag to `docker service ls`.

In addition to `--format` flag, several other improvement:
1. Updates `docker stacks service`.
2. Adds `servicesFormat` to config file.

Related docs has been updated.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-02-01 08:33:19 -08:00
Vincent Demeester
354bd4aadd Merge pull request #29692 from yongtang/29492-daemon-shm-size
Add daemon option `--default-shm-size`
2017-02-01 16:56:10 +01:00
Vincent Demeester
4c1b40b9d4 Merge pull request #28627 from yongtang/28624-docker-plugin-ls
Add `--filter enabled=true` for `docker plugin ls`
2017-02-01 16:52:00 +01:00
Brian Goff
f907205f5d Merge pull request #30430 from Thynix/30374-remove-kickass
Replace "kickass" in name generator with "vigorous"
2017-02-01 10:33:07 -05:00
Vincent Demeester
1b6a15eedc Merge pull request #27557 from yongtang/27178-ps-filter-publish-expose
Add `publish` and `expose` filter for `docker ps --filter`
2017-02-01 16:32:28 +01:00
Vincent Demeester
27f90acd61 Merge pull request #22563 from mlaventure/cgroup-devices
Allow adding rules to cgroup devices.allow on container create/run
2017-02-01 16:29:34 +01:00
Vincent Demeester
caa78da1c6 Merge pull request #30446 from jim-minter/attachrace
Resolve race conditions in attach API call
2017-02-01 16:20:50 +01:00
Vincent Demeester
e66717e9f8 Merge pull request #30537 from DiSiqueira/asserting_error
Underscoring an unused var in tests
2017-02-01 16:08:20 +01:00
Vincent Demeester
c322064127 Use default driver for IPAM if none
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-01 15:54:56 +01:00
Jim Minter
84d6240cfe Resolve race conditions in attach API call
Signed-off-by: Jim Minter <jminter@redhat.com>
2017-02-01 09:01:36 +00:00
Vincent Demeester
8f8c4f20e3 Merge pull request #30614 from Microsoft/jjh/vendorgowinio
Revendor Microsoft/go-winio v0.3.8
2017-02-01 09:52:55 +01:00
Vincent Demeester
1de72681b5 Merge pull request #30619 from johndmulhausen/patch-3
Fix for 404 in docs
2017-02-01 09:50:11 +01:00
Vincent Demeester
60f8f3fd64 Merge pull request #30615 from tiborvass/plugin_errors
plugin: use pkg/errors in more places
2017-02-01 09:44:19 +01:00
Vincent Demeester
deb0885419 Merge pull request #30620 from thaJeztah/carry-29590
some grammatical errors
2017-02-01 09:40:17 +01:00
allencloud
1d1362bdb2 sort volume drivers and auth plugins in info response
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-02-01 12:01:49 +08:00
Xinbo Weng
5b258f6ac2 some grammatical errors
Signed-off-by: Xinbo Weng <xihuanbo_0521@zju.edu.cn>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-31 19:33:12 -08:00
Sebastiaan van Stijn
36db5f6f68 Merge pull request #30011 from davidwilliamson/patch-1
Provide password to volume create command
2017-01-31 19:20:30 -08:00
John Mulhausen
3c3456885d Fix for https://github.com/docker/docker.github.io/issues/1413
Signed-off-by: John Mulhausen <john@docker.com>
2017-01-31 18:59:21 -08:00
Steve Dougherty
2b30a79d9e Replace "kickass" in name generator with "vigorous"
Having curse words in container names can get awkward.

Closes #30374.

Signed-off-by: Steve Dougherty <steve@asksteved.com>
2017-01-31 21:33:23 -05:00
Victor Vieux
6365d8dd19 Merge pull request #30578 from tophj-ibm/add-p-z-to-release-deb
[ppc64le/s390x] add p/z to release-deb
2017-01-31 17:39:17 -08:00
John Howard
da6739c99f Revendor Microsoft/go-winio v0.3.8
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-31 16:46:59 -08:00
Tibor Vass
26d0bac895 plugin: use pkg/errors in more places
Also provide stack trace output in daemon logs.

Signed-off-by: Tibor Vass <tibor@docker.com>
2017-01-31 16:45:26 -08:00
Matt Moore
d5482089bf Add tracking to elided layer pulls.
Signed-off-by: Matt Moore <mattmoor@google.com>
2017-01-31 16:36:17 -08:00
Victor Vieux
2b412120b6 Merge pull request #30608 from mlaventure/update-containerd
Update containerd to version 78fb8f45890a601e0fd9051cf9f9f74923e950fd
2017-01-31 16:34:50 -08:00
Alexander Morozov
052f593530 Merge pull request #30607 from jroenf/patch-1
Fix syntax in label example
2017-01-31 14:55:13 -08:00
jroenf
ada374f316 Fix syntax in example
Signed-off-by: Jeroen Franse <jeroenfranse@gmail.com>
2017-01-31 23:51:06 +01:00
Kenfe-Mickael Laventure
50886f49b9 Update containerd to version 78fb8f45890a601e0fd9051cf9f9f74923e950fd
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-31 14:36:51 -08:00
Yong Tang
e82dcaab52 Use binary frame for websocket attach endpoint
This fix tries to address the issue raised in 28176 where
text frame was used in websocket attach endpoint. In case
the data send out contains non utf8 data, the connection
will be closed in certain browsers, e.g., Safari.

This fix address the issue by change `PayloadType` to `BinaryFrame`.

This fix is tested manually with Safari. The docker daemon is inside a Linux Virtual Machine.

Create a container with:
```
docker run -itd --name websocket busybox sh -c "while true; do echo -e 'he\\xc3\\x28o'; sleep 5; done"
```

Use the following url (172.16.66.128:2375 is the tcp address of the daemon):
```
file:///websocket.html?url=ws://172.16.66.128:2375/v1.25/containers/websocket/attach/ws?logs=1&stderr=1&stdout=1&stream=1&stdin=1
```

and the following html:
```
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Websocket</title>
  <script type="text/javascript">
    function DockerWebSocket() {
      if ("WebSocket" in window) {
        console.log("WebSocket is supported by Browser...")
        // Remove '?url=' prefix
        url = window.location.search.replace(/^(\?url=)/,"");
        console.log("URL ["+url+"]...");
        var ws = new WebSocket(url);
        ws.onopen = function() {
          console.log("Connection is opened...");
        };
        ws.onclose = function() {
          console.log("Connection is closed...");
        };
        ws.onmessage = function (e) {
          if (typeof e.data === "string") {
            alert("WebSocket received text message ["+e.data+"]!")
          } else {
            console.log("Message is received...")
            var blobReader = new FileReader();
            blobReader.onload = function(event) {
              console.log(JSON.stringify(blobReader.result))
            };
            blobReader.readAsText(e.data)
            console.log("Message complete...")
          }
        };
      } else {
        alert("WebSocket is not supported by Browser!");
      }
    }
  </script>
</head>
<body>
  <div>
    <a href="javascript:DockerWebSocket()">Run DockerWebSocket</a>
  </div>
</body>
</html>
```

This fix fixes 28176.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-31 14:04:32 -08:00
DiSiqueira
4bd1895241 I found out this err var isn't being used, so underscoring it to preserve resources
Signed-off-by: DiSiqueira <dieg0@live.com>
2017-01-31 19:48:15 -02:00
Alexander Morozov
ebaf1ced72 Merge pull request #27071 from rhvgoyal/docker-overlay-error
Warn if kernel does not support overlay with selinux
2017-01-31 13:41:02 -08:00
Phil Estes
feb8b1c581 Merge pull request #30506 from vdemeester/29732-follow-up-compose-indempotent
Make docker stack deploy a little bit more indempotent
2017-01-31 13:35:04 -08:00
Alexander Morozov
1d2f5de49a Merge pull request #30162 from yongtang/29972-service-read-only
Add `--read-only` for `service create` and `service update`
2017-01-31 13:20:00 -08:00
Vincent Demeester
818ef47394 Merge pull request #30484 from yongtang/28199-shorten
Add `truncate` function for Go templates
2017-01-31 21:56:21 +01:00
Alexander Morozov
048fc98c09 Merge pull request #30411 from thaJeztah/fix-build-from-local-github-directories
do not ignore local build-contexts starting with "github.com"
2017-01-31 12:45:11 -08:00
Alexander Morozov
0fbff69ab0 Merge pull request #30603 from tophj-ibm/fix-systemd-dropin-link
Update systemd drop-in link
2017-01-31 12:30:16 -08:00
Sebastiaan van Stijn
229625cd47 Merge pull request #30570 from anusha-ragunathan/doc_update
Add docs for service create based on plugins.
2017-01-31 12:05:04 -08:00
Nathan LeClaire
241173b3b9 Remove --init-path mention
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-31 09:50:55 -08:00
Christopher Jones
7c763b360a Update systemd drop-in link
Right now it redirects, so change it to the correct one.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-01-31 12:31:00 -05:00
Vincent Demeester
9c94fa4563 Merge pull request #30582 from shin-/fix-network-prune-swagger-typo
Fix typo in swagger.yaml for NetworkPrune operation
2017-01-31 11:27:47 +01:00
Vincent Demeester
b61fe846b1 Merge pull request #30510 from albers/completion-swarm-logs
Add bash completion for `docker service logs`
2017-01-31 11:10:48 +01:00
Vincent Demeester
c0a1d2e0d8 Merge pull request #30117 from msabansal/natfix
Added support for dns-search and fixes #30102
2017-01-31 11:05:29 +01:00
Joffrey F
20c5fa3758 Fix typo in swagger.yaml for NetworkPrune operation
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-01-30 18:25:39 -08:00
Sebastiaan van Stijn
a51c17f90b Merge pull request #30576 from vieux/more_rebuild_labels
add powerpc and z to rebuild labels
2017-01-30 18:11:04 -08:00
Alexander Morozov
cdc79c54ec Merge pull request #28968 from darrenstahlmsft/TestEventsLimit
Limit TestEventsLimit to 4 concurrent containers on Windows
2017-01-30 15:09:54 -08:00
Victor Vieux
8304f30271 add powerpc and z to rebuild labels
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-01-30 14:54:17 -08:00
Christopher Jones
9db1d16053 [ppc64le/s390x] add p/z to release-deb
This adds ppc64le and s390x architectures to those supported
by hack/make/release-debs

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-01-30 17:44:33 -05:00
Tianon Gravi
1202592f6e Merge pull request #30480 from flx42/install-debian-stretch-support
install: map debian_version 9.X to debian stretch
2017-01-30 13:59:44 -08:00
Alexander Morozov
3e6712a6ef Merge pull request #30521 from dnephin/cleanup-compose-loader
`cli/compose` cleanup - remove the old loading system
2017-01-30 13:55:23 -08:00
Vincent Demeester
04f0e616f2 Merge pull request #30542 from skabashnyuk/master
Fixes work of inspectResponse in case of ContentLength=-1
2017-01-30 22:54:49 +01:00
Yong Tang
7fa8d5e064 Add truncate function for Go templates
This fix is part of the discussion in 28199 about using
`truncate` to replace `--no-trunc`.

As part of the fix, a new function `truncate` has been
added for Go templates so that it is possible to use
```
docker stack services --format "{{truncate .ID 5}}: {{.Mode}} {{.Replicas}}"
```
to show truncated ID.

A unit test has been added.

This fix is related to 28199.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-30 13:33:16 -08:00
Yong Tang
885e1f250a Update bash and zsh completion for service create/update --read-only
This commit updates bash and zsh completion for flag `--read-only`
in `service create/update`.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-30 13:21:25 -08:00
Yong Tang
499a0dd43e Add --read-only for service create and service update
This fix tries to address the issue raised in 29972 where
it was not possible to specify `--read-only` for `docker service create`
and `docker service update`, in order to have the container's root file
system to be read only.

This fix adds `--read-only` and update the `ReadonlyRootfs` in `HostConfig`
through `service create` and `service update`.

Related docs has been updated.

Integration test has been added.

This fix fixes 29972.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-30 12:47:26 -08:00
Anusha Ragunathan
62d399e811 Add docs for service create based on plugins.
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-01-30 12:34:20 -08:00
Alexander Morozov
a08da82a28 Merge pull request #30186 from thaJeztah/add-version-annotation-to-flags
Add version annotation to various flags added in 1.13
2017-01-30 12:33:36 -08:00
Darren Stahl
2ec808ec08 Limit TestEventsLimit to 4 concurrent containers on Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-01-30 11:04:52 -08:00
Tibor Vass
01e03cb85b Merge pull request #30545 from justincormack/arm-seccomp
Add two arm specific syscalls to seccomp profile
2017-01-30 10:47:09 -08:00
Tibor Vass
a88e529d28 Merge pull request #30489 from unclejack/bump_go_to_1.7.5
Dockerfile*: bump Go to 1.7.5
2017-01-30 10:32:55 -08:00
Tõnis Tiigi
61b2cda9f5 Merge pull request #27083 from RobSkye/25935-show-apparmor-default-profile-in-docker-inspect
Docker inspect "AppArmorProfile" field now shows "docker-default" when AppArmor is enabled and no other profile was defined
2017-01-30 10:05:52 -08:00
Alexander Morozov
61198b5ea3 Merge pull request #30548 from yongtang/vendor-swarmkit
Update SwarmKit to 78ae345f449ac69aa741c762df7e5f0020f70275
2017-01-30 09:41:08 -08:00
Daniel Nephin
9931cb045d Merge pull request #30534 from allencloud/remove-cli-command-secret-util
remove cli/command/secrets/utils.go
2017-01-30 12:28:45 -05:00
Daniel Nephin
80b642ff88 Ignore the daemon log config when building images.
Logs created by build containers should be handled by the daemon, not by logging drivers.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-30 10:59:19 -05:00
Daniel Nephin
d542f3e57c Merge pull request #30246 from vdemeester/integration-remove-utils
[test-integration] Remove most of the runCommandWithOutput
2017-01-30 10:37:51 -05:00
ROBERTO MUÑOZ
d97a00dfd5 Added an apparmorEnabled boolean in the Daemon struct to indicate if AppArmor is enabled or not. It is set in NewDaemon using sysInfo information.
Signed-off-by: Roberto Muñoz Fernández <robertomf@gmail.com>

Added an apparmorEnabled boolean in the Daemon struct to indicate if AppArmor is enabled or not. It is set in NewDaemon using sysInfo information.

Signed-off-by: Roberto Muñoz Fernández <robertomf@gmail.com>

gofmt'd

Signed-off-by: Roberto Muñoz Fernández <robertomf@gmail.com>

change the function name to something more adequate and changed the behaviour to show empty value on an apparmor disabled system.

Signed-off-by: Roberto Muñoz Fernández <robertomf@gmail.com>

go fmt

Signed-off-by: Roberto Muñoz Fernández <robertomf@gmail.com>
2017-01-30 16:23:23 +01:00
Vincent Demeester
ecbb0e62f6 Remove most of the runCommandWithOutput from integration tests
There is 5 calls left, that use StdinPipe that is not yet supported by
icmd.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-30 10:54:06 +01:00
Sergii Kabashniuk
28d59e57ca Added test for the case if ContentLength = -1
Signed-off-by: Sergii Kabashniuk <skabashnyuk@codenvy.com>
2017-01-30 10:05:05 +02:00
Harald Albers
105231556a Add bash completion for docker service logs
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-29 22:29:07 -08:00
Akihiro Suda
48dd90d398 Merge pull request #30522 from gazoo74/fix-make-install
Fix installation using make install
2017-01-30 11:24:02 +09:00
Akihiro Suda
14b9562c48 Merge pull request #30540 from asottile/unnecessary_if
Remove unnecessary if in builder/dockerfiles/parser Dump
2017-01-30 11:18:10 +09:00
Yong Tang
2cc2d059de Update TestSwarmNetworkPlugin test
This commit updates TestSwarmNetworkPlugin, similiar to
changes in https://github.com/docker/docker/pull/30332

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-29 10:57:58 -08:00
Sergii Kabashniuk
22a9ec009b Fixes work of inspectResponse in case of ContentLength=-1
Signed-off-by: Sergii Kabashniuk <skabashnyuk@codenvy.com>
2017-01-29 20:48:07 +02:00
Yong Tang
849816dd0f Update SwarmKit to 78ae345f449ac69aa741c762df7e5f0020f70275
This fix updates SwarmKit to 78ae345f449ac69aa741c762df7e5f0020f70275
(from 037b4913929019d44bc927870bf2d92ce9ca261f)

The following issues in docker are related
- Can not update service in host publish mode (#30199) (fixed)
- Add `ReadonlyRootfs` in ContainerSpec for `--read-only` (#29972) (needed)
- Explicitly disallow network pluginv1 creation in swarm mode
  (See discussion in docker/swarmkit/pull/1899, docker/swarmkit/pull/1894,
  and docker/docker/pull/30332#issuecomment-274277948)

This fix fixes #30199

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-29 08:11:26 -08:00
Justin Cormack
d6adcd6a82 Add two arm specific syscalls to seccomp profile
These are arm variants with different argument ordering because of
register alignment requirements.

fix #30516

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-29 14:59:45 +00:00
Anthony Sottile
2283cd0203 Remove unnecessary if in parser.Dump
Signed-off-by: Anthony Sottile <asottile@umich.edu>
2017-01-28 23:07:24 -08:00
allencloud
e399c558e6 validate healthcheck params in daemon side
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-29 13:35:32 +08:00
allencloud
51b37a7983 remove cli/command/secrets/utils.go
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-29 13:32:49 +08:00
Sebastiaan van Stijn
8820d0aec0 Merge pull request #29504 from yongtang/29334-awslogs-CreateLogGroup
Support of CreateLogGroup for awslogs
2017-01-29 01:00:03 +01:00
Brian Goff
88ab0e0efc Merge pull request #30527 from continusec/minorformatstring
Fixup use of Error() with format string to use Errorf()
2017-01-28 11:28:30 -08:00
Sebastiaan van Stijn
011a4087bd Merge pull request #30533 from allencloud/add-40x-for-build-api
add 400 status code for build api
2017-01-28 17:32:30 +01:00
allencloud
c81a818b56 add 400 status code for build api
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-29 00:07:35 +08:00
allencloud
9eacabbfb7 add endpoint mode a default value
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-28 20:46:34 +08:00
Adam Eijdenberg
8bad0ab139 Fixup use of Error() with format string to use Errorf()
Signed-off-by: Adam Eijdenberg <adam.eijdenberg@gmail.com>
2017-01-28 22:46:56 +11:00
Nathan LeClaire
8329ae9e36 Document --init flag for docker run
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
2017-01-27 17:38:24 -08:00
Yong Tang
8feb5c5a48 Fix issue where service healthcheck is {} in remote API
This fix tries to address the issue raised in 30178 where
service healthcheck is `{}` in remote API will result in
dns resolve failue.

The reason was that when service healthcheck is `{}`,
service binding was not done.

This fix fixes the issue.

An integration test has been added.

This fix fixes 30178.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 15:43:44 -08:00
Gaël PORTAY
425cd7d1c5 Fix installation using make install
The following command fails when the target directory does not exist.

	$ sudo make install DOCKER_MAKE_INSTALL_PREFIX=/opt/docker AUTO_GOPATH=1
	KEEPBUNDLE=1 hack/make.sh install-binary
	# WARNING! I don't seem to be running in a Docker container.
	# The result of this command might be an incorrect build, and will not be
	# officially supported.
	#
	# Try this instead: make all
	#

	---> Making bundle: install-binary (in bundles/1.14.0-dev/install-binary)
	Installing docker to /opt/docker/bin/
	cp: cannot create regular file '/opt/docker/bin/': No such file or directory
	make: *** [Makefile:119: install] Error 1

The patch installs the target directory before copying any binaries.

	$ sudo make install DOCKER_MAKE_INSTALL_PREFIX=/opt/docker AUTO_GOPATH=1
	KEEPBUNDLE=1 hack/make.sh install-binary
	# WARNING! I don't seem to be running in a Docker container.
	# The result of this command might be an incorrect build, and will not be
	# officially supported.
	#
	# Try this instead: make all
	#

	---> Making bundle: install-binary (in bundles/1.14.0-dev/install-binary)
	Installing docker to /opt/docker/bin/
	Installing dockerd to /opt/docker/bin/
	Installing docker-runc to /opt/docker/bin/
	Installing docker-containerd to /opt/docker/bin/
	Installing docker-containerd-ctr to /opt/docker/bin/
	Installing docker-containerd-shim to /opt/docker/bin/
	Installing docker-proxy to /opt/docker/bin/
	Installing docker-init to /opt/docker/bin/

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
2017-01-27 17:34:38 -05:00
Daniel Nephin
daaeeafa7a Remove the old loading system from compose config loading
The original Compose config loading used the `compose` tag, which
was replaced by mapstructure. Some fields were left on the old tag. This
commit removes the old tag and uses types and mapstructure.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-27 17:03:41 -05:00
Yong Tang
4930652c67 Update bash and zsh completion for aws-create-group
This commit updates bash and zsh completion for aws-create-group.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 13:39:26 -08:00
Alexander Morozov
3c32e1775a Merge pull request #29218 from yongtang/28884-secret-inspect-follow-up
Move secret name or ID prefix resolving from client to daemon
2017-01-27 13:31:04 -08:00
Alexander Morozov
002312d6c1 Merge pull request #30067 from tophj-ibm/add-more-detailed-install-script-message
add suggestions in failure message in install script
2017-01-27 13:25:34 -08:00
Yong Tang
743943f636 Add publish and expose filter for docker ps --filter
This fix tries to address the enhancement proposal raised in
27178 for filtering based on published or exposed ports of
`docker ps --filter`.

In this fix, two filter options, `publish` and `expose` have
been added to take either `<port>[/<protocol>]` or `<from>-<to>[/<protocol>]`
and filtering on containers.

An integration test has been added to cover the changes.

This fix fixes 27178.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 13:25:32 -08:00
Alexander Morozov
865b3b7652 Merge pull request #27783 from epiloque/add-rpm-armhf-centos-7
add rpm builder for ARM CentOS 7
2017-01-27 13:18:20 -08:00
Alexander Morozov
40c51569e2 Merge pull request #27713 from resouer/return-err
return when error happens on listener close
2017-01-27 12:29:08 -08:00
Tianon Gravi
6d1937aa2d Merge pull request #30519 from jessfraz/shopt
Adjust "nuke-graph-directory.sh" shebang to be explicitly Bash (includes a Bashism as of https://github.com/docker/docker/pull/27869)
2017-01-27 12:26:36 -08:00
Yong Tang
d1982862ca Update opts.MemBytes to disable default, and move docker run/create/build to use opts.MemBytes
This fix made several updates:
1. Update opts.MemBytes so that default value will not show up.
   The reason is that in case a default value is decided by daemon,
   instead of client, we actually want to not show default value.
2. Move `docker run/create/build` to use opts.MemBytes for `--shm-size`
   This is to bring consistency between daemon and docker run
3. docs updates.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 12:17:06 -08:00
Yong Tang
db575ef626 Add daemon option --default-shm-size
This fix fixes issue raised in 29492 where it was not
possible to specify a default `--default-shm-size` in daemon
configuration for each `docker run``.

The flag `--default-shm-size` which is reloadable, has been
added to the daemon configuation.
Related docs has been updated.

This fix fixes 29492.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 12:17:06 -08:00
Jess Frazelle
026b710879 change sh to bash for shopt
Signed-off-by: Jess Frazelle <acidburn@google.com>
2017-01-27 12:16:40 -08:00
Alexander Morozov
81cf5a1834 Merge pull request #30256 from Microsoft/jjh/getpidsforcontainer
Windows: Remove GetPidsForContainer old implementation
2017-01-27 12:12:19 -08:00
Alexander Morozov
023f7f5100 Merge pull request #30006 from mueller-ma/add-names-to-generator
Add names to namesgenerator
2017-01-27 11:19:19 -08:00
Victor Vieux
e55e184116 Merge pull request #30508 from albers/plugin-usage-options
Add [OPTIONS] to usage of `plugin disable|push`
2017-01-27 11:17:08 -08:00
Yong Tang
864b0c2e47 Support of CreateLogGroup for awslogs
This fix tries to address the issue raised in 29344 where it was
not possible to create log group for awslogs (CloudWatch) on-demand.
Log group has to be created explicitly before container is running.

This behavior is inconsistent with AWS logs agent where log groups
are always created as needed.

There were several concerns previously (See comments in 19617 and 29344):
1. There is a limit of 500 log groups/account/region so resource might
be exhausted if there is any typo or incorrect region.
2. Logs are generated for every container so CreateLogGroup (or equally,
DescribeLogGroups) might be called every time, which is redundant and
potentially surprising.
3. CreateLogStream and CreateLogGroup have different IAM policies.

This fix addresses the issue by add `--log-opt awslogs-create-group`
which by default is `false`. It requires user to explicitly request
that log groups be created as needed.

Related unit test has been updated. And tests have also been done
manually in AWS.

This fix fixes 29334.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 11:15:17 -08:00
Yong Tang
fa358a8757 Move secret name or ID prefix resolving from client to daemon
This fix is a follow up for comment:
https://github.com/docker/docker/pull/28896#issuecomment-265392703

Currently secret name or ID prefix resolving is done at the client
side, which means different behavior of API and CMD.

This fix moves the resolving from client to daemon, with exactly the
same rule:
- Full ID
- Full Name
- Partial ID (prefix)

All existing tests should pass.

This fix is related to #288896, #28884 and may be related to #29125.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 10:40:05 -08:00
Alexander Morozov
cd6a61f1b1 Merge pull request #29887 from vdemeester/daemon-extract-stats-collector
Extract daemon statsCollector to its own package
2017-01-27 10:28:03 -08:00
Alexander Morozov
c06a824904 Merge pull request #30090 from wangxing1517/fix-rename-error-when-sid-is-empty
Fix rename error when sid is empty
2017-01-27 10:01:50 -08:00
Misty Stanley-Jones
05d4c1314e Merge pull request #30478 from mstanleyjones/fix_broken_links
Fix broken relative links in old API docs
2017-01-27 09:45:52 -08:00
Alexander Morozov
2c948ac3e6 Merge pull request #28304 from ijc25/jsonmessage-use-terminfo
use terminfo in pkg/jsonmessage
2017-01-27 09:29:18 -08:00
Vincent Demeester
fa5e0973ec Merge pull request #30473 from albers/completion-plugins-format
Use native call for listing plugins in bash completion
2017-01-27 18:05:07 +01:00
Vincent Demeester
0b47ca4339 Merge pull request #30468 from ralphtheninja/master
update api docs on Placement.Constraints for services
2017-01-27 17:43:46 +01:00
Alexander Morozov
77ec3aa8f2 Merge pull request #30344 from cpuguy83/refactor_attach
Refactor attach
2017-01-27 07:35:44 -08:00
Yong Tang
99d91ada97 Add capability filter to docker plugin ls
This fix adds `--filter capability=[volumedriver|authz]` to `docker plugin ls`.

The related docs has been updated.

An integration test has been added.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-27 07:32:22 -08:00
Harald Albers
aad095f573 Add [OPTIONS] to usage of plugin disable|push
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-27 16:17:02 +01:00
Vincent Demeester
8b1c6bfe3d Make docker stack deploy a little bit more indempotent
Sort some slice fields before sending them to the swarm api so that it
won't trigger an update.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-27 16:09:02 +01:00
Sebastiaan van Stijn
3daa8ad5e3 Merge pull request #30493 from sanimej/netv
Vendoring libnetwork @e8431956
2017-01-27 11:24:29 +01:00
Sebastiaan van Stijn
e2de212339 Merge pull request #28634 from ghostplant/check_cfg_memsw
Checking whether CG_MEM_SWAP is enabled at the moment.
2017-01-27 10:49:32 +01:00
Sebastiaan van Stijn
d4799f037f Merge pull request #30495 from codevulture/fix_plugin
Fix json format of plugin
2017-01-27 10:47:08 +01:00
Janonymous
2d24dbe896 Fix json format of plugin
Signed-off-by: Janonymous <janonymous.codevulture@gmail.com>
2017-01-27 09:32:19 +03:00
Santhosh Manohar
03ab20291b Vendoring libnetwork @e8431956
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-01-26 18:08:18 -08:00
Tibor Vass
43544cf2b4 Merge pull request #30157 from aboch/att
Remove attachable network on swarm leave
2017-01-26 17:03:23 -08:00
unclejack
b6e2703230 Dockerfile*: bump Go to 1.7.5
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2017-01-27 02:14:36 +02:00
Brian Goff
93e322f5be Merge pull request #29835 from yongtang/29810-btrfs-rescan
Run btrfs rescan only if userDiskQuota is enabled
2017-01-26 15:55:51 -08:00
Victor Vieux
5706d8206b Merge pull request #30144 from dnephin/add-secrets-to-stack-deploy
Add secrets to stack deploy
2017-01-26 14:54:04 -08:00
Kenfe-Mickaël Laventure
cd7f3e7f9a Merge pull request #30438 from albers/completion-windows-specific
Add windows specific bash completion for `docker run|create|build`
2017-01-26 14:25:35 -08:00
Yong Tang
a66e0dc349 Add --filter enabled=true for docker plugin ls
This fix adds `--filter enabled=true` to `docker plugin ls`,
as was specified in 28624.

The related API and docs has been updated.

An integration test has been added.

This fix fixes 28624.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-26 13:16:11 -08:00
Alexander Morozov
541150da53 Merge pull request #29428 from rhatdan/selinux
We need to fix labels if the user requests on volumes
2017-01-26 11:47:14 -08:00
Alessandro Boch
3cedca5d53 Remove attachable network on swarm leave
- When the node leaves the cluster, if any user run
  container(s) is connected to the swarm network,
  then daemon needs to detach the container(s) and
  remove the network.

Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-01-26 11:16:07 -08:00
Alexander Morozov
ced293a015 Merge pull request #30479 from dnephin/fix-master-swagger
Fix ImageDelete type
2017-01-26 11:15:16 -08:00
Tianon Gravi
356dc712a6 Update "download-frozen-image-v2.sh" for schemaVersion 2
Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-01-26 11:08:28 -08:00
Daniel Nephin
64978c1365 Fix ImageDelete type
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 14:07:44 -05:00
Victor Vieux
ab75ce6b66 Merge pull request #30407 from thaJeztah/add-src-alias-for-secrets
Add "src" alias for `--secret`
2017-01-26 10:53:27 -08:00
Felix Abecassis
ac3d74b0b4 install: map debian_version 9.X to debian stretch
Signed-off-by: Felix Abecassis <fabecassis@nvidia.com>
2017-01-26 10:51:08 -08:00
Alexander Morozov
df5d909ac9 Merge pull request #29851 from vdemeester/daemon-extract-image-cache
Extract the daemon image cache to its own package
2017-01-26 10:50:35 -08:00
Alexander Morozov
effc91e7a5 Merge pull request #29830 from timthelion/issue29821
Docs: Be more clear when specifying valid formats for strings
2017-01-26 10:45:03 -08:00
Alexander Morozov
a69c4129e0 Merge pull request #28409 from dnephin/swagger-gen-more
Generate more types from the swagger spec
2017-01-26 10:35:34 -08:00
Misty Stanley-Jones
37b13201c4 Fix broken relative links in old API docs
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-01-26 10:15:47 -08:00
Victor Vieux
5497f4758d Merge pull request #30250 from yongtang/30242-duplicate-networks-scope
Fix incorrect `Scope` in `network ls/inspect` with duplicate network names
2017-01-26 10:11:10 -08:00
Daniel Nephin
167b3f95b7 Set default values for uid and gid to prevent errors when starting a service.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 12:00:46 -05:00
Harald Albers
5a067e5255 Use native call for listing plugins in bash completion
`docker plugin ls` now has `--format`, so there is no more need for
postprocessing raw `docker plugin ls` output with `awk` any more.
This will make generation of plugin lists robust against changes
in `docker plugin ls` output.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-26 17:33:43 +01:00
Daniel Nephin
b4f23bbc69 Rebase Compose v3.1 schema on the latest v3 schema.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 11:33:15 -05:00
Daniel Nephin
f0a5531c46 Remove secrets as part of stack remove.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 11:33:15 -05:00
Daniel Nephin
b3427e43ed Test and fix external secrets in stack deploy.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 11:33:15 -05:00
Daniel Nephin
6ec84ef76d Add integration test for stack deploy with secrets.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 11:33:15 -05:00
Daniel Nephin
9419e7df2b Implement secret types for compose file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 11:33:15 -05:00
Daniel Nephin
65374488f9 Add v3.1 schema and support validating multiple version.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-26 11:33:15 -05:00
Kenfe-Mickael Laventure
fc2fc6565a Add example for device-cgroup-rule to man
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-26 07:21:50 -08:00
Kenfe-Mickael Laventure
98e7ec8e17 Update cobra to v1.5.1
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-26 07:21:50 -08:00
Kenfe-Mickael Laventure
1756af6faf Allow adding rules to cgroup devices.allow on container create/run
This introduce a new `--device-cgroup-rule` flag that allow a user to
add one or more entry to the container cgroup device `devices.allow`

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-26 07:20:45 -08:00
Lars-Magnus Skog
9c98bffc2b update api docs on Placement.Constraints for services
Signed-off-by: Lars-Magnus Skog <ralphtheninja@riseup.net>
2017-01-26 15:01:21 +01:00
Sebastiaan van Stijn
fe5f49685d Merge pull request #30111 from darrenstahlmsft/DependsConDrv
Windows: Add service dependency ConDrv
2017-01-26 12:49:05 +01:00
Sebastiaan van Stijn
bc18cfa3f3 Merge pull request #28921 from allencloud/remove-incorrect-url
update an incorrect url in docs
2017-01-26 10:29:12 +01:00
allencloud
5ae95d6245 update incorrect url in docs
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-26 12:57:45 +08:00
Harald Albers
93e43b42be Rename helper function in bash completion for consistency
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-25 15:55:04 -08:00
Harald Albers
fceaae95b5 Hide bash completion for docker run|create|build --isolation on non-windows
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-25 15:55:04 -08:00
Kenfe-Mickaël Laventure
db657a558e Merge pull request #30376 from albers/completion-fix-node-list
Fix bash completion for completing nodes
2017-01-25 11:52:13 -08:00
Yong Tang
05a831a775 Fix incorrect Scope in network ls/inspect with duplicate network names
This fix tries to address the issue raised in 30242 where the `Scope`
field always changed to `swarm` in the ouput of `docker network ls/inspect`
when duplicate networks name exist.

The reason for the issue was that `buildNetworkResource()` use network name
(which may not be unique) to check for the scope.

This fix fixes the issue by always use network ID in `buildNetworkResource()`.

A test has been added. The test fails before the fix and passes after the fix.

This fix fixes 30242.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-25 09:39:55 -08:00
Alexander Morozov
a76572b846 Merge pull request #30330 from mlaventure/prune-named-untagged
Prune named but untagged images if danglingOnly=true
2017-01-25 08:38:15 -08:00
Andy Goldstein
76f58d7294 journald logs: drain 1 more time at container exit
In the journald log driver, attempt to drain the journal 1 more time
after being told to stop following the log. Due to a possible race
condition, sometimes data is written to the journal at almost the same
time the log watch is closed, and depending on the order of operations,
sometimes you miss the last journal entry.

Signed-off-by: Andy Goldstein <agoldste@redhat.com>
2017-01-25 09:29:21 -05:00
Harald Albers
926fa56c0d Add bash completion for docker checkpoint
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-25 12:55:56 +01:00
Harald Albers
f2ee29ed96 Add windows specific bash completion for docker run|create
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-25 10:24:27 +01:00
Aaron Lehmann
e9c0de0de6 Merge pull request #30043 from dmcgowan/distribution-reference-update-1
Distribution reference update
2017-01-24 20:38:20 -08:00
Sebastiaan van Stijn
d4cd4b2164 Merge pull request #30182 from AkihiroSuda/validate-tmpfs
validate mount path for tmpfs
2017-01-25 03:08:17 +01:00
Victor Vieux
42d25de1b7 Merge pull request #30291 from yongtang/30279-ps-format
Fix failure in `docker ps --format` when `.Label` has args
2017-01-24 17:55:52 -08:00
Sebastiaan van Stijn
9b2dabbf18 Merge pull request #30227 from thaJeztah/fix-ineffectual-assignments
fix some ineffectual assignments (and minor fixes)
2017-01-25 02:49:57 +01:00
Victor Vieux
113e9f07f4 Merge pull request #30408 from cpuguy83/fix_plugin_wait
Fix deadlock on v1 plugin with activate error
2017-01-24 17:29:56 -08:00
Victor Vieux
4726fd1203 Merge pull request #30325 from dnephin/add-internal-to-compose-network
Add network.internal to Compose schema
2017-01-24 17:16:08 -08:00
Aaron Lehmann
3c82a9bc27 Merge pull request #30206 from coolljt0725/fix_save_share_layers
Follow #28926, fix docker save can't share layers in the tar archive.
2017-01-24 16:28:11 -08:00
Brian Goff
f07f54951f Merge pull request #30269 from sdurrheimer/zsh-completion-service-ps-multi
Add zsh completion for multiple service for 'docker service ps'
2017-01-24 16:33:30 -05:00
Kenfe-Mickaël Laventure
5e74dc11e3 Merge pull request #30391 from andrewhsu/check-changelog-date
validate CHANGELOG.md dates are in descending order
2017-01-24 11:18:21 -08:00
Michael Crosby
b13ecbc7b5 Merge pull request #30283 from albers/completion-run--init-path
Add bash completion and docs for `docker run|create --init-path`
2017-01-24 10:06:44 -08:00
Vincent Demeester
f645ffca04 Merge pull request #30413 from thaJeztah/minor-godocs-fixup
Minor GoDoc fixup in integration-cli
2017-01-24 18:08:27 +01:00
Sebastiaan van Stijn
089e1c1c5b Minor GoDoc fixup in integration-cli
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-24 18:03:30 +01:00
Sebastiaan van Stijn
37a1a84d91 do not ignore local build-contexts starting with "github.com"
Docker special-cases build-contexts starting with `github.com`, and
treats them as remote URLs.

Because of this special treatment, local build contexts in a directory
named "github.com" are ignored by `docker build`.

This patch changes the way the build-context is detected and first
checks if a local path with the given name exists before considering
it to be a remote URL.

Before this change;

    $ mkdir -p github.com/foo/bar && echo -e "FROM scratch\nLABEL iam=local" > github.com/foo/bar/Dockerfile

    $ docker build -t dont-ignore-me github.com/foo/bar
    Username for 'https://github.com':

After this change;

    $ mkdir -p github.com/foo/bar && echo -e "FROM scratch\nLABEL iam=local" > github.com/foo/bar/Dockerfile

    $ docker build -t dont-ignore-me github.com/foo/bar
    Sending build context to Docker daemon 2.048 kB
    Step 1/2 : FROM scratch
     --->
    Step 2/2 : LABEL iam local
     ---> Using cache
     ---> ae2c603fe970
    Successfully built ae2c603fe970

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-24 17:44:44 +01:00
Brian Goff
f2d384fca6 Fix deadlock on v1 plugin with activate error
When a plugin has an activation error, it was not being checked in the
`waitActive` loop. This means it will just wait forever for a manifest
to be populated even though it may never come.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-24 11:08:13 -05:00
Brian Goff
34d0619074 Merge pull request #30268 from sdurrheimer/zsh-completion-plugin-install-alias
Add zsh completion for 'docker plugin install --alias'
2017-01-24 10:08:57 -05:00
Brian Goff
aa180e5f31 Merge pull request #30399 from albers/completion-swarm-lock
Add bash completion for `docker swarm unlock|unlock-key`
2017-01-24 09:43:07 -05:00
Sebastiaan van Stijn
950658bbb6 Add "src" alias for --secret
This patch adds a "src" alias for `--secret`
to be consistent with `--mount`.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-24 15:41:45 +01:00
Brian Goff
3bc021cdf3 Merge pull request #30398 from albers/completion-swarm-init
Add missing options to bash completion for `docker swarm init|update`
2017-01-24 09:41:30 -05:00
Brian Goff
47da8175be Merge pull request #30373 from albers/completion-fix-service-update
Fix bash completion for `docker service update`
2017-01-24 09:31:53 -05:00
Brian Goff
ee7682ebae Merge pull request #30378 from mlaventure/fix-negative-size
Ensure proper value is used when computing reclaimable space
2017-01-24 09:24:53 -05:00
Vincent Demeester
23341a41a5 Merge pull request #30394 from aboch/nl
Vendor vishvananda/netlink @ebdfb74
2017-01-24 15:24:07 +01:00
John Howard
f32b267d1c Windows updates for .git in .dockerignore
Signed-off-by: John Howard jhoward@microsoft.com
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-24 14:43:02 +01:00
Vincent Demeester
fae6ca2bb4 Do not required .git in the build context
- export DOCKER_GITCOMMIT in the Makefile
- prioritize DOCKER_GITCOMMIT against the `git` command in
  `./hack/make.sh`
- Also add `integration-cli/bundles` to gitignore (it's generated when
  using integration-cli shell)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-24 14:42:57 +01:00
John Howard
a3b3e61a6c Add .git to .dockerignore
Signed-off-by: John Howard <jhoward@microsoft.com>
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-24 14:42:22 +01:00
Vincent Demeester
d417dd7886 Merge pull request #30248 from albers/completion-capabilities
Improve bash completion for `docker run --cap-{add,drop}`
2017-01-24 12:10:14 +01:00
Sebastiaan van Stijn
d1f7798c60 Merge pull request #30370 from mikesir87/master
Fixed secret creation usage during service create in docs
2017-01-24 11:55:09 +01:00
Sebastiaan van Stijn
de1a403810 Merge pull request #30387 from coolljt0725/fix_typo
typo: fix typo in api documents
2017-01-24 11:46:44 +01:00
Vincent Demeester
bb9f7cb280 Merge pull request #30371 from albers/completion-fix-plugin-ls
Fix bash completion for `docker plugin ls`
2017-01-24 11:46:13 +01:00
Sebastiaan van Stijn
ba0afd70e8 fix some ineffectual assignments
to make goreportcard a bit happier
https://goreportcard.com/report/github.com/docker/docker

also found that `TestCpToErrDstParentNotExists()` was
partially broken, because a `runDockerCp()` was inadvertently
removed in f26a31e80c

`TestDaemonRestartSaveContainerExitCode()` didn't verify
the actual _Error_ message, so added that to the test,
and updated the test to take into account that the
"experimental" CI enables `--init` on containers.

`TestVolumeCLICreateOptionConflict()` only checked
for an error to occur, but didn't validate if the
error was due to conflicting options.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-24 11:16:19 +01:00
Sebastiaan van Stijn
8820266c17 Merge pull request #29900 from yongtang/29226-network-format-created-at
Add `.CreatedAt` placeholder for `docker network ls --format`
2017-01-24 11:01:37 +01:00
Vincent Demeester
ac30c4c06c Merge pull request #30385 from aaronlehmann/vendor-swarmkit-grpc-containerd
Vendor swarmkit, containerd, and related dependencies
2017-01-24 11:00:35 +01:00
Vincent Demeester
0ca4995ca8 Merge pull request #29301 from miaoyq/improve-print-info-for-inspect
Improve the error print of image inspect
2017-01-24 10:56:24 +01:00
Harald Albers
07bd5152b3 Add bash completion for docker swarm unlock|unlock-key
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-24 10:11:38 +01:00
Harald Albers
f93da79dc1 Add missing options to bash completion for docker swarm init|update
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-24 10:00:18 +01:00
Harald Albers
550947e437 Fix bash completion for completing nodes
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-24 09:24:34 +01:00
Alessandro Boch
ed758b604a Vendor netlink @ebdfb74
Signed-off-by: Alessandro Boch <aboch@docker.com>
2017-01-23 22:47:37 -08:00
Andrew Hsu
6cca6bf942 validate changelog dates are in descending order
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2017-01-23 19:19:35 -08:00
Yanqiang Miao
cc9ed0a31b Improve the error print of image inspect
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-01-24 11:07:20 +08:00
Lei Jitang
2f0d494682 typo: fix typo in api documents
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2017-01-23 22:05:44 -05:00
Akihiro Suda
929ae4a0b6 Merge pull request #30375 from albers/completion-service-ps--filter-node
Add bash completion for `docker service ps --filter node`
2017-01-24 11:49:16 +09:00
Brian Goff
5e46ad159d Merge pull request #30306 from AkihiroSuda/update-proxy
update docker-proxy to 7b2b1feb1de4817d522cc372af149ff48d25028e
2017-01-23 21:07:25 -05:00
Aaron Lehmann
3e987e1732 Vendor swarmkit, containerd, and related dependencies
Update swarmkit to 037b491.

As swarmkit switched to a newer gRPC version, this also involves
updating Docker's vendored gRPC, which in turn requires updating
containerd to a new version that has protobufs generated against this
gRPC version.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-23 17:51:14 -08:00
Sebastiaan van Stijn
f633764913 Merge pull request #30262 from aaronlehmann/text-html
distribution: Add text/html and application/json as image mediatypes
2017-01-24 01:13:35 +01:00
Anusha Ragunathan
99d3b26346 Merge pull request #30294 from tiborvass/plugin-rexray-docs
plugins: add example docs for a rexray plugin
2017-01-23 15:48:20 -08:00
Tibor Vass
5f713cecc5 plugins: add example docs for a rexray plugin
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-01-23 15:41:35 -08:00
Sebastiaan van Stijn
7fed0830f3 Merge pull request #30211 from thaJeztah/fix-content-trust-flags
fix flag descriptions for content-trust
2017-01-23 23:52:11 +01:00
Vincent Demeester
eac3e4b5dd Merge pull request #29883 from dnephin/update-to-latest-schema
Update compose schema v3
2017-01-23 23:18:31 +01:00
Kenfe-Mickael Laventure
dcc1b4baf6 Ensure proper value is used when computing reclaimable space
When Size was reverted to be equal to VirtualSize, the df command
formatter was not correctly updated to account for the change.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-23 13:57:20 -08:00
Brian Goff
b157b3c648 Merge pull request #30318 from sdurrheimer/zsh-completion-init
Add zsh completion for 'dockerd --init' and 'docker {create,run} --init'
2017-01-23 16:28:25 -05:00
Aaron Lehmann
062f2a3eae Merge pull request #30139 from Microsoft/jjh/sequential
Windows: Use sequential file access
2017-01-23 12:46:06 -08:00
Kenfe-Mickael Laventure
044fa10309 Prune named but untagged images if danglingOnly=true
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-23 11:45:57 -08:00
John Howard
c98e77c77c Windows: Use sequential file access
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-23 10:25:36 -08:00
Harald Albers
a39a2bb6c2 Add bash completion for docker service ps --filter node
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-23 19:05:00 +01:00
Harald Albers
01ac33ce16 Fix bash completion for docker service update
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-23 18:48:21 +01:00
Yong Tang
2cd4ba1e56 Fix failure in docker ps --format when .Label has args
This fix tries to fix the issue in 30279 where  `docker ps --format`
fails if `.Label` has args. For example:
```
docker ps --format '{{.ID}}\t{{.Names}}\t{{.Label "some.label"}}'
```

The reason for the failure is that during the preprocessing phase
to detect the existance of `.Size`, the `listOptionsProcessor`
does not has a method of `Label(name string) string`.

This results in the failure of
```
template: :1:24: executing "" at <.Label>: Label is not a method but has arguments
```

This fix fixes the issue by adding needed method of `Label(name string) string`.

This fix fixes 30279.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-23 09:31:48 -08:00
Harald Albers
72bd2f8fd3 Fix bash completion for docker plugin ls
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-23 18:24:51 +01:00
Michael Irwin
9250117d58 Fixed secret creation usage during service create in docs
Using source, the following error is made:
invalid field in secret request: src

Signed-off-by: Michael Irwin <mikesir87@gmail.com>
2017-01-23 12:09:11 -05:00
Anusha Ragunathan
8bb8ac7f78 Merge pull request #29088 from yongtang/28708-plugin-list-format
Add `--format` flag for `docker plugin ls`
2017-01-23 08:49:28 -08:00
Brian Goff
6380e3d939 Refactor attaches copyEscapable
`copyEscapable` is a copy/paste of io.Copy with some added handling for
checking for the attach escape sequence.

This removes the copy/paste and uses `io.Copy` directly. To be able to
do this, it now implements an `io.Reader` which proxies to the main
reader but looks for the escape sequence.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-23 09:09:59 -05:00
Brian Goff
2ddec97545 Move attach code to stream package
This cleans up attach a little bit, and moves it out of the container
package.
Really `AttachStream` is a method on `*stream.Config`, so moved if from
a package level function to one bound to `Config`.
In addition, uses a config struct rather than passing around tons and
tons of arguments.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-23 09:09:57 -05:00
Sebastiaan van Stijn
bb3c0b2466 fix flag descriptions for content-trust
Commit ed13c3abfb added flags
for Docker Content Trust. Depending on the `verify` boolean,
the message is "Skip image verification", or "Skip image signing".
"Signing" is intended for `docker push` / `docker plugin push`.

During the migration to Cobra, this boolean got flipped for
`docker push` (9640e3a451),
causing `docker push` to show the incorrect flag description.

This patch changes the flags to use the correct description
for `docker push`, and `docker plugin push`.

To prevent this confusion in future, the boolean argument
is removed, and a `AddTrustSigningFlags()` function is added.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-23 14:52:36 +01:00
Vincent Demeester
4f926b67f4 Merge pull request #30351 from friism/patch-9
remove indent from .dockerignore example
2017-01-23 11:30:23 +01:00
Vincent Demeester
baecb6f499 Merge pull request #30272 from AkihiroSuda/fix-cli-json
Fix broken JSON support in cli/command/formatter
2017-01-23 11:03:18 +01:00
Sebastiaan van Stijn
b319221c21 Merge pull request #30334 from mstanleyjones/master
Fixing formatting errors in Run refdoc
2017-01-22 23:02:59 +01:00
Michael Friis
0f5a98122f remove indent from .dockerignore example
Signed-off-by: Michael Friis <friism@gmail.com>
2017-01-22 10:46:04 -08:00
Anusha Ragunathan
6d6a7fc70c Add bash completion for newly added options to "docker plugin ls"
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-01-20 15:59:44 -08:00
Yong Tang
1c0d37fa7f Add --format flag for docker plugin ls
This fix tries to address the enhancement discussed in 28735 to add
`--format` for the output of `docker plugin ls`.

This fix
1. Add `--format` and `--quiet` flags to `docker plugin ls`
2. Convert the current implementation to use `formatter`, consistent with
   other docker list commands.
3. Add `pluginsFormat` for config.json.

Related docs has been updated.

Several unit tests have been added to cover the changes.

This fix is related to 28708 and 28735.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-20 15:59:44 -08:00
Tibor Vass
7a97705b52 Merge pull request #29959 from cpuguy83/master_fix_selinux_packaging
[master] Fix conflicts with newly updated selinux policies
2017-01-20 15:13:18 -08:00
Victor Vieux
74ed368e7a Merge pull request #30329 from johndmulhausen/patch-2
Fixing formatting errors in Run refdoc

Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2017-01-20 14:47:18 -08:00
Justin Cormack
0a08f7a1d4 Merge pull request #30319 from vdemeester/integration-fix-testbuildcopywilcardinname
Run TestBuildCopyWilcardInName only on linux daemon and unix client
2017-01-20 22:04:56 +00:00
Tibor Vass
2b89356c07 Merge pull request #30145 from anusha-ragunathan/ps-swarm
Pass plugingetter as part of swarm node config.
2017-01-20 10:35:49 -08:00
Tõnis Tiigi
0566f3ffc4 Merge pull request #30223 from mlaventure/fix-logwatcher-deadlock
Close logwatcher on context cancellation
2017-01-20 10:14:37 -08:00
Alexander Morozov
50a72c7467 Merge pull request #28454 from glensc/init-args
do not require custom build of tini
2017-01-20 10:03:58 -08:00
Daniel Nephin
408fd20be2 Add missing network.internal.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-20 12:53:19 -05:00
Daniel Nephin
de1ffebf19 Update Compose schema to match docker-compose.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-20 12:36:57 -05:00
Sebastiaan van Stijn
ae99820357 Merge pull request #30282 from sdurrheimer/zsh-completion-swarm-join-availability
Add zsh completion for 'docker swarm --availability'
2017-01-20 17:52:06 +01:00
Sebastiaan van Stijn
156d402133 Merge pull request #30317 from sdurrheimer/zsh-completion-prune-filter
Add zsh completion for 'docker {container,image,network,system} prune --filter
2017-01-20 16:25:42 +01:00
Vincent Demeester
e47c46c713 Run TestBuildCopyWilcardInName only on linux daemon and unix client
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-20 16:10:28 +01:00
Steve Durrheimer
cdf57782fd Add zsh completion for 'dockerd --init' and 'docker {create,run} --init'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-01-20 16:06:22 +01:00
Steve Durrheimer
784ebccffa Add zsh completion for 'docker {container,image,network,system} prune --filter'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-01-20 15:49:21 +01:00
Vincent Demeester
ba4f8f06b3 Merge pull request #29147 from Microsoft/jjh/makeroot
Windows: make.ps1 calc root
2017-01-20 15:01:58 +01:00
Akihiro Suda
5b16c4c800 Merge pull request #27510 from chipironcin/master
Improve error message
2017-01-20 21:47:30 +09:00
Akihiro Suda
541aa27d03 update docker-proxy to 7b2b1feb1de4817d522cc372af149ff48d25028e
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-01-20 06:18:12 +00:00
Akihiro Suda
4a8799dc0a validate mount path for tmpfs
There was no validation for `docker run --tmpfs foo`.

In this PR, only two obvious rules are implemented:
 - path must be absolute
 - path must not be "/"
We should add more rules carefully.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-01-20 06:01:48 +00:00
Anusha Ragunathan
eb13865d4e Vendor swarmkit
Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-01-19 17:20:33 -08:00
Anusha Ragunathan
fa784951ba Pass plugingetter as part of swarm node config.
This is necessary for swarmkit to support cluster wide plugins, such as
globally scoped network plugins.

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-01-19 17:11:12 -08:00
Derek McGowan
0421f5173d Remove use of forked reference package for cli
Use resolving to repo info as the split point between the
legitimate reference package and forked reference package.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-01-19 16:04:50 -08:00
Derek McGowan
3dfb7590a1 Vendor updated distribution
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2017-01-19 16:02:34 -08:00
Joseph Rothrock
9758a2a724 Use a regex to match environment variables #27565
Signed-off-by: Joseph Rothrock <rothrock@rothrock.org>
2017-01-19 15:30:11 -08:00
Sebastiaan van Stijn
af90d50647 Merge pull request #29988 from yongtang/29936-insecure-registries
Return error when insecure registry contains scheme
2017-01-19 21:49:06 +01:00
Aaron Lehmann
a215e15cb1 distribution: Add text/html and application/json as image mediatypes
As noted by #30083, the new strict checking of mediatypes misses some
cases where earlier bugs caused nonstandard mediatypes to be stored in
manifests. Two of the known cases are text/html and application/json,
which were returned by certain registries and stored by earlier versions
of Docker. Add special cases for text/html and application/json.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-19 11:16:28 -08:00
Aaron Lehmann
a992ff9fec Merge pull request #29980 from allencloud/fix-29520-info-incorrectness
return error when listNode fails
2017-01-19 10:41:02 -08:00
Harald Albers
d049ef2b0d Add docs for run|create --init|--init-path
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-19 08:47:01 -08:00
Harald Albers
182048f185 Add bash completion for run|create --init-path
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-19 08:33:05 -08:00
Sebastiaan van Stijn
de0328560b Merge pull request #30165 from xulike666/fix-typo-6/36
[combined] fix typo
2017-01-19 17:21:22 +01:00
Steve Durrheimer
ee2ce82c61 Add zsh completion for 'docker swarm --availability'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-01-19 16:54:36 +01:00
Vincent Demeester
a3dff7c3db Merge pull request #30267 from WeiZhang555/fix-misspell
Fix some typos
2017-01-19 15:06:08 +01:00
Vincent Demeester
ee54d8eb27 Merge pull request #30266 from albers/completion--init
Add bash completion for `dockerd --init` and `docker run|create --init`
2017-01-19 15:05:44 +01:00
Justin Cormack
5c80826880 Merge pull request #30259 from nishanttotla/dynamically-update-hostname
Make Docker automatically update hostname for Swarm node
2017-01-19 10:35:50 +00:00
Akihiro Suda
26013fcdd6 Fix broken JSON support in cli/command/formatter
How to test (it should not print `{}`, and just returns JSON with the actual data):

   $ docker images --format '{{json .}}'
   $ docker container stats --format '{{json .}}'

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-01-19 09:51:13 +00:00
Steve Durrheimer
82e62b15f3 Add zsh completion for multiple service for 'docker service ps'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-01-19 09:04:51 +01:00
Steve Durrheimer
455b7bcbab Add zsh completion for 'docker plugin install --alias'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2017-01-19 08:58:44 +01:00
Aaron.L.Xu
40af569164 fix typo
fix typo I found AMAP in integration-cli/*

fix typo mentioned by Allencloud

Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-01-19 15:52:28 +08:00
Zhang Wei
827bbe90a0 Fix some typos
Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-01-19 15:29:28 +08:00
Harald Albers
2076261757 Add bash completion for dockerd --init and docker run|create --init
Fixes #30263

Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-19 08:22:14 +01:00
allencloud
8e04e9902a return error when listNode fails
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-19 14:02:06 +08:00
Akihiro Suda
7d0041f9e5 Merge pull request #30218 from kevinetc123/patch-typo
fix a typo error
2017-01-19 14:34:19 +09:00
kaiwentan
b8155bd5be correct all the formate to formatter
Signed-off-by: kaiwentan <kaiwentan@harmonycloud.cn>
2017-01-19 11:26:49 +08:00
Nishant Totla
8de8b1d520 Make Docker automatically update hostname for Swarm node
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2017-01-18 15:55:53 -08:00
John Howard
f47e417466 Windows: Remove GetPidsForContainer
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-18 12:28:52 -08:00
Christopher Jones
5fd7ef2c4b add suggestions in failure message in install script
Adds suggestions to where you can install docker in the case
that the install script fails to install because of the architecture
not being officially supported.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-01-18 15:11:20 -05:00
Brian Goff
0e8c7d7277 Merge pull request #30208 from justincormack/no-sqlite
Remove sqlite dependency
2017-01-18 13:15:38 -05:00
Harald Albers
36d8b66cb9 Improve bash completion for docker run --cap-{add,drop}
Docker has several capabilities enabled by default and some not.
It seems natural to follow this distinction in --cap-add and
--cap-drop.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-18 16:04:46 +01:00
Sebastiaan van Stijn
e1c5e72902 Merge pull request #30185 from vdemeester/integration-build-cmd-cleanup-take2
[test-integration] Clean more build utils
2017-01-18 15:12:03 +01:00
Sebastiaan van Stijn
5eda0c5947 Merge pull request #28925 from daehyeok/ineffassign
Refactoring ineffectual assignments
2017-01-18 15:01:57 +01:00
Justin Cormack
f8119bb7a7 Remove sqlite
This drops support for migrations from pre-1.10 Docker versions, which
should be done via an external tool or an intermediate upgrade.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-18 12:27:21 +00:00
Vincent Demeester
8bc7e19346 Merge pull request #30041 from stevvooe/tips-for-successful-changes
CONTRIBUTING: add tips for succesful changes
2017-01-18 10:00:15 +01:00
Akihiro Suda
30ca9e3b0c Merge pull request #30230 from stupendous-man/fix-typos
Fixed a typo within pkg/authorization/api.go
2017-01-18 14:23:03 +09:00
Akihiro Suda
d324537117 Merge pull request #30215 from WeiZhang555/fix-go-vet
Fix escaped go vet error
2017-01-18 12:48:22 +09:00
Diego Romero
48b8f54876 Fixed a typo within pkg/authorization/api.go
Signed-off-by: Diego Romero <idiegoromero@gmail.com>
2017-01-17 21:51:16 -05:00
Tõnis Tiigi
56b951fbe5 Merge pull request #30219 from tonistiigi/test-port-leak
Switch TestSwarmPublishDuplicatePorts to different ports
2017-01-17 17:16:14 -08:00
Sebastiaan van Stijn
48184351c9 Merge pull request #29076 from justincormack/seccomp-socket-to-them
Block obsolete and unusual socket families in the default seccomp profile
2017-01-18 01:53:17 +01:00
Kenfe-Mickael Laventure
fb2bb3653e Close logwatcher on context cancellation
This commit addresses 2 issues:

  1. in `tailfile()` if somehow the `logWatcher.Msg` were to become full and the watcher closed before space was made into it, we were getting stuck there forever since we were not checking for the watcher getting closed
  2. when servicing `docker logs`, if the command was cancelled we were not closing the watcher (and hence notifying it to stop copying data)

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-17 14:36:13 -08:00
Alexander Morozov
2169723538 Merge pull request #30220 from ehazlett/fix-log-import
Remove cloudflare log import
2017-01-17 14:21:36 -08:00
Kenfe-Mickaël Laventure
645bdc22ec Merge pull request #30212 from thaJeztah/here-come-the-captains
Welcome the captains :-)
2017-01-17 13:54:01 -08:00
Stephen J Day
59e1d579e0 CONTRIBUTING: add tips for succesful changes
Expand the contributing doc to include tips for successful PRs and
guidance on commit messages. This should help contributers to have
better position PRs that are more likely to be merged.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-01-17 13:15:26 -08:00
Evan Hazlett
e221b74bd1 fix log import
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2017-01-17 14:20:54 -05:00
Darren Stahl
b2a7f6abb3 Windows: Add service dependency ConDrv
Signed-off-by: Darren Stahl <darst@microsoft.com>
2017-01-17 10:55:25 -08:00
Tonis Tiigi
24cd5444f9 Switch TestSwarmPublishDuplicatePorts to different ports
There is an issue with the ports leaking to other tests.
This is a workaround until the actual problem is addressed.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-17 10:54:22 -08:00
Mark Milstein
296f8d5abc add rpm builder for armhf CentOS 7
Signed-off-by: Mark Milstein <mark@epiloque.com>
2017-01-17 18:05:38 +00:00
Sebastiaan van Stijn
f19a293dd7 Merge pull request #29965 from yongtang/29946-networks-api
Return `[]` instead of `null` in case `filterNetworks` returns empty
2017-01-17 18:58:35 +01:00
Justin Cormack
7e3a596a63 Block obsolete socket families in the default seccomp profile
Linux supports many obsolete address families, which are usually available in
common distro kernels, but they are less likely to be properly audited and
may have security issues

This blocks all socket families in the socket (and socketcall where applicable) syscall
except
- AF_UNIX - Unix domain sockets
- AF_INET - IPv4
- AF_INET6 - IPv6
- AF_NETLINK - Netlink sockets for communicating with the ekrnel
- AF_PACKET - raw sockets, which are only allowed with CAP_NET_RAW

All other socket families are blocked, including Appletalk (native, not
over IP), IPX (remember that!), VSOCK and HVSOCK, which should not generally
be used in containers, etc.

Note that users can of course provide a profile per container or in the daemon
config if they have unusual use cases that require these.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-17 17:50:44 +00:00
Vincent Demeester
74bebcc140 Merge pull request #29930 from Microsoft/jjh/envdocs
Docs: Refresh run.md ENV paragraphs
2017-01-17 18:03:08 +01:00
Zhang Wei
3551893f46 Fix escaped go vet error
Find one escaped go vet error:

```
$ cd pkg/httputils/
$ go vet .
httputils_test.go:28: arg response for printf verb %q of wrong type:
*net/http.Response
```

You can also find it with

```
$ go vet github.com/docker/docker/pkg/httputils/
```

or

```
$ go vet ./...
```

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-01-18 00:13:09 +08:00
Vincent Demeester
96815a7dc4 Merge pull request #29759 from allencloud/purify-error-message-for-create-and-run
purify error message in cli for create and run command
2017-01-17 16:53:51 +01:00
Vincent Demeester
f63d1a6eec Merge pull request #30209 from WeiZhang555/add-build-args-for-rpmbuild
Add missing ${DOCKER_BUILD_ARGS}
2017-01-17 15:52:10 +01:00
Vincent Demeester
c10f6ef43f Clean more build utils in integration cli
- Remove deprecated buildImage* functions
- Rename buildImageNew to buildImage
- Use *check.C in fakeContext* setup and in getIdByName

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-17 15:42:38 +01:00
Alexander Morozov
b0f9958d93 daemon: remove graphdb usage
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2017-01-17 13:52:48 +00:00
Sebastiaan van Stijn
8c7651998f Merge pull request #30094 from miaoyq/complete-opt-for-plugin-install
Complete the options for 'docker plugin install'
2017-01-17 14:40:31 +01:00
Vincent Demeester
4fdfcb36cd Merge pull request #30138 from vdemeester/integration-use-testenv
[test-integration] Use testEnv methods and remove most of the global variables
2017-01-17 14:31:49 +01:00
Vincent Demeester
8518965d18 Merge pull request #29329 from thaJeztah/fix-fqdn-hostname
Add test for fqdn hostname not being set in container
2017-01-17 14:31:29 +01:00
Sebastiaan van Stijn
57de634bf3 Add new curators to MAINTAINERS
The Docker Captains are going to assist in our
triage process! \o/ \o/

This change adds the captains to the maintainers
file as a curator.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-17 14:31:24 +01:00
Dmitry Kononenko
dfa4e77d82 bugfix issie 18826: containers do not restart after reboot when bound to virtual network interface
Signed-off-by: Dmitry Kononenko <d@dm42.ru>
2017-01-17 14:05:54 +01:00
Zhang Wei
062ce13e9c Add missing ${DOCKER_BUILD_ARGS}
Add missing "${DOCKER_BUILD_ARGS}" for building rpm with `docker build`,
this is quite important when running `make rpm` behind http proxy.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-01-17 20:10:48 +08:00
Vincent Demeester
c8016e669f Use testEnv methods and remove most of the global variables
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-17 12:39:08 +01:00
Vincent Demeester
9ebb90883e Merge pull request #30200 from albers/completion-build--squash
Add bash completion for `build --squash`
2017-01-17 12:07:00 +01:00
Lei Jitang
ee5228e799 Follow #28926, fix docker save can't share layers in the tar archive.
After https://github.com/docker/docker/pull/28926, if saving multiple images
which have common layers at same time, the common layers can't share in the tar archive
because the hash ID changes because of the Create time. The Create time is used for
pre v1.9 which treat each layer as a image and make no sense for after v1.10.
To make the hash ID consistent and keep the image save from >1.10 working properly
on pre v1.9, using a constant Create time `time.Unix(0,0)`.

Signed-off-by: Lei Jitang <leijitang@huawei.com>
2017-01-17 05:40:59 -05:00
Sebastiaan van Stijn
950792dc6d add integration test for FQDN hostname
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-17 11:01:59 +01:00
allencloud
3f1feaf4d6 purify error message in cli for create and run command
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-17 17:21:17 +08:00
Sebastiaan van Stijn
05378f4898 Merge pull request #30204 from YuPengZTE/devSem
fix the bare url and the Summary of http://semver.org
2017-01-17 10:04:33 +01:00
Jorge Marin
2bee1cfd5a Use quoted form of container name and container id
Use quoted form of container name and container id to improve copy-paste avoiding the extra `.` that slips into the clipboard

Signed-off-by: Jorge Marin <chipironcin@users.noreply.github.com>
2017-01-17 08:26:05 +00:00
yupengzte
1f925d1d5c fix the bare url and the Summary of http://semver.org
Signed-off-by: yupengzte <yupeng36@zte.com.cn>
2017-01-17 16:20:11 +08:00
Harald Albers
e91dbba7ff Add bash completion for build --squash
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-17 08:52:18 +01:00
Sebastiaan van Stijn
bbbddeebba Add version annotation to various flags added in 1.13
Pull request https://github.com/docker/docker/pull/27745 added support for the
client to talk to older versions of the daemon. Various flags were added to
docker 1.13 that are not compatible with older daemons.

This PR adds annotations to those flags, so that they are automatically hidden
if the daemon is older than docker 1.13 (API 1.25).

Not all new flags affect the API (some are client-side only). The following
PR's added new flags to docker 1.13 that affect the API;

- https://github.com/docker/docker/pull/23430 added `--cpu-rt-period`and `--cpu-rt-runtime`
- https://github.com/docker/docker/pull/27800 / https://github.com/docker/docker/pull/25317 added `--group` / `--group-add` / `--group-rm`
- https://github.com/docker/docker/pull/27702 added `--network` to `docker build`
- https://github.com/docker/docker/pull/25962 added `--attachable` to `docker network create`
- https://github.com/docker/docker/pull/27998 added `--compose-file` to `docker stack deploy`
- https://github.com/docker/docker/pull/22566 added `--stop-timeout` to `docker run` and `docker create`
- https://github.com/docker/docker/pull/26061 added `--init` to `docker run` and `docker create`
- https://github.com/docker/docker/pull/26941 added `--init-path` to `docker run` and `docker create`
- https://github.com/docker/docker/pull/27958 added `--cpus` on `docker run` / `docker create`
- https://github.com/docker/docker/pull/27567 added `--dns`, `--dns-opt`, and `--dns-search` to `docker service create`
- https://github.com/docker/docker/pull/27596 added `--force` to `docker service update`
- https://github.com/docker/docker/pull/27857 added `--hostname` to `docker service create`
- https://github.com/docker/docker/pull/28031 added `--hosts`, `--host-add` / `--host-rm` to `docker service create` and `docker service update`
- https://github.com/docker/docker/pull/28076 added `--tty` on `docker service create` / `docker service update`
- https://github.com/docker/docker/pull/26421 added `--update-max-failure-ratio`, `--update-monitor` and `--rollback` on `docker service update`
- https://github.com/docker/docker/pull/27369 added `--health-cmd`, `--health-interval`, `--health-retries`, `--health-timeout` and `--no-healthcheck` options to `docker service create` and `docker service update`

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-16 18:21:20 +01:00
Kenfe-Mickaël Laventure
a7c3389a82 Merge pull request #30181 from albers/completion--filter-until
Add bash completion for `container|image|network prune --filter until`
2017-01-16 08:47:34 -08:00
Brian Goff
e74623d283 Merge pull request #30113 from thaJeztah/fix-autoremove-on-older-api
Don't use AutoRemove on older daemons
2017-01-16 08:40:00 -05:00
Harald Albers
217786423c Add bash completion for container|image|network prune --filter until
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-16 10:47:52 +01:00
Akihiro Suda
dcf1264f1c Merge pull request #30058 from vdemeester/integration-build-cmd-clean
[test-integration] clean docker_cli_build_test.go
2017-01-16 18:16:49 +09:00
Vincent Demeester
fd0ea76931 Merge pull request #30163 from albers/completion-fix-hide-legacy-commands
Fix treatment of DOCKER_HIDE_LEGACY_COMMANDS in bash completion
2017-01-16 10:01:44 +01:00
Vincent Demeester
ead8ce2431 Merge pull request #30151 from tonistiigi/fix-defunct
Avoid defunct registry/notary processes during tests
2017-01-16 08:55:16 +01:00
Sebastiaan van Stijn
582c5b7652 Merge pull request #30140 from mlaventure/remove-fifo-timeout
Remove timeout on fifos opening
2017-01-15 22:47:30 +01:00
Vincent Demeester
fa4f09194f Merge pull request #28690 from zteBill/volume-errorinfo-inexact
repeated volume create information
2017-01-15 17:10:27 +01:00
Vincent Demeester
c778f4b964 Refactor docker_cli_build_test.go
Use `testutil/cmd` for `buildCommand`.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-15 16:48:08 +01:00
Sebastiaan van Stijn
96f7cf254b Merge pull request #30143 from tophj-ibm/multi-get-go-from-own-dockerfile
[multi-arch] get go version from arch dockerfile
2017-01-15 15:47:55 +01:00
Sebastiaan van Stijn
957a77f2e2 Merge pull request #30169 from runcom/fix-quoting
image: tarexport: do not quote integers in format string
2017-01-15 15:47:34 +01:00
Sebastiaan van Stijn
0ea7b143b0 Don't use AutoRemove on older daemons
Docker 1.13 moves the `--rm` flag to the daemon,
through an AutoRemove option in HostConfig.

When using API 1.24 and under, AutoRemove should not be
used, even if the daemon is version 1.13 or above and
"supports" this feature.

This patch fixes a situation where an 1.13 client,
talking to an 1.13 daemon, but using the 1.24 API
version, still set the AutoRemove property.

As a result, both the client _and_ the daemon
were attempting to remove the container, resulting
in an error:

    ERRO[0000] error removing container: Error response from daemon:
    removal of container ce0976ad22495c7cbe9487752ea32721a282164862db036b2f3377bd07461c3a
    is already in progress

In addition, the validation of conflicting options
is moved from `docker run` to `opts.parse()`, so
that conflicting options are also detected when
running `docker create` and `docker start` separately.

To resolve the issue, the `AutoRemove` option is now
always set to `false` both by the client and the
daemon, if API version 1.24 or under is used.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-15 01:59:57 +01:00
Brian Goff
24c4226dc7 Merge pull request #29831 from vdemeester/integration-small-cleanups
[test-integration] Small cleanups on integration cli
2017-01-14 16:43:39 -05:00
Brian Goff
0fcd55072b Merge pull request #29902 from caervs/add_autorestart
Add on-failure to default restart policy
2017-01-14 16:40:02 -05:00
Brian Goff
7d24cc7710 Merge pull request #29856 from Microsoft/jjh/warntoout
Windows to Linux build warning to stdout
2017-01-14 16:37:31 -05:00
mueller-ma
b05c70d297 Added four names to namesgenerator
Signed-off-by: Ma Müller <mueller-ma@users.noreply.github.com>
2017-01-14 22:31:32 +01:00
Antonio Murdaca
675f4140e7 image: tarexport: do not quote integers in format string
Basically, prevents outputs like:
```
invalid manifest, layers length mismatch: expected '\x02', got '\x01'
```

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-01-14 20:03:11 +01:00
Sebastiaan van Stijn
a4bc730298 Merge pull request #30108 from thaJeztah/update-changelog-1.12.6
Update changelog on master with changes from 1.12.x
2017-01-14 18:11:45 +01:00
Brian Goff
60fb79e0dc Merge pull request #30150 from anusha-ragunathan/pluginv1_vol
Fix pluginv1 Windows volumes
2017-01-14 11:35:05 -05:00
Doug Davis
b65f7ea7ae Merge pull request #30164 from xulike666/fix-typo-5/36
fix typo in container/container.go
2017-01-14 09:14:52 -05:00
Brian Goff
1bbd75c743 Merge pull request #30125 from albers/completion-plugin-install--disable-content-trust
Add bash completion for `plugin install --disable-content-trust`
2017-01-14 09:04:51 -05:00
Brian Goff
78db6379a8 Merge pull request #30103 from TDAbboud/29961-add-error-checking
Add error checking for hostPort range
2017-01-14 08:43:27 -05:00
Brian Goff
728566c4ad Merge pull request #30161 from xulike666/fix-typo-4/36
fix typo in api/types/client.go
2017-01-14 08:24:49 -05:00
Brian Goff
1847f855b3 Merge pull request #30160 from xulike666/fix-boring-typo
fix typo in api/types/time/timestamp.go
2017-01-14 08:22:31 -05:00
Harald Albers
12952f537c Fix treatment of DOCKER_HIDE_LEGACY_COMMANDS in bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-14 04:48:41 -08:00
Aaron.L.Xu
32035ffea5 fix typo in container/container.go
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-01-14 15:23:33 +08:00
Aaron.L.Xu
c8fd28f12e fix typo in api/types/client.go
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-01-14 15:10:08 +08:00
Aaron.L.Xu
2859ce6a57 fix typo in api/types/time/timestamp.go
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-01-14 14:16:03 +08:00
Yong Tang
8dadeaf8ea Return error when insecure registry contains scheme
While investigating 29936 I noticed one potential issue
in `LoadInsecureRegistries`.

The implementation of the func assumes that the format
of insecure registry should be `host:port` if not CIDR.
However, it is very common that user may incorrectly
provide a registry with a scheme (e.g, `http://myregistry.com:5000`)
Such a registry format with a scheme will cause docker pull to
always try https endpoint.

The reason is that the func of `isSecureIndex()` actually will
check for the map of the index server for `myregistry.com:5000`
while the insecure registry only has a record of `http://myregistry.com:5000`.
As a consequence, docker assumes that `myregistry.com:5000` is not
a insecure registry and will go ahead with https endpoint.

This fix addresses the issue by error out insecure registries with scheme.

A unit test has been added.

This fix is related to 29936.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-13 19:19:30 -08:00
Tonis Tiigi
09dbce5f5a Avoid defunct registry/notary processes during tests
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-13 17:45:14 -08:00
Anusha Ragunathan
0ef21eb0e3 Fix pluginv1 Windows volumes
c54b717 caused a regression for pluginv1 on Windows, where extraneous
backslashes were added to BasePath of the plugin. For pluginv1 on windows,
BasePath() should return an empty string, since the plugin is fully aware
of the mount path. Also, unlike Linux where all paths are relative to "/",
Windows paths are dependent on system drives and mapped drives.

Fixes #30148

Signed-off-by: Anusha Ragunathan <anusha.ragunathan@docker.com>
2017-01-13 17:01:48 -08:00
Tonis Tiigi
db37a86d37 vendor: update golang/net to c427ad74c
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-13 15:42:11 -08:00
Tony Abboud
135f8f9674 Add error checking for hostPort range
This fix catches the case where there is a single container port
and a dynamic host port and will fail out gracefully
Example docker-compose.yml snippet:
    port:
        ports:
            - "8091-8093:8091"
            - "80:8080"

Signed-off-by: Tony Abboud <tdabboud@hotmail.com>
2017-01-13 18:05:51 -05:00
Alexander Morozov
1eafa0f706 Merge pull request #30112 from Microsoft/jjh/graphdriver
Windows: Remove redundant 'GraphDriver() func
2017-01-13 13:59:12 -08:00
Christopher Jones
fa17ac2560 [multi-arch] get go version from arch dockerfile
Changes a couple of generate scripts so that the architecture
gets the go version from its own Dockerfile. This should cover a
rare case where the go version might have to be different from
the x86 Dockerfile.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-01-13 16:48:41 -05:00
Vincent Demeester
bd9361b810 Merge pull request #28720 from jlhawn/add_secret_update_method
Add SecretUpdate method to client
2017-01-13 21:28:43 +01:00
Sandeep Bansal
0f25dc2440 Vendoring latest hcsshim
Signed-off-by: Sandeep Bansal <msabansal@microsoft.com>
2017-01-13 12:01:23 -08:00
msabansal
e6962481a0 Added support for dns-search and fixes #30102
Signed-off-by: msabansal <sabansal@microsoft.com>
2017-01-13 12:01:10 -08:00
Kenfe-Mickael Laventure
c178700a04 Remove timeout on fifos opening
Instead of a timeout the context is cancelled on error to ensure
proper cleanup of the associated fifos' goroutines.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-13 11:46:48 -08:00
Sebastiaan van Stijn
ca00c18530 Merge pull request #30131 from xulike666/fix-typo
fix typo in mount.go
2017-01-13 20:40:34 +01:00
Boshi Lian
1c770c6d8c return err instead of panic when convert string to utf16
Signed-off-by: Boshi Lian <farmer1992@gmail.com>
2017-01-14 02:21:22 +08:00
Josh Hawn
1cd5af59bf Add SecretUpdate docs to api/swagger.yaml
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2017-01-13 09:51:12 -08:00
Josh Hawn
77b8465d7e Add SecretUpdate method to client
closes #28678

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)

Update cli/command/service/update_test.go

Fixes test build error:

  secretAPIClientMock does not implement "github.com/docker/docker/client".SecretAPIClient (missing SecretUpdate method)

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2017-01-13 09:51:05 -08:00
Kenfe-Mickaël Laventure
f858d49483 Merge pull request #30120 from thaJeztah/revert-argument-name-change
revert "virtualSize" name change
2017-01-13 08:54:27 -08:00
Sebastiaan van Stijn
2dd3aa608d Merge pull request #30132 from albers/completion_hide_legacy_commands
Honour $DOCKER_HIDE_LEGACY_COMMANDS in bash completion
2017-01-13 16:18:58 +01:00
Vincent Demeester
8b7ba17d33 Merge pull request #30130 from ijc25/clarify-cp-docs
Clarify `cp` documentation behaviour with trailing "/."
2017-01-13 16:16:03 +01:00
Harald Albers
aa006f1280 Honour $DOCKER_HIDE_LEGACY_COMMANDS in bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-13 15:43:52 +01:00
Aaron.L.Xu
e0621c53af fix typo in mount.go
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-01-13 22:36:32 +08:00
Ian Campbell
fca6cda4b0 Clarify cp documentation behaviour with trailing "/."
Issue #30082 demonstrated that their is possible confusion with the "/."
where the tailing "." can appear to be merely punctuation within the
document rather than a highly pertinent part of `SRC_PATH`.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2017-01-13 13:58:25 +00:00
Harald Albers
725a864a04 Add bash completion for plugin install --disable-content-trust
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-13 11:56:50 +01:00
Sebastiaan van Stijn
22c411517a revert "virtualSize" name change
Commit b717de5153
changed the name of the "size" argument to
"virtualSize", as the "VirtualSize" field
was re-used for calculating the size of all
layers _not_ used by other images.

be20dc15af reverted
the change in calculation, but did not change
the argument name back to "size".

This changes the name back to its original
name, because since the introduction of the
content-addressable store in docker 1.10,
there no longer is a "virtual" size, so
"size" is a better name for this argument.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-13 10:25:03 +01:00
Daehyeok Mun
6306019d0b Refactoring ineffectual assignments
This patch fixed below 4 types of code line
1. Remove unnecessary variable assignment
2. Use variables declaration instead of explicit initial zero value
3. Change variable name to underbar when variable not used
4. Add erro check and return for ignored error

Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2017-01-13 00:27:01 -07:00
Sebastiaan van Stijn
0b09d6bfa7 Merge pull request #30061 from yongtang/30027-docker-images-v1.12
Fix `Size` in `docker images` for v1.12 client to v1.13 daemon
2017-01-13 02:11:48 +01:00
Brian Goff
597843e790 Merge pull request #30039 from ripcurld0/specify_line_no_dockerfile_err
Specify in which line the Dockerfile parser failed
2017-01-12 19:48:45 -05:00
John Howard
5ac3ab3e3d Update run.md ENV docs
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-12 15:47:02 -08:00
John Howard
2cd8bcd7df Windows: Remove redundant 'GraphDriver() func
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-12 15:32:46 -08:00
Michael Crosby
f65212d5b9 Merge pull request #30106 from runcom/fix-upgrade-from-1.10
daemon: honor default runtime when starting containers
2017-01-12 14:44:37 -08:00
David Williamson
d9e5f7d8f7 Provide password to volume create command
* Depending on the host configuration between the docker engine and the remote host we wish to mount using sshfs, a password may be required.
* Confirmed syntax for optional parameter with @vieux
* Verified change works as desired with engine running on Ubuntu host and mounting a volume from a file system on a Mac.

Signed-off-by: David Williamson <david.williamson@docker.com>
2017-01-12 14:02:30 -08:00
Antonio Murdaca
9391a822ea daemon: honor default runtime when starting containers
If you created containers from pre-OCI docker (e.g. docker-1.10.x)
upgrade may fail when restarting containers if the new docker daemon
has `--default-runtime` set.

In Fedora, we ship docker 1.12.6 with:

```
--default-runtime=oci
--add-runtime oci=/usr/libexec/docker/docker-runc-current
```

That way we don't rely on `docker-runc` being in `$PATH`.

The issue is, on upgrade from docker 1.10.3 without this patch, the
default runtime in `daemon/start_linux.go` is unconditionally set to
`runc=docker-runc` without honoring the `--default-runtime` flag set in
the docker daemon.

Reproducer:

- (1.10.3) `docker run -d -p 5000:5000 --restart=always --name registry
registry:2`
- upgrade to docker 1.12.6 (1.11.x has likely the same issue)
- the registry container fails to restart on upgrade with the following
log message `error="exec: \"docker-runc\": executable file not
found in $PATH: \"\""`

That error comes from the fact that we're setting the runtime in the
container's HostConfig to `runc` where instead we should have honored
the `--default-runtime` flag (in our case that's set to `oci`).

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-01-12 20:36:22 +01:00
Tõnis Tiigi
27695cd751 Merge pull request #27903 from kim0/master
zfs: expose mountpoint/dataset on inspection
2017-01-12 11:28:07 -08:00
Kenfe-Mickael Laventure
5e28d20e63 Bump version to 1.12.6
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
(cherry picked from commit 94dfa20066)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 20:00:34 +01:00
Tibor Vass
2a202ea4aa Merge pull request #29466 from vieux/bump_1.12.5
bump to 1.12.5
(cherry picked from commit 7392c3b0ce)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:59:39 +01:00
Victor Vieux
650b381991 update changelog
Signed-off-by: Victor Vieux <vieux@docker.com>
(cherry picked from commit 0e5346df32)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:59:11 +01:00
Victor Vieux
ef39dad14a add networking fox to changelog
Signed-off-by: Victor Vieux <vieux@docker.com>
(cherry picked from commit f6fbe58fbe)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:59:02 +01:00
Victor Vieux
c8ece052c1 Merge pull request #29379 from vieux/1.12.5-rc1_bump
1.12.5-rc1 bump
(cherry picked from commit 02394deb34)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:58:50 +01:00
Victor Vieux
dee2748483 Merge pull request #29338 from vieux/bump_1.12.4_version
bump version to 1.12.4
(cherry picked from commit 1564f02e33)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:57:41 +01:00
Victor Vieux
603ea0682f update changelog
Signed-off-by: Victor Vieux <vieux@docker.com>
(cherry picked from commit 0d5bc84d06)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:56:29 +01:00
Victor Vieux
8dfd1919f5 Merge pull request #29204 from andrewhsu/changelog-date
[1.12.x] added date after version number in changelog
(cherry picked from commit 4a13581d57)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:56:01 +01:00
Victor Vieux
6c7a449aa5 Merge pull request #29187 from vieux/1.12.4-changelog
bump version and changelog for 1.12.4-rc1
(cherry picked from commit caa6b86f38)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-12 19:54:57 +01:00
Kenfe-Mickaël Laventure
f018c0dfff Merge pull request #30088 from tonistiigi/fifo-close-early
Close stdout/stderr fifo as soon as possible
2017-01-12 09:29:39 -08:00
Vincent Demeester
06e3812b6e Merge pull request #29485 from ericcurtin/remove-prompt-add-docker-group
Don't encourage adding user to docker group
2017-01-12 18:28:16 +01:00
Vincent Demeester
e880120fe2 Merge pull request #28500 from rhvgoyal/remove-unused-param
devmapper: get rid of unused device id argument in unregisterDevice()
2017-01-12 18:02:00 +01:00
Vincent Demeester
1d40e9cb18 Merge pull request #27928 from erikh/fix-docs
api/types/client.go: documentation fix for ImageImportSource
2017-01-12 17:36:36 +01:00
Yong Tang
d9451f1c8c Add test for image size for v1.12 and v1.13 clients against v1.13 daemon
This test checks to make sure both v1.12 and v1.13 client against v1.13 daemon get correct `Size` after the fix.

This test is related to 30027.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-12 08:12:39 -08:00
Vincent Demeester
9af5d7c340 Small cleanups on integration cli
- Join a few tests in one when it makes sense (reduce the number of
  container run and thus the overall time of the suites)
- Remove some duplication on several tests
- Remove some unused methods

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-12 16:57:59 +01:00
Kenfe-Mickael Laventure
be20dc15af Fix ImageSummary.Size value
The prune PR changed the meaning of the file to mean "space on disk
only unique to this image", this PR revert this change.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-01-12 07:49:22 -08:00
Boaz Shuster
8f282cdea5 Specify in which line the Dockerfile parser failed
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-01-12 17:45:45 +02:00
Brian Goff
bf71db7a12 Merge pull request #30010 from thaJeztah/master-revert-27146
Revert "Require continuation char to be last char in a line"
2017-01-12 09:17:08 -05:00
Yanqiang Miao
04b007873c Complete the options for 'docker plugin install'
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-01-12 20:10:23 +08:00
Sebastiaan van Stijn
af5323f958 Merge pull request #30077 from tonistiigi/fix-test-leaks
Fix leaked connections in integration tests
2017-01-12 11:35:02 +01:00
John Howard
e48937fb99 Merge pull request #30085 from swernli/skip_push_base
storeLayer.Parent should return describableStoreLayers
2017-01-11 23:37:50 -08:00
Tonis Tiigi
5a6184a535 Close stdout/stderr fifo as soon as possible
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-11 22:11:13 -08:00
Stefan J. Wernli
d14b7212ad storeLayer.Parent should return describableStoreLayers
When storeLayer.Parent returns the parent layer, it needs to use the same logic as Get where it wraps in a describablyStoreLayer if the layer is describable. Otherwise, on Windows, this can result in pushing the foreign layers, which is not supposed to be allowed.
This fixes https://github.com/docker/docker/issues/30080.

Signed-off-by: Stefan J. Wernli <swernli@microsoft.com>
2017-01-11 19:01:13 -08:00
Akihiro Suda
d9a4bba398 Merge pull request #30073 from albers/completion-swarm-join--availability
Add bash completion for `swarm join --availability`
2017-01-12 10:37:02 +09:00
Tibor Vass
640a5c1a38 Merge pull request #30079 from tonistiigi/debug-trusttest
Print daemon stacktrace when trust test times out
2017-01-11 17:06:33 -08:00
Tõnis Tiigi
acaf3cf870 Merge pull request #30065 from dnephin/fix-extends-error-message
Improve the error message for extends in stack deploy.
2017-01-11 15:27:01 -08:00
Tonis Tiigi
e533685d13 Print daemon stacktrace when trust test times out
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-11 15:14:36 -08:00
Tonis Tiigi
1e98fb5ad9 Fix leaked connections in integration tests
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-11 14:48:48 -08:00
Sebastiaan van Stijn
de54284bd7 Merge pull request #29891 from sanimej/libnvendor
vendorin libnetwork @f9fa6e0
2017-01-11 19:55:00 +01:00
Harald Albers
f487b268f9 Add bash completion for swarm join --availability
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-11 10:30:56 -08:00
Brian Goff
c38bb7a725 Merge pull request #30060 from xulike666/fix-typo
Fix typo in libcontainerd/client.go
2017-01-11 12:13:35 -05:00
Daniel Nephin
46422df490 Improve the error message for extends in stack deploy.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-11 11:57:24 -05:00
Sebastiaan van Stijn
66aba12df2 Merge pull request #24993 from yongtang/24596-swarm-join-with-drain
Allow swarm join with `--availability=drain`
2017-01-11 17:39:01 +01:00
Aaron.L.Xu
39a24019e3 fix typo in libcontainerd/client.go
Signed-off-by: Aaron.L.Xu <likexu@harmonycloud.cn>
2017-01-11 23:10:02 +08:00
Wang Xing
b9ab129554 Fix rename error when sid is empty
Signed-off-by: Wang Xing <hzwangxing@corp.netease.com>
2017-01-11 21:35:59 +08:00
Yong Tang
6ae709bf10 Return [] instead of null in case filterNetworks returns empty
This fix tries to address the issue raised in 29946 where
listing networks from API will return `null` if the result of
network filter is empty.

The reason for the issue was that inside the `filterNetworks()`,
the return value was initialized as `nil`:
```
 var typeNet []types.NetworkResource
```

This is inconsistent with other places where return value was
initialized with `[]`
```
displayNet := []types.NetworkResource{}
```

This fix addresses the issue by changing `typeNet` to `[]` as well.

This fix fixes 29946.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-11 01:56:11 -08:00
Vincent Demeester
24e9ac1575 Merge pull request #29206 from ripcurld0/doc_api_update
Specify content type in the build request
2017-01-11 08:41:39 +01:00
Tibor Vass
696ef7a19e Merge pull request #30014 from tiborvass/plugin-devices-redone-master
Plugins: Rename DeviceCreation to AllowAllDevices
2017-01-10 17:24:38 -08:00
Brian Goff
a02b1215c2 Merge pull request #30035 from aaronlehmann/vendor-swarmkit-62d835f
Update vendored swarmkit to 62d835f
2017-01-10 20:13:12 -05:00
Santhosh Manohar
d5e8d8e1cf Handle IPv6 enabling correctly in the tests
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-01-10 16:34:23 -08:00
Yong Tang
0f30c64444 Allow swarm init with --availability=drain
This fix adds a new flag `--availability` to `swarm join`.

Related documentation has been updated.

An integration test has been added.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-10 16:31:51 -08:00
Yong Tang
a8e7e37aa8 Allow swarm join with --availability=drain
This fix tries to address the issue raised in 24596 where it was not
possible to join as manager only (`--availability=drain`).

This fix adds a new flag `--availability` to `swarm join`.

Related documentation has been updated.

An integration test has been added.

NOTE: Additional pull request for swarmkit and engine-api will
be created separately.

This fix fixes 24596.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-10 16:31:51 -08:00
Tibor Vass
f265727bdf plugins: rename DeviceCreation to AllowAllDevices
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-01-10 13:50:30 -08:00
Santhosh Manohar
a0dcdcb95f vendorin libnetwork @d2edad309cc874e865b5ba4d6bd6b276c93451d3
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2017-01-10 13:50:16 -08:00
Aaron Lehmann
f31ed6cb5b Update vendored swarmkit to 62d835f
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-10 13:00:11 -08:00
Michael Crosby
518945b6bd Merge pull request #29967 from justincormack/gpg-include-keys
Do not use keyservers to fetch GPG keys for apt
2017-01-10 11:35:11 -08:00
Vincent Demeester
82dfa6563f Merge pull request #29787 from yongtang/29730-multiple-published-port
Fix issues of multiple published ports mapping to the same target port
2017-01-10 18:49:16 +01:00
Sebastiaan van Stijn
2209c9c948 Merge pull request #30021 from vdemeester/29994-followup
Few stack deploy network fixes
2017-01-10 16:40:51 +01:00
Sebastiaan van Stijn
e5058ff15c Merge pull request #29947 from vdemeester/integration-some-runCommandWithOutput-clean
[test-integration] clean some runCommandWithOutput
2017-01-10 15:56:42 +01:00
Dan Walsh
0c791c8e9f We need to fix labels if the user requests on volumes
Currently local volumes and other volumes that support SELinux do
not get labeled correctly.  This patch will allow a user to specify
:Z or :z when  mounting a volume and have it fix the label of the newly
created volume.

Signed-off-by: Dan Walsh <dwalsh@redhat.com>
2017-01-10 09:39:31 -05:00
Yong Tang
f3a274fa08 Update swarmkit to c97146840a26c9ce8023284d0e9c989586cc1857
This commit updates swarmkit to c97146840a26c9ce8023284d0e9c989586cc1857

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-10 03:46:42 -08:00
Vincent Demeester
3191f5809b Few stack deploy network fixes
- Make sure we use the correct network name for external ones.
- Make the default network overridable and only creates networks that
  are used by services — so that default network is only created if a
  service doesn't declare a network.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-10 10:29:09 +01:00
Yong Tang
cb59bd0c51 Fix issues of multiple published ports mapping to the same target port
This fix tries to address the issue raised in docker/docker-29730
where a service with multiple published ports mapping to the same target
port (e.g., `--publish 5000:80 --publish 5001:80`) can't be allocated.

The reason for the issue is that, `getPortConfigKey` is used for both
allocated ports and configured (may or may not be allocated) ports.
However, `getPortConfigKey` will not take into consideration the
`PublishedPort` field, which actually could be different for different
allocated ports.

This fix saves a map of `portKey:portNum:portState`,  instead of currently
used `portKey:portState` so that multiple published ports could be processed.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-10 00:46:18 -08:00
Vincent Demeester
9c96768eae Merge pull request #29564 from aaronlehmann/getter-types
plugingetter: Avoid all caps for constant declarations
2017-01-10 09:35:19 +01:00
Boaz Shuster
b1996728aa Update docs and code to use application/x-tar in the build API
At the "Build image from Dockerfile" section in the API docs
the Content-Type header is missing.
In addition, some parts in the code are still setting the
Content-Type header to application/tar while it was changed
to application/x-tar since 16th September 2015.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2017-01-10 06:40:06 +02:00
Sebastiaan van Stijn
c67550414b Revert "Require continuation char to be last char in a line"
This reverts commit 105bc63295,
which (although correct), resulted in a backward incompatible
change.

We can re-implement this in future, after this changes goes
through a deprecation cycle

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-10 00:41:03 +01:00
Sebastiaan van Stijn
8563492eef Merge pull request #30005 from dnephin/fix-stack-deploy-resources
Fix parsing resources from compose file for stack deploy.
2017-01-09 22:50:01 +01:00
Vincent Demeester
c0e679660f Merge pull request #30002 from Microsoft/jjh/registerdiffids
Windows: Remove dead code RegisterDiffIDs
2017-01-09 22:43:54 +01:00
Vincent Demeester
d6c8391bf6 Merge pull request #29918 from dongluochen/service_inspect_pretty
add port PublishMode to service inspect --pretty output
2017-01-09 22:43:41 +01:00
Sebastiaan van Stijn
cd82a31edb Merge pull request #29802 from thaJeztah/fix-secret-rm-consistency
Update order of '--secret-rm' and '--secret-add'
2017-01-09 21:34:05 +01:00
Sebastiaan van Stijn
38f766ae0e Merge pull request #29143 from vdemeester/node-cli-unit-tests
Add some unit tests to the node and swarm cli code
2017-01-09 20:52:23 +01:00
Vincent Demeester
fe9f5610c4 Merge pull request #29953 from williammartin/truncindex-iterate-lock
Fix non thread-safe Iteration around go-patricia
2017-01-09 20:23:35 +01:00
Daniel Nephin
e3f083530f Fix parsing resources from compose file for stack deploy.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-09 14:22:02 -05:00
Tõnis Tiigi
45e88e995a Merge pull request #30001 from runcom/fix-format
devmapper: fixup error formatting
2017-01-09 10:32:35 -08:00
Dong Chen
5470312d23 add port PublishMode to service inspect --pretty output
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2017-01-09 10:30:28 -08:00
Tibor Vass
3e298f46a2 Merge pull request #29955 from vieux/improve_secret_Create
remove -f on secret create and unify usage with other commands
2017-01-09 10:22:39 -08:00
Vincent Demeester
f151c297eb Add some unit tests to the node and swarm cli code
Start work on adding unit tests to our cli code in order to have to
write less costly integration test.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-09 18:30:15 +01:00
Sebastiaan van Stijn
f199fadc7a Merge pull request #29793 from thaJeztah/improve-run-usage-output
Improve usage output for docker run
2017-01-09 18:15:25 +01:00
William Martin
57dada5338 Fix non thread-safe Iteration around go-patricia
* Unlike other methods in truncindex, Iterate was not locking before
using the Trie, making it potentially race e.g. Delete could result in
setting a child to nil, while Iterate dereferenced that node
while walking the Trie.

Signed-off-by: Petar Petrov <pppepito86@gmail.com>
2017-01-09 17:06:50 +00:00
Sebastiaan van Stijn
f1fdbeca2a Merge pull request #29226 from yongtang/28535-prune-until-follow-up
Add `--filter until=<timestamp>` for `docker container/image prune`
2017-01-09 17:58:01 +01:00
John Howard
02ed83aee9 Windows: Remove dead code RegisterDiffIDs
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-09 08:56:34 -08:00
Alexander Morozov
9248351992 Merge pull request #29846 from thaJeztah/dont-create-init-path
do not create init-dir if not needed
2017-01-09 08:47:51 -08:00
Alexander Morozov
edcfb83b83 Merge pull request #29996 from thaJeztah/unfork-go-memdb
un-fork go-memdb
2017-01-09 08:01:06 -08:00
Antonio Murdaca
8bcbc6711f devmapper: fixup error formatting
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-01-09 16:58:09 +01:00
Vincent Demeester
4166801f60 Merge pull request #30000 from ralphtheninja/master
Attempts -> MaxAttempts in /services/create
2017-01-09 16:48:56 +01:00
Lars-Magnus Skog
778eeaea20 Attempts -> MaxAttempts in /services/create
Signed-off-by: Lars-Magnus Skog <ralphtheninja@riseup.net>
2017-01-09 16:04:34 +01:00
Sebastiaan van Stijn
f285d5b3e8 do not create init-dir if not needed
commit 56f77d5ade
added support for cpu-rt-period and cpu-rt-runtime,
but always initialized the cgroup path, even if not
used.

As a result, containers failed to start on a
read-only filesystem.

This patch only creates the cgroup path if
one of these options is set.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-09 15:28:51 +01:00
Brian Goff
d0053a34bc Merge pull request #29688 from tronicum/since-flag
explain since format and give examples
2017-01-09 09:27:30 -05:00
Sebastiaan van Stijn
5f057f6350 un-fork go-memdb
commit 9322636c89
temporarily switched to a fork of go-memdb, because
a pull request that was needed was not yet merged
upstream.

this pull request was merged, so we can un-fork
this dependency.

this change does not bump the dependency, and
only un-forks. bumping the dependency should
be done in a separate change, if needed.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-09 15:05:49 +01:00
Sebastiaan van Stijn
d4791c7b64 Merge pull request #29795 from vdemeester/integration-request-package
[test-integration] Add a new request package in integration-cli
2017-01-09 14:51:40 +01:00
Vincent Demeester
e8e4546bc3 Merge pull request #29874 from allencloud/fix-29872-volume-ls-filter
fix volume ls filter driver
2017-01-09 13:06:17 +01:00
Sebastiaan van Stijn
03d28f75b8 Merge pull request #29989 from yuexiao-wang/fix-url-alias
Fix incorrect alias and URL
2017-01-09 11:59:56 +01:00
yuexiao-wang
9c0b3e1650 Fix incorrect alias and URL
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-01-09 20:14:48 +08:00
Sebastiaan van Stijn
141e1b3eb6 Merge pull request #29985 from lixiaobing10051267/masterEvnfile
fix some typos in runconfig\opts\envfile_test.go
2017-01-09 11:43:31 +01:00
Vincent Demeester
f96180a0a8 Merge pull request #29931 from tonistiigi/test-swarm-errors
Add test for swarm error handling
2017-01-09 11:26:09 +01:00
Vincent Demeester
303b1d200a Update trustedCmd to be compatible with testutil/cmd
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-09 11:07:05 +01:00
lixiaobing10051267
58da4c1bab fix some typos in runconfig\opts\envfile_test.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-01-09 11:14:18 +08:00
Doug Davis
b532e15036 Merge pull request #29981 from allencloud/fix-nits-in-comments
fix nit in comments
2017-01-08 09:34:43 -05:00
allencloud
847de59934 fix nit in comments
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-08 21:32:30 +08:00
ttronicum
519c35889e explain since format and give examples
Signed-off-by: tronicum <tronicum@user.github.com>
2017-01-08 05:27:54 +01:00
Aaron Lehmann
7c62f58b27 Merge pull request #29963 from stevvooe/use-digest-package
*: use opencontainers/go-digest package
2017-01-07 09:22:50 -08:00
Justin Cormack
91b42cf842 Do not use keyservers to fetch GPG keys for apt
The keyserver infrastructure is unreliable, and just adds another point
of failure without adding any security. Instead, commit the key used at
build time for ZFS to the repo, and inline our signing key into the
install script rather than just its fingerprint.

fix #28510
fix #13555

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2017-01-07 12:06:52 +00:00
Stephen J Day
083ad52f60 vendor: update dependencies for go-digest
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-01-06 18:48:52 -08:00
Stephen J Day
7a85579917 *: use opencontainers/go-digest package
The `digest` data type, used throughout docker for image verification
and identity, has been broken out into `opencontainers/go-digest`. This
PR updates the dependencies and moves uses over to the new type.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2017-01-06 18:48:41 -08:00
Tibor Vass
c43bac064b Merge pull request #29917 from rhvgoyal/output-device-id
devmapper: Return device id in error message
2017-01-06 17:36:18 -08:00
Alexander Morozov
fad6db4465 Merge pull request #29927 from aaronlehmann/vendor-swarmkit-2e956c4
Revendor swarmkit to 2e956c4
2017-01-06 17:09:21 -08:00
Doug Davis
ce814b2019 Merge pull request #29956 from tonistiigi/fix-workdir-cache
Fix workdir cache invalidation
2017-01-06 19:40:53 -05:00
Victor Vieux
db6652ca71 remove -f on secret create and unify usage with other commands
Signed-off-by: Victor Vieux <vieux@docker.com>
2017-01-06 14:07:48 -08:00
Tibor Vass
6d77c02240 Merge pull request #29949 from albers/fix-changelog-create-service
Fix wrong command in changelog
2017-01-06 13:30:00 -08:00
Brian Goff
ec9a05e5e2 Fix conflicts with newly updated selinux policies
The base selinux policies on centos/rhel/oraclelinux have all been
updated in a way that conflicts with the policies we install with
`docker-engine-selinux`. This patch fixes these conflicts.

In addition, removes special cases for old/unsupported versions of
fedora in our selinux package, and change to use a single minimum
version for the selinux base policy package, as this is the minimum
version required to use our selinux policy package.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-06 16:04:24 -05:00
Tonis Tiigi
e160860054 Fix workdir cache invalidation
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-06 12:10:59 -08:00
Akihiro Suda
2e3a621523 Merge pull request #29893 from cpuguy83/fix_race_in_plugin_activation
Fix race accessing plugin storage map
2017-01-07 04:48:41 +09:00
Ryan Abrams
7b9ecb9700 Add on-failure to default restart policy
In the event that the docker daemon is managed by systemd and spontaneously
dies the default service configuration does not have docker restart. For people
who just want to install and start docker then never worry about whether docker
is running a better default may be to restart the service on a failure.

Signed-off-by: Ryan Abrams <rdabrams@gmail.com>
2017-01-06 10:23:44 -08:00
Vincent Demeester
ee9bb347a6 Merge pull request #29741 from yuexiao-wang/update-option
keep network options consistent between network connect and run
2017-01-06 19:01:48 +01:00
Sebastiaan van Stijn
fc9d74136b Merge pull request #29841 from wefine/docker_image_tag_input_check
check both source_image_tag and target_image_tag for 'docker image tag'
2017-01-06 17:58:58 +01:00
wefine
a041697cab check both source_image_tag and target_image_tag for 'docker image tag'
Signed-off-by: wefine <wang.xiaoren@zte.com.cn>
2017-01-07 04:55:53 +08:00
Sebastiaan van Stijn
b7c2531779 Merge pull request #29899 from Microsoft/jjh/testbuildworkdirimagecmd
Windows: Enable TestBuildWorkdirImageCmd
2017-01-06 17:15:22 +01:00
Harald Albers
1fe0270e72 Fix wrong command in changelog
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-06 07:45:09 -08:00
Sebastiaan van Stijn
ec215d4860 Merge pull request #29934 from lixiaobing10051267/masterTop
Provide correct command information and URL
2017-01-06 15:02:34 +01:00
Sebastiaan van Stijn
1df474a311 Merge pull request #29935 from yuexiao-wang/fix-return
Remove redundant return nil
2017-01-06 13:59:44 +01:00
yuexiao-wang
9788822421 Remove redundant return nil
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-01-06 22:18:10 +08:00
Akihiro Suda
bf8cdb9172 Merge pull request #29929 from aaronlehmann/secret-test-fix
Fix TestSecretCreateWithLabels nondeterminism
2017-01-06 13:47:08 +09:00
Brian Goff
21fcbb39b7 Fix race accessing plugin storage map
`plugins.GetAll()` was not locking the plugin map when checking if a
plugin exists, this can cause a race and potentially a panic if another
goroutine is trying to load a plugin into the map at the same time.

Also fixes a race during activation where a plugin inserts itself into
the plugin map but does not check if something else is already there.
This is already checked before trying to activate the plugin, however
the map lock is not held for this entire period, so other plugins may be
loaded during this time.
To fix, before inserting the plugin into the map, check if one with the
same name already exists and use that instead.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-05 22:40:45 -05:00
lixiaobing10051267
d8e6241989 Provide correct command imformation and URL
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-01-06 11:02:02 +08:00
Brian Goff
9c3955aae1 Merge pull request #29923 from tonistiigi/plugin-names
Set plugins used in tests back to original names
2017-01-05 21:41:39 -05:00
Sebastiaan van Stijn
5259d76393 Merge pull request #29924 from aaronlehmann/logrus-vendor
vendor: Unfork logrus dependency
2017-01-06 02:10:22 +01:00
Tonis Tiigi
d377b074fd Add test for swarm error handling
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-05 15:46:07 -08:00
Aaron Lehmann
45833ce54d Fix TestSecretCreateWithLabels nondeterminism
This test checks for the substring "foo" in the "secret ls" output. This
is a valid base36 substring and can sometimes show up by chance:

    docker_cli_secret_create_test.go:86:
        c.Assert(out, checker.Not(checker.Contains), name)
    ... obtained string = "" +
    ...     "ID                          NAME                        CREATED UPDATED\n" +
    ...     "ob8y4t4feuz8pn5h6vla9oxoz   stefoo7e268ozqfupi9s4se9q   Less than a second ago   Less than a second ago\n"
    ... substring string = "foo"

Change the secret name to test_secret, matching other tests. Underscores
can't appear in base36 so this name is safe to grep for.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-05 15:22:51 -08:00
Aaron Lehmann
b1f5320dd6 Revendor swarmkit to 2e956c4
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-05 14:55:52 -08:00
Victor Vieux
1b2786c2c2 Merge pull request #29920 from jeveleth/patch-1
Fixes minor typo
2017-01-05 14:37:00 -08:00
Aaron Lehmann
11df2db538 vendor: Unfork logrus dependency
Vendor the latest official logrus release instead of a custom fork
(which now happens to be identical to the fork).

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-05 14:19:08 -08:00
Tonis Tiigi
f4798b98fc Set plugins used in tests back to original names
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-05 13:55:43 -08:00
Tibor Vass
40afb853d7 Merge pull request #29845 from vdemeester/fix-the-fix-facepalming-myself
[test-integration] Should check for output, not error in deleteContainer
2017-01-05 13:26:39 -08:00
Josh Eveleth
eee0cfa45d Fix minor typo
Signed-off-by: Josh Eveleth <joshe@opendns.com>
2017-01-05 12:45:56 -08:00
Vivek Goyal
39bdf601f6 devmapper: Return device id in error message
I often get complains that container removal failed and users got following
error message.

"Driver devicemapper failed to remove root filesystem 18a69ba82aaf7a039ce7d44156215012d703001643079775190ac7dd6c6acf56:Device is Busy"

This error message talks about container id but does not give any info
about which particular device id is busy. Most likely device is mounted
in some other mount namespace and if one knows the device id, they
can try to do some debugging figuring which process and which mount
namespace is keeping the device busy and how did we reach that stage.

Without that information, it becomes almost impossible to debug the
problem.

So to improve the debuggability, when device removal fails, also return
device id in error message. Now new message looks as follows.

"Driver devicemapper failed to remove root filesystem 18a69ba82aaf7a039ce7d44156215012d703001643079775190ac7dd6c6acf56: Failed to remove device dbc15bdf9994a17c613d8ef9e924f3cffbf67f91e4f709295c901ad628377991:Device is Busy"

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2017-01-05 15:02:21 -05:00
Vincent Demeester
87e3fcfe1e Clean some runCommandWithOutput accross integration-cli code
There is still ways to go

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-05 17:44:31 +01:00
allencloud
ffc79bd1b0 update events related doc and swagger.yml
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-05 21:40:21 +08:00
Yong Tang
b36e613d9f Run btrfs rescan only if userDiskQuota is enabled
This fix tries to address the issue raised in 29810
where btrfs subvolume removal failed when docker
is in an unprivileged lxc container. The failure
was caused by `Failed to rescan btrfs quota` with
`operation not permitted`.

However, if disk quota is not enabled, there is no
need to run a btrfs rescan at the first place.

This fix checks for `quotaEnabled` and only run btrfs
rescan if `quotaEnabled` is true.

This fix fixes 29810.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-05 05:18:11 -08:00
Akihiro Suda
766e53d8cb Merge pull request #29908 from lixiaobing10051267/masterExpectedErr
optimize Fatalf with the expectedError
2017-01-05 18:05:08 +09:00
Vincent Demeester
1dad4cf30c Merge pull request #29888 from albers/completion-plugin-names
Add bash completion for plugin names
2017-01-05 09:54:17 +01:00
Vincent Demeester
7ad34996bc Merge pull request #29903 from Microsoft/jjh/volumetest-tp5
Windows: Fix TP5 volume unit tests TODOs
2017-01-05 09:53:31 +01:00
Vincent Demeester
ec6d322d37 Merge pull request #29739 from tonistiigi/add-restart-liverestore-test
Add test TestRestartPolicyWithLiveRestore
2017-01-05 09:39:07 +01:00
Vincent Demeester
6b49da6edb Merge pull request #29907 from YunxiangHuang/fix_zsh_docker
Fix completion for zsh
2017-01-05 09:34:39 +01:00
lixiaobing10051267
6305817184 optimize Fatalf with the expectedError
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2017-01-05 14:47:36 +08:00
Akihiro Suda
10eee3dfa7 Merge pull request #29892 from Microsoft/jjh/volcomment
Correct comment in vol driver interface
2017-01-05 13:11:34 +09:00
Yunxiang Huang
c6544394b8 Fix "zsh/_docker"
Signed-off-by: Yunxiang Huang <hyxqshk@vip.qq.com>
2017-01-05 11:13:17 +08:00
John Howard
cc3e59c44e Windows: Fix old TP5 volume unit tests
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-04 16:17:55 -08:00
John Howard
528a5fd2ba Windows: Enable TestBuildWorkdirImageCmd
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-04 15:33:40 -08:00
Yong Tang
0ad02c6108 Add .CreatedAt placeholder for docker network ls --format
This fix tries to add a placeholder `.CreatedAt` for Go
format template in `docker network ls --format`.

While working on 29226, I noticed that it is not possible to
display network's creation time in `docker network ls`, with or
without `--format`.

We are able to find the timestamp through `docker network inspect` though.

However, as we allows networks to be pruned based on the timestamp
(see 29226), showing the timestamp in `docker network ls --format`
would be much useful now.

This fix adds the `.CreatedAt` placeholder for `docker network ls --format`.
The default output was not changed for `docker network ls --format`.

A test case for unit tests has been added.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-04 15:18:44 -08:00
Tibor Vass
4617b66c90 Merge pull request #29877 from mavenugo/npfilter
Use GetAllByCap to get list of network plugins in docker info
2017-01-04 14:57:20 -08:00
Yong Tang
58738cdee3 Add --filter until=<timestamp> for docker container/image prune
This fix is a follow up for comment
https://github.com/docker/docker/pull/28535#issuecomment-263215225

This fix provides `--filter until=<timestamp>` for `docker container/image prune`.

This fix adds `--filter until=<timestamp>` to `docker container/image prune`
so that it is possible to specify a timestamp and prune those containers/images
that are earlier than the timestamp.

Related docs has been updated

Several integration tests have been added to cover changes.

This fix fixes #28497.

This fix is related to #28535.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-01-04 14:16:42 -08:00
Tonis Tiigi
89f034093a Add test TestRestartPolicyWithLiveRestore
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-01-04 14:12:49 -08:00
Brian Goff
4bd4d18e11 Use vol plugin creator instead of inserting spec
This makes the test a bit more robust to change and is a bit cleaner.
As implemented before this commit, we have two named plugins pointing to
the same http service. If the daemon makes any unexpected calls to the
plugin (e.g. during startup) we'll get more counts on the event counter
than expected since the daemon sees 2 plugins.

Found this while working on #29877 which broke this test originally (but
is no longer using V1 plugins, so is this is no longer broken there) and
took some time to debug what was going on.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-04 15:51:49 -05:00
Madhu Venugopal
6aaa85f0b0 Swarmkit has enabled the plugin filtering logic based on the drivers
returned in "docker info". Currently info endpoint isnt using the
GetAllByCap, but relies on existing networks to get the plugin names.
This causes a basic issue when it comes to global network plugins which
swarm-mode relies on, wherein swarmkit will not be able to schedule the
network on the worker nodes due to the filtering logic.

In order to break this chicken & egg issue, we must start to use the
GetAllManagedPluginsByCap. We are unable to use GetAllByCap due to
various issues with Plugin-V1's lazy loading approach causing issues
especially during daemon restarts (which uses SystemInfo)

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2017-01-04 12:38:14 -08:00
John Howard
c2246f28f6 Correct comment in vol driver interface
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-04 12:06:37 -08:00
Victor Vieux
bcf70b309b Merge pull request #29889 from vieux/small_secret_doc_update
small secret doc update
2017-01-04 11:27:11 -08:00
Sebastiaan van Stijn
f0a13eb620 Merge pull request #29867 from Microsoft/jjh/isolationwording
Docs: Tidy --isolation wording
2017-01-04 19:32:49 +01:00
Aaron Lehmann
428600108c plugingetter: Avoid all caps for constant declarations
Go style calls for mixed caps instead of all caps:
https://golang.org/doc/effective_go.html#mixed-caps

Change LOOKUP, ACQUIRE, and RELEASE to Lookup, Acquire, and Release.

This vendors a fork of libnetwork for now, to deal with a cyclic
dependency issue. The change will be upstream to libnetwork once this is
merged.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-01-04 10:19:04 -08:00
Harald Albers
e7243a303a Add bash completion for plugin names
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-04 09:53:14 -08:00
Vincent Demeester
835971c6fd Extract daemon statsCollector to its own package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-04 18:18:30 +01:00
John Howard
3c32916141 Tidy --isolation wording
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-04 09:14:10 -08:00
allencloud
0fdab49610 fix volume ls filter driver
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-04 23:29:12 +08:00
Vincent Demeester
03c17ab66a Merge pull request #29861 from Microsoft/jjh/tidywinkv
Tidy kernel version in tests
2017-01-04 15:48:20 +01:00
Sebastiaan van Stijn
d3f30d6a67 Merge pull request #29650 from allencloud/support-registry-mirror-config-reload
support registry mirror config reload
2017-01-04 13:46:19 +01:00
yuexiao-wang
4f9b076e8e keep network option consistent between network connect and run
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-01-04 19:54:03 +08:00
Vincent Demeester
6129e6ce3e Merge pull request #29697 from yuexiao-wang/fix-docker-daemon
Update docker daemon to dockerd
2017-01-04 11:55:38 +01:00
Vincent Demeester
b029d3dee3 Should check for output, not error in deleteContainer
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-04 11:15:36 +01:00
Victor Vieux
91b739b552 small secret doc update
Signed-off-by: Victor Vieux <vieux@docker.com>
2017-01-03 23:13:31 -08:00
allencloud
5b9348c553 support registry mirror config reload
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-04 11:04:00 +08:00
Victor Vieux
355f2ae972 Merge pull request #29431 from vieux/update_plugin_examples
replace no-remove by sample-volume-plugin in docs
2017-01-03 18:05:44 -08:00
Tibor Vass
48ed4f0639 Merge pull request #29733 from cpuguy83/fix_v1plugin_deadlock
Fix race/deadlock in v1 plugin handlers
2017-01-03 17:02:15 -08:00
Victor Vieux
bcead9282e replace no-remove by sample-volume-plugin in docs
Signed-off-by: Victor Vieux <vieux@docker.com>
2017-01-03 16:03:48 -08:00
Victor Vieux
8e64ca31f2 Merge pull request #29862 from dnephin/strip-quotes-from-args
Trim quotes from tls flag values
2017-01-03 15:21:19 -08:00
Akihiro Suda
59f6f6bc01 Merge pull request #29852 from thaJeztah/bump-go-units
bump go-units to e30f1e79f3cd72542f2026ceec18d3bd67ab859c
2017-01-04 07:54:45 +09:00
John Howard
d45c652e83 Windows to Linux build warning to stdout
Signed-off-by: John Howard <jhoward@microsoft.com>

When building a Dockerfile from a Windows client on a Linux daemon, a
"security warning" is printed
on stderr. Having this warning printed on stderr makes it difficult to
distinguish a failed build from one that's succeeding, and the only way to
suppress the warning is through the -q option, which also suppresses every
output. This change prints the warning on stdout, instead of stderr, to
resolve this situation.
2017-01-03 14:07:50 -08:00
Tibor Vass
ef9935ce8f Merge pull request #29789 from miaoyq/optimization-error-description
Optimization a error description
2017-01-03 13:01:22 -08:00
Daniel Nephin
abe32de6b4 Trim quotes from TLS flags.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 15:58:41 -05:00
John Howard
b06692b1a9 Tidy kernel version in tests
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-01-03 12:47:25 -08:00
Timothy Hobbs
b71b4e1fb9 Docs: Be more clear when specifying valid formats for strings
- Use the word letter rather than character to refer to letters ;) when trying to specify that only letters and numbers can be used, and not ANY character...
- Small corrections

Fixes #29821

Signed-off-by: Timothy Hobbs <timothy@hobbs.cz>
2017-01-03 21:40:50 +01:00
Daniel Nephin
e4c1f07729 Add quoted string flag Value.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 15:09:54 -05:00
Victor Vieux
2ef6d80454 Merge pull request #29556 from mavenugo/refcount
Fixing a couple of network plugin life-cycle mgmt issues
2017-01-03 11:13:22 -08:00
Vincent Demeester
be1df1ee13 Extract the daemon image cache to its own package
ImageCache is now independent of `Daemon` and is located in
`image/cache` package.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-03 19:19:27 +01:00
Vincent Demeester
d1ef47b410 Merge pull request #29843 from YuPengZTE/devVet
fix syscall.GUID composite literal uses unkeyed fields
2017-01-03 19:12:32 +01:00
Sebastiaan van Stijn
0e16b5cb3a bump go-units to e30f1e79f3cd72542f2026ceec18d3bd67ab859c
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-03 18:43:25 +01:00
Sebastiaan van Stijn
e4223e3361 Merge pull request #26830 from dnephin/man-desc-in-files
Move the command description to a markdown file for man pages
2017-01-03 17:47:49 +01:00
Daniel Nephin
17f9f5abf4 Set expected response headers for Ping.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 11:47:47 -05:00
Daniel Nephin
16bdbaaa33 Convert ContainerTopOKResponse from swagger spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 11:47:47 -05:00
Daniel Nephin
8d5f558de0 Generate GraphDriver from spec, and fix up image spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 11:47:47 -05:00
Daniel Nephin
5988b84e4f Generate ImageDeleteResponse from swagger spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 11:47:47 -05:00
Daniel Nephin
b462c93edb Generate ImageHistory from swagger spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 11:47:44 -05:00
Sebastiaan van Stijn
d6e5032410 Merge pull request #29847 from albers/completion-service-ps-multiple
Support multiple services on bash completion for `docker service ps`
2017-01-03 17:13:07 +01:00
Vincent Demeester
074f6bbe89 Merge pull request #29776 from allencloud/better-plugin-in-docs
update plugins in docs and correct things in index.md
2017-01-03 17:01:56 +01:00
Daniel Nephin
b83d9bf6a9 Generate ContainerChanges from swagger spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-03 09:35:40 -05:00
allencloud
6d3e1d2fd2 update plugins in docs and correct things in index.md
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-01-03 22:34:32 +08:00
Harald Albers
3f5d11c9bf Support multiple services on bash completion for docker service ps
Signed-off-by: Harald Albers <github@albersweb.de>
2017-01-03 05:58:13 -08:00
Vincent Demeester
884a1c2263 Merge pull request #29837 from miaoyq/remove-extra-if-statement
Remove the redundant 'if' statements
2017-01-03 12:42:19 +01:00
Vincent Demeester
18265591c2 Merge pull request #25234 from yongtang/25228-service-ps-multiple-ID
Support multiple service IDs on "docker service ps"
2017-01-03 12:40:24 +01:00
Vincent Demeester
d69d4799a3 Add a new request package in integration-cli
The goal is to remove function from `docker_utils.go` and setup
simple, one-responsability package that can be well tested ; and to
ease writing request.

This moves all the calls to `sockRequest` (and similar methods) to
their counterpart in the `request` package.

This introduce `request.Do` to write easier request (with functional
argument to easily augment the request) with some pre-defined function
for the most used http method (i.e. `request.Get`, `request.Post` and
`request.Delete`).

Few of the `sockRequest` call have been moved to `request.Do` (and
`Get`, etc.) to showcase the usage of the package. There is still a
whole lot to do.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-03 11:49:30 +01:00
Vincent Demeester
de709ebfd8 Merge pull request #29827 from vdemeester/integration-fixes-for-userns
Updates some integration tests to fix userns builds
2017-01-03 11:47:39 +01:00
Sebastiaan van Stijn
275d68ab39 Merge pull request #29828 from vdemeester/integration-deleteContainer-ignore-notfound
Do not fail in `TearDown` if container not found when removing
2017-01-03 11:35:07 +01:00
Vincent Demeester
1a6436510a Merge pull request #29791 from yuexiao-wang/add-secret-stack
Update reference document for secret and stack
2017-01-03 10:54:28 +01:00
yuexiao-wang
7bb31f3168 Update reference document for secret and stack
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2017-01-04 01:39:45 +08:00
yupengzte
230b7c2e4c fix syscall.GUID composite literal uses unkeyed fields
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-01-03 17:12:15 +08:00
Vincent Demeester
2fd995bc99 Merge pull request #29773 from forever043/fix_TestDaemonStartWithoutColors
test: Fix "--raw-logs=true" option test in TestDaemonStartWithoutColors
2017-01-03 09:29:19 +01:00
Yanqiang Miao
98c0369437 Remove the redundant 'if' statements
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2017-01-03 11:31:41 +08:00
Vincent Demeester
636d6ee57c Do not fail in TearDown if container not found when removing
If the container is not found when removing, it means it's already not
there anymore, so it's safe to ignore. This should reduce a bit some
`TearDown` flakyness..

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-02 22:14:24 +01:00
Vincent Demeester
173ce768d6 Merge pull request #29822 from thaJeztah/fix-minor-typo
fix "retreive" typo in plugin store
2017-01-02 21:30:29 +01:00
Vincent Demeester
187592583c Merge pull request #29806 from albers/fix-plugin-inspect-usage
Fix usage message of `plugin inspect`
2017-01-02 19:30:24 +01:00
Vincent Demeester
bc19388fb2 Updates some integration tests to fix userns builds
- `TestRunMountReadOnlyDevShm` and `TestRunHostnameInHostMode` needs
  `NotUserNamespace` requirement as these are known limitation of
  userns.
- `TestBuildWorkdirCmd` should use a preload image (`busybox`) instead
  of one that require network access.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-02 19:13:26 +01:00
Sebastiaan van Stijn
8a3ede3d5d Merge pull request #29818 from vdemeester/remove-cli-service-deadcode
Remove deadcode from `service/opts.go` : `SecretOpt`
2017-01-02 18:01:10 +01:00
Brian Goff
95a52ef687 Merge pull request #29783 from sanimej/check-config
Update check-config.sh to include modules for FTP/TFTP
2017-01-02 10:24:40 -05:00
Sebastiaan van Stijn
ed689c48b0 Merge pull request #29799 from vdemeester/integration-registry-package
[test-integration] Add a registry package with registry v1/v2 code
2017-01-02 15:37:09 +01:00
Sebastiaan van Stijn
03bf37884d fix "retreive" typo in plugin store
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-01-02 15:01:19 +01:00
Sebastiaan van Stijn
86f962a4a8 Merge pull request #29808 from jmzwcn/issue29796
API: Delete container can return 409, but that isn't documented.
2017-01-02 14:41:03 +01:00
Akihiro Suda
3cd445cda4 Merge pull request #29797 from vdemeester/remove-pkg-integration
Remove pkg/integration and move it to testutil or integration-cli
2017-01-02 19:31:38 +09:00
Vincent Demeester
84cb2d100b Remove deadcode from service/opts.go, SecretOpt
`SecretOpt` is in the `opts` package, this one is never used, so it's
dead code, removing it 👼.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-02 11:19:33 +01:00
Vincent Demeester
4300e5e881 Add a registry package with registry v1/v2 code
This extract what was in registry_test.go and
registry_mock_test.go. This also move `RegistryHosting`
requirement to `registry.Hosting`

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-02 11:03:53 +01:00
Vincent Demeester
314ae90243 Merge pull request #29805 from albers/completion-plugin-enable
Fix bash completion for `plugin enable|disable`
2017-01-01 17:54:43 +01:00
Daniel Zhang
c0cf14a73c API: Delete container can return 409, but that isn't documented. #29796
Signed-off-by: Daniel Zhang <jmzwcn@gmail.com>
2017-01-01 16:01:56 +08:00
Harald Albers
1b58d0bc51 Fix usage message of plugin inspect
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-31 09:55:04 -08:00
Harald Albers
e1403453f0 Add bash completion for plugin disable --force
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-31 09:28:03 -08:00
Harald Albers
390effdd11 Fix bash completion for plugin enable|disable
`docker plugin enable` and `docker plugin disable` only
accept one plugin.

Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-31 09:23:46 -08:00
Sebastiaan van Stijn
997777ae92 Merge pull request #29803 from thaJeztah/document-hide-legacy-commands
document DOCKER_HIDE_LEGACY_COMMANDS env-var
2016-12-31 14:59:11 +01:00
Sebastiaan van Stijn
e91953407c Update order of '--secret-rm' and '--secret-add'
When using both `--secret-rm` and `--secret-add` on `docker service update`,
`--secret-rm` was always performed last. This made it impossible to update
a secret that was already in use on a service (for example, to change
it's permissions, or mount-location inside the container).

This patch changes the order in which `rm` and `add` are performed,
allowing updating a secret in a single `docker service update`.

Before this change, the `rm` was always performed "last", so the secret
was always removed:

    $ echo "foo" | docker secret create foo -f -
    foo

    $ docker service create --name myservice --secret foo nginx:alpine
    62xjcr9sr0c2hvepdzqrn3ssn

    $ docker service update --secret-rm foo --secret-add source=foo,target=foo2 myservice
    myservice

    $ docker service inspect --format '{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}' myservice | jq .
    null

After this change, the `rm` is performed _first_, allowing users to
update a secret without updating the service _twice_;

    $ echo "foo" | docker secret create foo -f -
    1bllmvw3a1yaq3eixqw3f7bjl

    $ docker service create --name myservice --secret foo nginx:alpine
    lr6s3uoggli1x0hab78glpcxo

    $ docker service update --secret-rm foo --secret-add source=foo,target=foo2 myservice
    myservice

    $ docker service inspect --format '{{ json .Spec.TaskTemplate.ContainerSpec.Secrets }}' myservice | jq .

    [
      {
        "File": {
          "Name": "foo2",
          "UID": "0",
          "GID": "0",
          "Mode": 292
        },
        "SecretID": "tn9qiblgnuuut11eufquw5dev",
        "SecretName": "foo"
      }
    ]

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-31 14:55:29 +01:00
Sebastiaan van Stijn
2ef82fd237 document DOCKER_HIDE_LEGACY_COMMANDS env-var
The `DOCKER_HIDE_LEGACY_COMMANDS` environment
variable was added in a7c8bcac2b
but not documented.

This adds the variable to the documentation.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-31 14:17:34 +01:00
Madhu Venugopal
0510afc883 Properly cleanup plugin states which might impact other tests
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-30 12:28:22 -08:00
Madhu Venugopal
fc2c0e623d Handle Plugin reference count during network create and delete
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-30 12:28:22 -08:00
Madhu Venugopal
d2079a7789 Vendoring libnetwork to bring in isbuiltin changes
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-30 12:26:40 -08:00
Vincent Demeester
33968e6c7d Remove pkg/integration and move it to testutil or integration-cli
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-30 18:26:34 +01:00
Sebastiaan van Stijn
847ccd4867 Improve usage output for docker run
Commit a77f2450c7 switched `docker run`
to use the `pflags` package. Due to this change, the usage output for
the `--blkio-weight-device` and `--device-*` flags changed and now
showed `weighted-device`, and `throttled-device` as value type. As a
result, the output of `docker run --help` became a lot wider.

This patch changes the output to show `list` instead, which is
consistent with other options that allow to be set multiple times.

Output before this change;

    Usage:	docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

    Run a command in a new container

    Options:
          --blkio-weight uint16                   Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
          --blkio-weight-device weighted-device   Block IO weight (relative device weight) (default [])
          --device list                           Add a host device to the container (default [])
          --device-read-bps throttled-device      Limit read rate (bytes per second) from a device (default [])
          --device-read-iops throttled-device     Limit read rate (IO per second) from a device (default [])
          --device-write-bps throttled-device     Limit write rate (bytes per second) to a device (default [])
          --device-write-iops throttled-device    Limit write rate (IO per second) to a device (default [])
      -w, --workdir string                        Working directory inside the container

Output after this change;

    Usage:	docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

    Run a command in a new container

    Options:
          --blkio-weight uint16         Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
          --blkio-weight-device list    Block IO weight (relative device weight) (default [])
          --device list                 Add a host device to the container (default [])
          --device-read-bps list        Limit read rate (bytes per second) from a device (default [])
          --device-read-iops list       Limit read rate (IO per second) from a device (default [])
          --device-write-bps list       Limit write rate (bytes per second) to a device (default [])
          --device-write-iops list      Limit write rate (IO per second) to a device (default [])
      -w, --workdir string              Working directory inside the container

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-30 17:35:46 +01:00
Vincent Demeester
5374d53322 Merge pull request #29774 from miaoyq/complete-plugin-create-docs-content
Complete the document content
2016-12-30 11:15:16 +01:00
majiuyue 00385406
c9e0d923ae test: Fix "--raw-logs=true" option test in TestDaemonStartWithoutColors
Because "tty" is closed in s.d.Stop() for "--raw-logs=false" test,
we need to open another pair of pty before test "--raw-logs=true"
option.

This patch fix #29772.

Signed-off-by: Jiuyue Ma <majiuyue@huawei.com>
2016-12-30 17:26:01 +08:00
Yanqiang Miao
6c021893aa Optimization a error description
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-12-30 11:58:39 +08:00
Yanqiang Miao
1ebb68053e Complete the document content
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-12-30 08:47:08 +08:00
Sebastiaan van Stijn
a331056268 Merge pull request #28852 from miaoyq/rename-log-context
Rename 'context' to 'loginfo' in the logger module
2016-12-30 01:13:49 +01:00
Sebastiaan van Stijn
d6be0e9802 Merge pull request #28631 from likel/master
Don't do format if it's unnecessary
2016-12-30 01:13:12 +01:00
Sebastiaan van Stijn
36ed7d58bb Merge pull request #29721 from coolljt0725/follow_29365
Follow up #29365, fix fail to remove container after restart
2016-12-30 00:13:13 +01:00
Tõnis Tiigi
edaa3c6f07 Merge pull request #29609 from dnephin/add-compose-file-package
Replace the vendored aanand/compose-file with a local copy
2016-12-29 15:12:59 -08:00
Tõnis Tiigi
aacc2c8880 Merge pull request #29624 from yongtang/29619-build-label-order
Sort the labels passed from `build --labels`
2016-12-29 15:09:53 -08:00
Sebastiaan van Stijn
a247bf0e99 Merge pull request #29661 from vdemeester/integration-cli-test-environment
[integration-test] Introduce an environment package
2016-12-29 22:12:42 +01:00
Santhosh Manohar
e475136208 Update check-config.sh to include modules for FTP/TFTP
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-12-29 13:04:36 -08:00
Brian Goff
11b11e1559 Merge pull request #29769 from duglin/FixWinTest
Fix flaky windows TestRestartRunningContainer test
2016-12-29 15:48:43 -05:00
Sebastiaan van Stijn
1dd9410776 Merge pull request #29683 from vdemeester/runconfig-clean
Clean some stuff from runconfig that are cli only…
2016-12-29 17:42:08 +01:00
Sebastiaan van Stijn
156ee50834 Merge pull request #29770 from allencloud/fail-fast-when-filter-invlaid
fail fast when network filter invalid
2016-12-29 17:38:08 +01:00
Doug Davis
bae22d167c Fix flaky windows TestRestartRunningContainer test
I was seeing this for windowsRS1 testing:
17:20:36 ----------------------------------------------------------------------
17:20:36 FAIL: docker_cli_restart_test.go:31: DockerSuite.TestRestartRunningContainer
17:20:36
17:20:36 docker_cli_restart_test.go:39:
17:20:36     c.Assert(out, checker.Equals, "foobar\n")
17:20:36 ... obtained string = ""
17:20:36 ... expected string = "foobar\n"
17:20:36
17:20:59
17:20:59 ----------------------------------------------------------------------

and I think its because there's a delay between the time the container is
started and the 'echo' is actually run. This gives it up to 10 seconds
to do the 'echo' before giving up.

/cc @jhowardmsft

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-12-29 08:13:43 -08:00
Vincent Demeester
83cecf820a Merge pull request #29517 from thaJeztah/update-criu
Update criu to 2.9
2016-12-29 16:20:59 +01:00
Sebastiaan van Stijn
00cdb97f0d Merge pull request #29222 from yongtang/28789-plugin-inspect-follow-up
Allow ID-based `docker plugin enable/disable/rm/set`
2016-12-29 13:40:40 +01:00
Yanqiang Miao
17ec911da7 Rename 'context' to 'loginfo' in the logger module
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

gofmt

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

remove 'api/types/container/config.go' from this PR

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

change 'LogInfo' to 'Info'

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-12-29 19:13:44 +08:00
Sebastiaan van Stijn
d2b27c10a1 Merge pull request #29740 from lixiaobing10051267/masterGraph2
update URL of plugins_graphdriver.md in experimental/README.md
2016-12-29 11:34:19 +01:00
Sebastiaan van Stijn
f635cf05ab Merge pull request #29478 from AkihiroSuda/fix-gcplogs-29344
gcplogs: forcibly set HOME on static UNIX binary
2016-12-29 11:27:23 +01:00
Vincent Demeester
433e2e8a1e Introduce a environment package in integration-cli
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-29 11:00:50 +01:00
allencloud
ee2925e2f9 fail fast when network filter invalid
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-29 17:34:53 +08:00
Vincent Demeester
4d5cba127b Merge pull request #29687 from thaJeztah/cleanup-cli-command-container
Minor cleanups in cli/command/container
2016-12-29 09:31:46 +01:00
Sebastiaan van Stijn
79f1c9c81d Merge pull request #29762 from vdemeester/integration-mini-clean
Small cleanup in `integration-cli/docker_utils.go` 👼
2016-12-29 09:29:53 +01:00
Sebastiaan van Stijn
021710fcdf Merge pull request #29371 from vdemeester/clean-integration-utils
[test-integration] Clean utils.go from most of its content
2016-12-29 09:28:46 +01:00
Xianglin Gao
e03b55a2f5 exit collect when we get EOF
Signed-off-by: Xianglin Gao <xlgao@zju.edu.cn>
2016-12-29 13:38:30 +08:00
Akihiro Suda
b86e3bee5a gcplogs: forcibly set HOME on static UNIX binary
Fix #29344

If HOME is not set, the gcplogs logging driver will call os/user.Current() via oauth2/google.
However, in static binary, os/user.Current() leads to segfault due to a glibc issue that won't be fixed
in a short term. (golang/go#13470, https://sourceware.org/bugzilla/show_bug.cgi?id=19341)
So we forcibly set HOME so as to avoid call to os/user/Current().

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-29 03:17:26 +00:00
lixiaobing10051267
82eeab62df update URL of plugins_graphdriver.md in experimental/README.md
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-29 10:24:06 +08:00
Brian Goff
a2b12b5e82 Merge pull request #29679 from yongtang/29667-docker-build-workdir-cmd
Fix image's `CMD` after `WORKDIR` in Dockerfile
2016-12-28 20:26:59 -05:00
Lei Jitang
77c725eac2 Follow up #29365, fix fail to remove container after restart
Call daemon.Mount will increase the refcount of mounted path,
for those previous running containers, `Mount` call will make
the refcount to 2. see
https://github.com/docker/docker/blob/v1.13.0-rc4/daemon/graphdriver/counter.go#L38
```
	if !m.check {
		m.check = true
		if c.checker.IsMounted(path) {
			m.count++
		}
	}
	m.count++

```
graphdrive could restore on reboot after #22541, call
daemon.Mount to resore the graphdriver is not necessary.

And call `daemon.Mount` on restorting will mount all the containers
mounted layer even if it was stop.

This fix call Mount and then Unmount to get `BaseFs`

Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-12-28 20:08:03 -05:00
Sebastiaan van Stijn
841968d55c Merge pull request #29763 from omallo/29729-dostorage-plugin-docs
Reference new DigitalOcean plugin (Closes #29729)
2016-12-28 23:34:17 +01:00
Ovidio Mallo
ed55d71ead Reference new DigitalOcean plugin (Closes #29729)
Signed-off-by: Ovidio Mallo <ovidio.mallo@gmail.com>
2016-12-28 23:13:17 +01:00
Yong Tang
c80e74e8cc Tests to allow ID-based docker plugin enable/disable/rm/set
This fix is a follow up based on comment:

and a follow up to:
https://github.com/docker/docker/pull/29222#issuecomment-268908937

As #28789 has been merged in, it is possible for `docker plugin inspect`
to search based on Name or ID Prefix. However, ID-based
`docker plugin enable/disable/rm/set` are still not possible.

This fix addes test for  `docker plugin enable/disable/rm/set` to search based on:
- Full ID
- Full Name
- Partial ID (prefix)

The actual fix is done in  #29487.

This fix is a follow up of #28789 and  #29487.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-28 14:10:43 -08:00
Vincent Demeester
b2320d121c Small cleanup in integration-cli/docker_utils.go 👼
- Move *one-shot* (one use) function where it is actually used (easier
  to know what's going on).
- Remove `pullImageIfNotExist` function as it might be an artifact
  from way back. We don't need it as we already have frozen/loaded
  image of busybox.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-28 23:00:32 +01:00
Daniel Nephin
78101b26af Read long description from a file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-28 16:08:23 -05:00
Daniel Nephin
38d08b0bd1 Add validation for compose schema bindata.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-28 14:45:44 -05:00
Vincent Demeester
def13fa23c Clean integration-cli/utils.go from most of its content
Most of the code is now on pkg/integration.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-28 19:05:48 +01:00
Brian Goff
1dece339c3 Merge pull request #29476 from vdemeester/make-set-container-name
Add the possibility to set the dev container name
2016-12-28 12:22:32 -05:00
Alexander Morozov
4f657ff55c Merge pull request #29313 from vdemeester/move-cli-config
Move package cliconfig to cli/config
2016-12-28 09:05:51 -08:00
Brian Goff
b0aab6e83e Merge pull request #29475 from AkihiroSuda/vendor-oauth2-3
Vendor gcplogs deps
2016-12-28 11:55:03 -05:00
Brian Goff
631f51015e Merge pull request #29684 from vdemeester/quick-unit
Enhance pkg/{httputils,integration}, distribution/xfer unit tests
2016-12-28 10:57:56 -05:00
Brian Goff
c246b02fca Merge pull request #29737 from tonistiigi/fix-rootfs-check
Fix validation of plugins without rootfs in config
2016-12-28 10:49:58 -05:00
Brian Goff
a412c1b7a0 Merge pull request #29668 from dmcgowan/plugins-dct
Support Docker Content Trust for plugins
2016-12-28 10:43:32 -05:00
Doug Davis
9fab262690 Merge pull request #29752 from allencloud/fix-nits-in-comments
fix nits in comments
2016-12-28 08:33:48 -05:00
Vincent Demeester
522bfd926b Enhance pkg/{httputils,integration}, distribution/xfer unit tests
- Make it possible to define a shorter waiting time of httputils
- Make a small hack to reduce the waiting time on distribution/xfer

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-28 11:54:05 +01:00
Sebastiaan van Stijn
01c62d6e54 Merge pull request #29744 from yuexiao-wang/update-docker-ps
Update the field 'CONTAINER ID' for docker ps
2016-12-28 11:46:06 +01:00
yuexiao-wang
b3faa7755a Update the field 'CONTAINER ID' for docker ps
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-29 02:00:31 +08:00
Sebastiaan van Stijn
38178cda41 Merge pull request #29696 from zhenghenghuo/branch-two
fix some typos
2016-12-28 08:05:43 +01:00
zhenghenghuo
f1a19fa8c0 fix some typos
Signed-off-by: zhenghenghuo <zhenghenghuo@zju.edu.cn>

try to pass test

Signed-off-by: zhenghenghuo <zhenghenghuo@zju.edu.cn>

try to pass the test

Signed-off-by: zhenghenghuo <zhenghenghuo@zju.edu.cn>
2016-12-28 09:43:27 +08:00
Tonis Tiigi
6c7cb52009 Fix validation of plugins without rootfs in config
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-12-27 15:36:12 -08:00
Daniel Nephin
f5af9b9738 Replace vendor of aanand/compose-file with a local copy.
Add go-bindata for including the schema.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-27 16:17:24 -05:00
Daniel Nephin
32425d3add Add deps to test compose-file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-27 16:17:24 -05:00
Derek McGowan
14e8bba4f5 Support for docker content trust for plugins
Add integration test for docker content trust

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2016-12-27 12:51:00 -08:00
Brian Goff
bf6eb85539 Merge pull request #29666 from tonistiigi/client-deps
Clean up client binary dependencies
2016-12-27 15:01:24 -05:00
Sebastiaan van Stijn
823718c3b4 Merge pull request #29701 from yuexiao-wang/add-field
Update 'ID' field for 'docker plugin ls'
2016-12-27 20:04:28 +01:00
Brian Goff
efbb23f3e6 Merge pull request #29716 from yongtang/28885-docker-stack-ps-all
Remove `docker stack ps -a` to match removal of `docker service/node ps -a`
2016-12-27 13:56:01 -05:00
Brian Goff
2938dce794 Fix race/deadlock in v1 plugin handlers
When a plugin is activated, and then `plugins.Handle` is called to
register a new handler for a given plugin type, a deadlock occurs when
for anything which calls `waitActive`, including `Get`, and `GetAll`.

This happens because `Handle()` is setting `activated` to `false` to
ensure that plugin handlers are run on next activation.
Maybe these handlers should be called immediately for any plugins which
are already registered... but to preserve the existing behavior while
fixing the deadlock, track if handlers have been run on plugins and
reset when a new handler is registered.

The simplest way to reproduce the deadlock with Docker is to add a `-v
/foo` to the test container created for the external graphdriver tests.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-27 12:27:41 -05:00
Alexander Morozov
e3f61bd254 Merge pull request #29694 from lixiaobing10051267/masterFileNodify2
It is errNoSuchWatch not errNoSuchPoller in filenotify/poller.go
2016-12-27 09:04:34 -08:00
allencloud
6fb05778ba fix nits in comments
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-27 23:30:50 +08:00
Vincent Demeester
592f9891d4 Merge pull request #29725 from yuexiao-wang/remove-redundant-var
Remove unused variable
2016-12-27 16:05:43 +01:00
yuexiao-wang
08c6575caf Remove unused variable
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-28 03:20:41 +08:00
Justin Cormack
9f60ae538b Merge pull request #29720 from lixiaobing10051267/masterArmClone
use https clone url for docker/docker in ARM.md
2016-12-27 14:05:15 +00:00
Ke Li
514adcf458 Remove redundant format
Signed-off-by: Ke Li <kel@splunk.com>

Add missing changes

Signed-off-by: Ke Li <kel@splunk.com>

User errors.New to create error

Signed-off-by: Ke Li <kel@splunk.com>
2016-12-27 21:46:52 +08:00
Sebastiaan van Stijn
7a339eb4e9 Merge pull request #28692 from allencloud/splict-function-out-of-command-denifition-scope
refactor code to split function out of command definition scope
2016-12-27 13:48:12 +01:00
Vincent Demeester
e7d4269a50 Merge pull request #29714 from vdemeester/small-requirement-fix
Display only the name of the requirement…
2016-12-27 13:21:43 +01:00
Sebastiaan van Stijn
16500dfb1d Merge pull request #29712 from allencloud/add-network-name-when-disconnecting-error
display network name when disconnecting network error
2016-12-27 13:08:07 +01:00
Sebastiaan van Stijn
3702ee13bc Merge pull request #29709 from allencloud/fix-29708-more-correct-error-message
return more accurate error message when docker kill
2016-12-27 13:06:44 +01:00
Sebastiaan van Stijn
398ac2a884 Merge pull request #29703 from allencloud/make-pkg-system-support-darwin
make more package in system support darwin
2016-12-27 13:01:13 +01:00
lixiaobing10051267
cddd288170 use https clone url for docker/docker in ARM.md
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-27 19:51:45 +08:00
Sebastiaan van Stijn
55d5c80214 Merge pull request #29707 from gesellix/delete-plugin-swagger
fix swagger description for `DELETE /plugin/{name}`
2016-12-27 12:24:51 +01:00
Sebastiaan van Stijn
e3000a4e2f Merge pull request #29648 from yuexiao-wang/fix-man-docker
Update the manuals of docker and dockerd
2016-12-27 12:13:20 +01:00
Vincent Demeester
af843c53f8 Merge pull request #29699 from yuexiao-wang/update-index
Update the index of docker command line
2016-12-27 11:26:50 +01:00
yuexiao-wang
f649f54c60 Update the index of docker command line
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-28 02:39:04 +08:00
yuexiao-wang
62cc802f61 Update docker daemon to dockerd
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-27 17:32:15 +08:00
Vincent Demeester
1474bf6c6e Merge pull request #29705 from allencloud/rename-clusterProvider-to-cluster
rename clusterProvider to cluster in router
2016-12-27 09:34:17 +01:00
allencloud
cf5734b2e1 return more accurate error message when docker kill
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-27 13:38:13 +08:00
allencloud
f0844de8f0 display network name when disconnecting network error
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-27 13:37:54 +08:00
Yong Tang
0836023847 Fix image's CMD after WORKDIR in Dockerfile
This fix tries to fix 29667 where image's `CMD` is modified
after `WORKDIR` in Dockerfile.

The value of `b.runConfig.Cmd` was modified in the processing
of `WORKDIR`, in order to fix 28902. However, the same
`b.runConfig.Cmd` is passed to `commit()`.

This fix restored the `b.runConfig.Cmd` before `commit()`
the image for `WORKDIR`.

A test has been added.

This fix fixes 29667.

This fix is related to 28902, 28909, 28514.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-26 20:43:29 -08:00
Tonis Tiigi
64981b9f09 Move UAStringKey to dockerversion pkg
Removes grpc dependency from client

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-12-26 18:53:22 -08:00
Tonis Tiigi
9f3046f9a0 Move imageID validation to stringid pkg
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-12-26 18:53:22 -08:00
Tonis Tiigi
feaf5902f6 Move builder cli helper functions to own pkg
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-12-26 18:53:22 -08:00
Tonis Tiigi
13222160e8 Define PushResult in api types
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-12-26 18:53:22 -08:00
Tõnis Tiigi
b81f47a288 Merge pull request #29690 from albers/completion-plugin-install--alias
Add bash completion for `plugin install --alias`
2016-12-26 18:42:54 -08:00
Yong Tang
9155e14e77 Remove docker stack ps -a to match removal of docker service/node ps -a
In #28507 and #28885, `docker service/node ps -a` has been removed so that
information about slots are show up even without `-a` flag.

The output of `docker stack ps` reused the same output as `docker service/node ps`.
However, the `-a` was still there. It might make sense to remove `docker stack ps -a`
as well to bring consistency with `docker service/node ps`.

This fix is related to #28507, #28885, and #25983.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-26 13:47:43 -08:00
Vincent Demeester
952c8aef3f Display only the name of the requirement…
… relative to the integration-cli package

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-26 21:29:17 +01:00
yuexiao-wang
1e6587ff28 Update 'ID' field for 'docker plugin ls'
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-27 02:17:35 +08:00
Tobias Gesellchen
e6b2829a7f fix swagger description for DELETE /plugin/{name}
Signed-off-by: Tobias Gesellchen <tobias@gesellix.de>
2016-12-26 15:27:59 +01:00
allencloud
c6dc4f85ab make more package in system support darwin
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-26 21:30:06 +08:00
allencloud
0238e9e92b rename clusterProvider to cluster in router
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-26 20:53:13 +08:00
Vincent Demeester
11eb9b0d26 Merge pull request #29681 from tonistiigi/fix-invalid-inspect
Fix inspect object by invalid reference
2016-12-26 13:09:32 +01:00
yuexiao-wang
b3e14c25f2 Update the manuals of docker and dockerd
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-26 18:22:31 +08:00
lixiaobing10051267
989e791a42 It is errNoSuchWatch not errNoSuchPoller in filenotify/poller.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-26 16:19:50 +08:00
Akihiro Suda
7d8a9b9234 Merge pull request #29691 from albers/completion-service-create-cleanup
Cleanup bash completion for `service create|update`
2016-12-26 14:56:54 +09:00
allencloud
0b243acbfc split function out of command description scope
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-26 13:50:00 +08:00
Akihiro Suda
fb03b56b9b Merge pull request #29693 from davidxia/fix-typo
Fix typo in docs
2016-12-26 10:45:00 +09:00
Sebastiaan van Stijn
d5179cb4d4 Minor cleanups in cli/command/container
This change does some minor cleanups in the
cli/command/container package;

- sort imports
- replace `fmt.Fprintf()` with `fmt.Fprintln()` if no formatting is used
- replace `fmt.Errorf()` with `errors.New()` if no formatting is used
- remove some redundant `else`'s

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-26 01:33:25 +01:00
Vincent Demeester
ce964a607a Move package cliconfig to cli/config
I felt it made more sence 👼

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-25 20:31:52 +01:00
David Xia
f394b1d776 Fix typo in docs
s/BlkioDeviceWiiteIOps/BlkioDeviceWriteIOps/g

Signed-off-by: David Xia <dxia@spotify.com>
2016-12-25 11:48:11 -05:00
Harald Albers
d5935f83a7 Cleanup bash completion for service create|update
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-25 06:04:43 -08:00
Harald Albers
83158f8aff Add bash completion for plugin install --alias
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-25 05:32:50 -08:00
Sebastiaan van Stijn
e6366743a1 Merge pull request #29682 from miaoyq/add-volume-prune-to-index
Add 'volume prune' to the volume commands index
2016-12-24 20:21:31 +01:00
Sebastiaan van Stijn
cc439b8844 Merge pull request #29656 from AkihiroSuda/fix-poule
poule: do not recognize "arm" as platform/arm
2016-12-24 19:59:20 +01:00
Vincent Demeester
c424be21b7 Clean some stuff from runconfig that are cli only…
… or could be in `opts` package. Having `runconfig/opts` and `opts`
doesn't really make sense and make it difficult to know where to put
some code.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-24 13:16:00 +01:00
Vincent Demeester
d3e3a97cb2 Merge pull request #28623 from cpuguy83/update_graphdriver_docs
Ensure graphdriver only loads with experimental flag
2016-12-24 11:59:24 +01:00
Yanqiang Miao
3d4ea98971 Add 'volume prune' to the volume commands index
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-12-24 15:03:38 +08:00
Tonis Tiigi
3cd39aaeab Fix inspect object by invalid reference
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-12-23 22:57:30 -08:00
Tõnis Tiigi
a9fa38b1ed Merge pull request #29487 from tonistiigi/plugins-rework
Plugins content addressability
2016-12-23 20:01:04 -08:00
Tonis Tiigi
3d86b0c79b Implement content addressability for plugins
Move plugins to shared distribution stack with images.

Create immutable plugin config that matches schema2 requirements.

Ensure data being pushed is same as pulled/created.

Store distribution artifacts in a blobstore.

Run init layer setup for every plugin start.

Fix breakouts from unsafe file accesses.

Add support for `docker plugin install --alias`

Uses normalized references for default names to avoid collisions when using default hosts/tags.

Some refactoring of the plugin manager to support the change, like removing the singleton manager and adding manager config struct.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2016-12-23 13:29:58 -08:00
Anusha Ragunathan
d1dfc1a5ef Merge pull request #29599 from anusha-ragunathan/refcount
Enforce zero plugin refcount during disable, not remove.
2016-12-22 15:38:54 -08:00
Anusha Ragunathan
d25186a625 Merge pull request #29664 from cpuguy83/fix_bolt_usage
Fix usage of boltdb in volume restore
2016-12-22 13:53:04 -08:00
Anusha Ragunathan
e4512d2647 Merge pull request #29665 from mavenugo/getall
Add a GetAll function that returns only managed plugins supported by V2
2016-12-22 13:30:28 -08:00
Anusha Ragunathan
8cb2229cd1 Enforce zero plugin refcount during disable.
When plugins have a positive refcount, they were not allowed to be
removed. However, plugins could still be disabled when volumes
referenced it and containers using them were running.

This change fixes that by enforcing plugin refcount during disable.
A "force" disable option is also added to ignore reference refcounting.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-12-22 13:26:53 -08:00
Sebastiaan van Stijn
b39b0c4596 Merge pull request #29615 from londoncalling/docs-glossary-followup-PR#29561
followup to incorporate review comments per previous reviews on PR#29561
2016-12-22 21:50:58 +01:00
Brian Goff
748a9a3f9c Merge pull request #29628 from liliVicky/my-feature4
modify some errors of plurality
2016-12-22 15:40:30 -05:00
Victoria Bialas
15a21ef1bd followup to incorporate review comments per previous reviews on PR#29561
incorporated review comments

Signed-off-by: Victoria Bialas <victoria.bialas@docker.com>
2016-12-22 12:30:53 -08:00
Brian Goff
677fa03654 Moves graphdriver plugn docs out of experimental
Also updates some of the structures being sent so plugins are getting
all the new options.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-22 15:30:25 -05:00
Yong Tang
70942352d5 Support multiple service IDs on "docker service ps"
This fix tries to address issue raised in 25228 to support
multiple service IDs on `docker service ps`.

Multiple IDs are allowed with `docker service ps ...`, and
related documentation has been updated.

A test has been added to cover the changes.

This fix fixes 25228.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-22 11:33:47 -08:00
Madhu Venugopal
8f1b793528 Add a GetAll function that returns only managed plugins supported by V2
The current GetAll handles both V2 and legacy plugins. Also due to the
nature of V1 plugins, it also loads them. This causes problems when
loading is not required. Hence adding an independent API that will
return only the plugins that are loaded using v2 mangaed plugins.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-22 10:26:04 -08:00
Brian Goff
4876a9047e Fix usage of boltdb in volume restore
bolt k/v pairs are only valid for the life of a transaction.
This means the memory that the k/v pair is referencing may be invalid if
it is accessed outside of the transaction.
This can potentially cause a panic.

For reference: https://godoc.org/github.com/boltdb/bolt#hdr-Caveats

To fix this issue, unmarshal the stored data into volume meta before
closing the transaction.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-22 11:56:02 -05:00
Yong Tang
d32efdbf8b Sort the build labels passed from build --labels
This fix tries to fix the issue in 29619 where
labels passed from `build --labels` are not sorted.
As a result, if multiple labels have been passed,
each `docker build --labels A=A --labels B=B --labels C=C`
will generate different layers.

This fix fixes the issue by sort the Labels before
they are concatenated to `LABEL ...`.

A unit test has been added to cover the changes

This fix fixes 29619.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-22 07:32:52 -08:00
Sebastiaan van Stijn
a8bcef6fdd Merge pull request #29500 from WeiZhang555/add-missing-flag
Add missing "--default-runtime" flag in manpage
2016-12-22 16:22:53 +01:00
Zhang Wei
977fd43985 Add missing "--default-runtime" flag in manpage
Add missing flag and more descriptions in manpage.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2016-12-22 23:00:40 +08:00
Sebastiaan van Stijn
b9ee31ae02 Merge pull request #29314 from vdemeester/no-more-utils
Remove the utils package
2016-12-22 15:21:05 +01:00
Vincent Demeester
524704143b Merge pull request #29600 from allencloud/update-docs-about-service-update
update service update in docs
2016-12-22 15:17:51 +01:00
Vincent Demeester
0ca3e84227 Merge pull request #29603 from mstanleyjones/docker_diff_improvements
Clarify what docker diff shows
2016-12-22 15:15:01 +01:00
Vincent Demeester
b47cb6095d Merge pull request #29532 from yuexiao-wang/add-link-swarm
Add the link for swarm reference document
2016-12-22 15:13:47 +01:00
Vincent Demeester
8f9a48ab5a Merge pull request #29565 from yuexiao-wang/fix-typo-tls
Change tls to TLS
2016-12-22 12:10:09 +01:00
Akihiro Suda
b7ca1568b1 poule: do not recognize "arm" as platform/arm
Some words such as "swarm" and "apparmor" were recognized as "arm".
So remove "arm" from the list at the moment.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-22 10:35:10 +00:00
Sebastiaan van Stijn
d34e846960 Merge pull request #29399 from Mashimiao/oci-namespace-remove-idx
oci/namespace: remove unnecessary variable idx
2016-12-22 10:50:06 +01:00
Vincent Demeester
f847a3b7ce Merge pull request #29483 from vdemeester/extract-and-refactor-requirement
[test-integration] Refactor and extract TestRequire functionality
2016-12-22 10:24:51 +01:00
Vincent Demeester
9b5484e8c7 Merge pull request #29536 from vdemeester/integration-privateRegistryURL-const
[test-integration] Make privateRegistryURL (and dockerd) constant
2016-12-22 10:23:35 +01:00
Vincent Demeester
6b94be3521 Merge pull request #29605 from cpuguy83/fix_container_list
Refactor cleanup of paused test containers
2016-12-22 10:22:58 +01:00
Vincent Demeester
176ef97a98 Merge pull request #29645 from alexellis/label_arm_issues
Label ARM issues through Poule #29644
2016-12-22 10:21:08 +01:00
Ma Shimiao
730e0994c8 oci/namespace: remove unnecessary variable idx
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
2016-12-22 09:08:43 +08:00
liwenqi
128d07d349 modify some files
Signed-off-by: liwenqi <vikilwq@zju.edu.cn>

update some files in the folder of distribution/xfer

Signed-off-by: liwenqi <vikilwq@zju.edu.cn>

correct again

Signed-off-by: liwenqi <vikilwq@zju.edu.cn>
2016-12-22 08:38:37 +08:00
Alex
ef15b217ea Label ARM issues through Poule #29644
Signed-off-by: Alex <alexellis2@gmail.com>
2016-12-21 23:46:48 +00:00
Brian Goff
76b4f5ac28 Merge pull request #29606 from albers/completion-plugins-bundled
Improve bash completion for bundled plugins
2016-12-21 17:12:27 -05:00
Vincent Demeester
dba271a42a Move names to package api
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-21 22:42:47 +01:00
Vincent Demeester
7164b66cfc Move ReplaceOrAppendEnvValues to container package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-21 22:42:39 +01:00
Vincent Demeester
930a9869f6 Refactor and extract TestRequire functionality
This will help when extracting suites in their own package.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-21 22:39:33 +01:00
Vincent Demeester
be88dd1032 Make privateRegistryURL (and dockerd) constant
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-21 22:34:55 +01:00
Brian Goff
0525a5d729 Merge pull request #27722 from micro-jumbo/master
Stop returns 0 when docker service was not running
2016-12-21 16:08:04 -05:00
Vincent Demeester
ba1c20f8d6 Merge pull request #29345 from yuexiao-wang/fix-err-info
Fix incorrect words and formats in image
2016-12-21 21:50:11 +01:00
Vincent Demeester
13f45768f0 Merge pull request #29468 from hongbin/volume-plugin-fuxi
Add Fuxi Volume Plugin to the docs
2016-12-21 21:49:28 +01:00
Brian Goff
e91604c0d2 Merge pull request #29212 from yongtang/29185-docker-inspect
Fix `docker plugin inspect <unkown object>` issue on Windows
2016-12-21 15:47:17 -05:00
Brian Goff
b567e8777d Merge pull request #28594 from Microsoft/jjh/fixtodo
Windows: Fix a longstanding TODO
2016-12-21 15:46:00 -05:00
Brian Goff
267d6935c5 Merge pull request #28714 from thaJeztah/move-logdriver-check-to-daemon
move check for supported drivers to daemon
2016-12-21 13:47:30 -05:00
Brian Goff
aa188634cc Merge pull request #28888 from endophage/notary0.5.0
updating notary to released 0.5.0 version
2016-12-21 13:44:18 -05:00
Brian Goff
7548fc7637 Merge pull request #28900 from tophj-ibm/ppc64le-rpmbuild-fedora23
[ppc64le] add make rpm for fedora 24
2016-12-21 13:43:13 -05:00
Brian Goff
d65d5db2a0 Merge pull request #29491 from yongtang/12162016-stats-error
Improve error output for `docker stats ...`
2016-12-21 13:19:20 -05:00
Brian Goff
b2e348f2a6 Merge pull request #29527 from allencloud/change-minor-mistake
change minor mistake of spelling
2016-12-21 13:15:00 -05:00
Brian Goff
de92e2fa74 Merge pull request #29577 from lixiaobing10051267/masterDevice
several function names fixed in devmapper.go
2016-12-21 12:21:22 -05:00
Brian Goff
584485abca Merge pull request #29637 from wxb0521/bo-docker-0.5
some punctuation errors and a verb form error
2016-12-21 12:18:04 -05:00
Brian Goff
fbc1f1a40c Merge pull request #29633 from qar/fix/docs
Fix document typos
2016-12-21 12:17:29 -05:00
Doug Davis
7a94c6974f Merge pull request #29623 from luojie233/branch3
duplicated "the"
2016-12-21 11:33:34 -05:00
allencloud
b44efead25 update service update in docs
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-22 00:11:08 +08:00
Eric Curtin
5b4a528b57 Add warning on docker group suggestion
Signed-off-by: Eric Curtin <ericcurtin17@gmail.com>
2016-12-21 15:02:50 +00:00
Sebastiaan van Stijn
2d1b578e67 Merge pull request #29611 from johnstep/ps-make-dco
Fix regular expression for PowerShell DCO check
2016-12-21 13:36:33 +01:00
Jie Luo
ea2dd4b5d0 duplicated the
Signed-off-by: Jie Luo <luo612@zju.edu.cn>

typo

Signed-off-by: Jie Luo <luo612@zju.edu.cn>

fix some typos

Signed-off-by: Jie Luo <luo612@zju.edu.cn>
2016-12-21 20:16:19 +08:00
Xinbo Weng
32996d6016 some punctuation errors and a verb form error
Signed-off-by: Xinbo Weng <xihuanbo_0521@zju.edu.cn>
2016-12-21 20:05:19 +08:00
WANG Yuexiao
1ea0be9dbc Remove unused var 'errTLSConfigUnavailable' (#29626)
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-21 06:41:14 -05:00
Anran Qiao
3dc3921c76 Fix document typos
Change the `State` field of the `/containers/json` remote API response to lowercase.
This change involves docs/api/v1.23.md and docs/api/v1.24.md

Signed-off-by: Anran Qiao <anran.qiao@daocloud.io>
2016-12-21 18:28:52 +08:00
Yong Tang
0b3c10ac4d Fix docker plugin inspect <unkown object> issue on Windows
This fix is a follow up for comment:
https://github.com/docker/docker/pull/29186/files#r91277345

While #29186 addresses the issue of `docker inspect <unknown object>`
on Windows, it actually makes `docker plugin inspect <unknown object>`
out `object not found` on Windows as well. This is actually misleading
as plugin is not supported on Windows.

This fix reverted the change in #29186 while at the same time,
checks `not supported` in `docker inspect <unknown object>` so that
- `docker plugin inspect <unknown object>` returns `not supported` on Windows
- `docker inspect <unknown object>` returns `not found` on Windows

This fix is related to #29186 and #29185.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-20 21:05:10 -08:00
lixiaobing10051267
f93b41e926 several function names fixed in devmapper.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>

Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-21 10:45:28 +08:00
Sebastiaan van Stijn
fb41283e49 Merge pull request #29561 from londoncalling/docs-glossary-d4mac-d4win
updates to glossary re: d4mac, d4win, toolbox per user request
2016-12-21 02:16:28 +01:00
Misty Stanley-Jones
4497801c8a Clarify what docker diff shows
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-12-20 17:03:11 -08:00
John Stephens
0ce6c12f88 Fix regular expression for PowerShell DCO check
Signed-off-by: John Stephens <johnstep@docker.com>
2016-12-20 15:32:39 -08:00
Harald Albers
9ca56f7683 Improve bash completion for bundled plugins
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-20 13:28:46 -08:00
Brian Goff
788c20668d Refactor cleanup of paused test containers
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-20 16:26:55 -05:00
Tibor Vass
0d5a715931 Merge pull request #29470 from cyli/ask-for-unlock-key-only-if-locked
Check if a swarm is locked before asking a user to enter their unlock key
2016-12-20 13:21:47 -08:00
Sebastiaan van Stijn
b1cb897998 Merge pull request #29450 from yongtang/29291-no-default-replicas-output
Fix misleading defaults for service create/update
2016-12-20 17:11:05 +01:00
Sebastiaan van Stijn
e6d06a5271 Merge pull request #29583 from liliVicky/my-feature2
correct some words
2016-12-20 15:37:59 +01:00
Brian Goff
9eb9abea6d Merge pull request #29589 from lixiaobing10051267/masterDockerPs
field NAMES ommitted after docker ps in commit.md
2016-12-20 09:27:13 -05:00
Brian Goff
dc8a6d91fb Merge pull request #29550 from LK4D4/fix_commit
commit: do not change container labels on commit
2016-12-20 09:25:09 -05:00
yuexiao-wang
113cae5ba2 Change tls to TLS
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-20 22:08:07 +08:00
allencloud
7c3657065c change minor mistake of spelling
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-20 21:05:19 +08:00
lixiaobing10051267
f34ccd70c8 field NAMES ommitted after docker ps in commit.md
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-20 20:34:09 +08:00
Sebastiaan van Stijn
0d93970c52 Merge pull request #29569 from allencloud/update-docs-about-oom-score-adj
update docs about  --oom-score-adj
2016-12-20 13:18:57 +01:00
yuexiao-wang
b2ec509a3f Fix incorrect info and format of error in image
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-20 18:20:15 +08:00
yuexiao-wang
ee23a8e124 Add the link for swarm reference document
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-20 18:09:21 +08:00
liwenqi
b506f8ecdd correct some words
Signed-off-by: liwenqi <vikilwq@zju.edu.cn>

Update ISSUE-TRIAGE.md

Signed-off-by: vicky <395658237@qq.com>
2016-12-20 17:43:26 +08:00
Yong Tang
acc93db32b Fix misleading default for --replicas
This fix tries to address the issue raised in 29291 where
the output of `--replicas` in `service create/update`:
```
      --replicas uint                    Number of tasks (default none)
```
is misleading. User might incorrectly assume the number of replicas
would be `0` (`none`) by default, while the actual default is `1`.

The issue comes from the fact that some of the default values are
from daemon and it is not possible for client to find out the default
value.

In this case, it might be better to just simply not displaying `(default none)`.

This fix returns "" for `Uint64Opt` so that `(default none)` is hidden.

In addition to `--replicas`, this fix also changes
`--restart-delay`, `--restart-max-attempts`, `--stop-grace-period`,
`--health-interval`, `--health-timeout`, and `--restart-window`
in a similiar fashion.

New Output:
```
      --health-interval duration         Time between running the check (ns|us|ms|s|m|h)
      --health-timeout duration          Maximum time to allow one check to run (ns|us|ms|s|m|h)
...
      --replicas uint                    Number of tasks
...
      --restart-delay duration           Delay between restart attempts (ns|us|ms|s|m|h)
      --restart-max-attempts uint        Maximum number of restarts before giving up
      --restart-window duration          Window used to evaluate the restart policy (ns|us|ms|s|m|h)
...
      --stop-grace-period duration       Time to wait before force killing a container (ns|us|ms|s|m|h)
```

The docs has been updated. Note the docs for help output of `service create/update`
is out of sync with the current master. This fix replace with the update-to-date
help output.

This fix fixes 29291.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-19 19:35:05 -08:00
Akihiro Suda
2cf32ee043 Merge pull request #29525 from lixiaobing10051267/masterDiff
Use wrong ApplyLayer in diff_windows.go
2016-12-20 12:32:54 +09:00
EnergyLiYN
d1561620a7 There should be plural (#29571)
Signed-off-by: lyn <energylyn@zju.edu.cn>
2016-12-19 22:31:07 -05:00
allencloud
bb85d483b7 update docs about --oom-score-adj
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-20 11:14:39 +08:00
Victoria Bialas
56af047ca8 updates to d4win description per review comments
Signed-off-by: Victoria Bialas <victoria.bialas@docker.com>
2016-12-19 17:41:51 -08:00
Victoria Bialas
b9e5a6228f updates to glossary re: d4mac, d4win, toolbox per user request
Signed-off-by: Victoria Bialas <victoria.bialas@docker.com>
2016-12-19 17:25:04 -08:00
Tõnis Tiigi
288e55c09b Merge pull request #29546 from cpuguy83/29505_fix_overay2_check_plugin
Ensure test graphdriver plugin runs on test host
2016-12-19 16:16:42 -08:00
Tibor Vass
77dde3efa7 Merge pull request #29246 from thaJeztah/improve-swarm-check-in-inspect
Ignore certificate expiry error for top-level inspect
2016-12-19 15:37:53 -08:00
Tõnis Tiigi
aecb79ff98 Merge pull request #29339 from dmcgowan/plugins-abstract-download-manager
Abstract layerstore from pull/push distribution code
2016-12-19 13:32:28 -08:00
Brian Goff
e4ebc92edc Ensure test graphdriver plugin runs on test host
Sets a kernel requirement for for `TestGraphdriverPlugin` since the
graphdriver being used is overlay2.. and also makes sure to skip the
kernel check in the actual graphdriver since we may be able to detect
kernels with backported support for overlay2 style mounts a bit more
freely in the test code.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-19 16:05:22 -05:00
Sebastiaan van Stijn
db5159b78d Merge pull request #29551 from albers/completion-remove-daemon
Remove bash completion for deprecated `docker daemon`
2016-12-19 20:52:13 +01:00
Harald Albers
536a9ec698 Remove bash completion for deprecated docker daemon
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-19 11:40:59 -08:00
Tõnis Tiigi
5add856be6 Merge pull request #29522 from codevulture/master
Change -tlsverify to --tlsverify in warning
2016-12-19 11:11:17 -08:00
Derek McGowan
3c7676a057 Abstract distribution interfaces from image specific types
Move configurations into a single file.
Abstract download manager in pull config.
Add supports for schema2 only and schema2 type checking.
Add interface for providing push layers.
Abstract image store to generically handle configurations.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2016-12-19 10:55:00 -08:00
Derek McGowan
61ac7c4bf8 Update distribution vendor for manifest builder change
Manifest builder allows setting the configuration type
for the manifest being build. Additionally the default
type has been renamed to reflect it is an image type.

Signed-off-by: Derek McGowan <derek@mcgstyle.net>
2016-12-19 10:54:55 -08:00
Alexander Morozov
ca6c6f0765 commit: do not change container labels on commit
Fix #29547

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-12-19 09:56:20 -08:00
Sebastiaan van Stijn
a58b5830b1 Merge pull request #26576 from allencloud/change-cluster-response-status-code
update response status code for cluster request
2016-12-19 18:31:45 +01:00
Vincent Demeester
38886bbd74 Merge pull request #29513 from thaJeztah/fix-anonymous-volumes
fix conversion of anonymous volumes in compose-file
2016-12-19 17:16:00 +01:00
Sebastiaan van Stijn
d477a24ec5 Merge pull request #29539 from vdemeester/integration-remove-workingdir
[test-integration] global variable workingDirectory is not needed…
2016-12-19 15:18:02 +01:00
Sebastiaan van Stijn
fc5b5a4d1b Merge pull request #29543 from EnergyLiYN/br2
Header has incorrect punctuation.
2016-12-19 14:54:51 +01:00
Vincent Demeester
8a41c1d548 Merge pull request #29541 from tim-zju/spellError
spell error: in other parts, they are lower-case
2016-12-19 14:48:31 +01:00
lyn
c2ff923907 Header has incorrect punctuation.
Signed-off-by: lyn <energylyn@zju.edu.cn>
2016-12-19 21:38:59 +08:00
Sebastiaan van Stijn
05dc9846e1 remove client-side for supported logging drivers
The `docker logs` command performed a
client-side check if the container's
logging driver was supported.

Now that we allow the client to connect
to both "older" and "newer" daemon versions,
this check is best done daemon-side.

This patch remove the check on the client
side, and leaves validation to the daemon,
which should be the source of truth.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-19 14:30:01 +01:00
janonymous
f25e5ceeca Change -tlsverify to --tlsverify (Bug Fix: #29521)
Signed-off-by: Jaivish Kothari <janonymous.codevulture@gmail.com>
2016-12-19 18:03:57 +05:30
Evelyn.Xu
054e479bfa correct the spelling error of driver (#29523)
Signed-off-by: erxian <evelynhsu21@gmail.com>
2016-12-19 07:33:36 -05:00
Vincent Demeester
3dd25b9790 Global variable workingDirectory is not needed…
… and given where it was used, it should be quicker to create an empty
folder instead of passing potentially a big context with unrelated file.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-19 13:25:11 +01:00
Vincent Demeester
eb59c6d587 Merge pull request #29378 from aaronlehmann/swarm-plugins
Support v2 plugins in swarm mode
2016-12-19 11:07:06 +01:00
Sebastiaan van Stijn
48f7388e92 Merge pull request #29373 from vdemeester/remove-daemon-fmt-flood
Remove some fmt.Printf from integration-cli/daemon…
2016-12-19 10:59:25 +01:00
Vincent Demeester
0f68ecd3f7 Merge pull request #29441 from coolljt0725/fix_update_restart_policy
Fix docker update clear restart policy of monitor
2016-12-19 10:30:04 +01:00
lixiaobing10051267
9501f2ea97 Use wrong ApplyLayer in diff_windows.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-19 17:21:18 +08:00
Sebastiaan van Stijn
616adf1799 Merge pull request #29393 from lixiaobing10051267/masterDockerUpdate
Add docker-update description ommitted in docker.1.md
2016-12-19 10:17:14 +01:00
Vincent Demeester
309df6a592 Merge pull request #29510 from albers/docs-remove-node-ps--all
Remove `--all|-a` from `docker node ps` reference
2016-12-19 09:31:43 +01:00
lixiaobing10051267
c499ce266a Add docker-update description ommited in docker.1.md
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-19 15:13:51 +08:00
tim-zju
4bf9e7caaa spell error: in other parts, they are lower-case
Signed-off-by: tim-zju <21651152@zju.edu.cn>
2016-12-19 13:05:11 +08:00
allencloud
29d4a7f512 update response status code for cluster request
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-19 10:21:10 +08:00
Sebastiaan van Stijn
c8f919a425 Update criu to 2.9
criu 2.8 and 2.9 contain various fixes,
so updating the version in the Dockerfile
to match the newer version.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-19 02:19:51 +01:00
Michael
e85bb788de [docs,man] Fixed typo (#29516)
Signed-off-by: Michael Käufl <docker@c.michael-kaeufl.de>
2016-12-18 19:55:09 -05:00
Sebastiaan van Stijn
120241937e Improve validation for volume specs
The current validation only checked for the
number of elements in the volume-spec, however,
did not validate if the elements were empty.

Because of this, an empty volume-spec (""),
or volume spec only containing separators ("::")
would not be invalidated.

This adds a simple check for empty elements in
the volume-spec, and returns an error if
the spec is invalid.

A unit-test is also added to verify the behavior.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-19 01:50:08 +01:00
Sebastiaan van Stijn
6138a02c87 Merge pull request #29497 from yongtang/29486-docker-build-tmp-file
Clean up tmp files for interrupted `docker build`
2016-12-18 23:59:00 +01:00
Vincent Demeester
c1c6b51a91 Merge pull request #29509 from albers/completion-remove-node-ps--all
Remove bash completion for `docker node ps --all|-a`
2016-12-18 17:56:42 +01:00
Sebastiaan van Stijn
34889e579f fix conversion of anonymous volumes in compose-file
the `convertVolumeToMount()` function did not take
anonymous volumes into account when converting
volume specifications to bind-mounts.

this resulted in the conversion to try to
look up an empty "source" volume, which
lead to an error;

    undefined volume:

this patch distinguishes "anonymous"
volumes from bind-mounts and named-volumes,
and skips further processing if no source
is defined (i.e. the volume is "anonymous").

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-18 16:50:32 +01:00
Harald Albers
364e900237 Remove --all|-a from docker node ps reference
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-18 06:47:54 -08:00
Harald Albers
a54cc4f88d Remove bash completion for docker node ps --all|-a
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-18 06:31:25 -08:00
Sebastiaan van Stijn
4436a5946d Merge pull request #28629 from yongtang/28581-secret-create-input
Add `--file` flag for `docker secret create` command
2016-12-18 03:04:10 +01:00
Sebastiaan van Stijn
f6ba8498a2 Merge pull request #28160 from AkihiroSuda/update-experimental-md
update experimental/README.md
2016-12-18 03:02:07 +01:00
Yong Tang
32de162fc9 Improve error output for docker stats ...
While looking into `docker stats <c1> <c2> ...` I noticed that
the error output is quite long, especially if there are multiple errors:
```sh
ubuntu@ubuntu:~/docker$ docker stats nofound
: Error response from daemon: No such container: nofound
ubuntu@ubuntu:~/docker$ docker stats nofound foo bar
: Error response from daemon: No such container: nofound, : Error response from daemon: No such container: foo, : Error response from daemon: No such container: bar
```

There are several issues,
1. There is an extra `: ` at the beginning. That is because if container is not found,
the name will not be available from the daemon.
2. Multiple errors are concatenated with `, ` which will be quite long.

This fix:
1. Only prient out the error from daemon.
2. Multiple errors are printed out line by line.

Below is the new output:
```sh
ubuntu@ubuntu:~/docker$ docker stats nofound
Error response from daemon: No such container: nofound
ubuntu@ubuntu:~/docker$ docker stats nofound foo bar
Error response from daemon: No such container: nofound
Error response from daemon: No such container: foo
Error response from daemon: No such container: bar
```

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-17 16:51:11 -08:00
Sebastiaan van Stijn
ee88de7385 Merge pull request #29494 from thaJeztah/fix-powershell-dco-check
fix powershell dco check
2016-12-17 21:34:51 +01:00
Sebastiaan van Stijn
2121041944 Merge pull request #29423 from unclejack/api_cli_integ_return
return directly without ifs in remaining packages
2016-12-17 21:30:47 +01:00
Yong Tang
847564fa49 Clean up tmp files for interrupted docker build
This fix tries to fix the issue raised in 29486 where interrupted
`docker build` leaves some tmp files in `/var/lib/docker/tmp`.
With tmp file name prefixed with `/var/lib/docker/tmp/docker-builderXXXXXX`.

The reason for the issue is that in `MakeTarSumContext()`:
```
	if err := chrootarchive.Untar(sum, root, nil); err != nil {
		return nil, err
	}
```
the `err` is shadowed and caused the clean up function in `defer func()`
not being called.

This fix fixes the issue.

This fix is tested manually, as was specified in 29486:
```
rm -rf /var/lib/docker/tmp

mkdir repro && cd repro
fallocate -l 300M bigfile

cat > Dockerfile <<EOF
FROM scratch
COPY ./bigfile /
EOF

docker build .
{Cancel}

ls -la /var/lib/docker/tmp
```

This fix fixes 29486.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-16 21:11:53 -08:00
Lei Jitang
737b5b1781 Fix update clear the restart policy of monitor
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-12-16 20:57:05 -05:00
Aaron Lehmann
545b97e6bc Merge pull request #29439 from lixiaobing10051267/masterWalk
rectify function and variable referred in pkg/archive/changes_linux.go
2016-12-16 17:25:09 -08:00
Ying Li
a6a0880a22 Before asking a user for the unlock key when they run docker swarm unlock, actually
check to see if the node is part of a swarm, and if so, if it is unlocked first.
If neither of these are true, abort the command.

Signed-off-by: Ying Li <ying.li@docker.com>
2016-12-16 17:16:55 -08:00
Tõnis Tiigi
8a8416ccbd Merge pull request #29456 from cpuguy83/fix_client_events_race
Fixes a race condition in client events monitoring
2016-12-16 17:07:43 -08:00
Sebastiaan van Stijn
110a95717d Merge pull request #29459 from yongtang/29365-follow-up
Allow containers to continue even if mount failed after live restore
2016-12-17 01:46:25 +01:00
Sebastiaan van Stijn
611a633ba4 fix powershell dco check
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-16 23:48:27 +01:00
Vincent Demeester
914a72541f Merge pull request #29003 from dnephin/pkg-compose-transform
Move composefile -> engine api type conversion to `cli/compose/convert`
2016-12-16 23:34:41 +01:00
Hongbin Lu
ce25f1d5db Add Fuxi Volume Plugin to the docs
Signed-off-by: Hongbin Lu <hongbin034@gmail.com>
2016-12-16 13:04:40 -06:00
Victor Vieux
4f57b94f0c Merge pull request #29042 from cpuguy83/fix_volume_plugin_refcounts
Fix volume plugin refcounting on daemon restart
2016-12-16 10:54:30 -08:00
Aaron Lehmann
45990d6e61 Add integration test for volume plugins on swarm
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-16 10:45:47 -08:00
Aaron Lehmann
53d447c5d5 Fix volume Create to check against canonical driver name
Previously, it was comparing against the driver name passed in by the
caller. This could lead to subtle issues when using plugins, like
"plugin" vs. "plugin:latest".

Also, remove "conflict:" prefix to improve the error message.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-16 10:45:46 -08:00
Aaron Lehmann
87e8828dff Merge pull request #29482 from thaJeztah/not-for-workers-only
swarm leave is not only for workers
2016-12-16 09:48:35 -08:00
Daniel Nephin
643fd775ed Move pkg to cli/compose/convert
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-16 12:27:31 -05:00
Daniel Nephin
4664dd06f1 More unit tests for converting services in stack deploy
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-16 12:20:07 -05:00
Daniel Nephin
655e48e653 Move ConvertService to composetransform package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-16 12:20:07 -05:00
Daniel Nephin
7685e80fc9 Move ConvertVolumes to composetransform package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-16 11:51:13 -05:00
Daniel Nephin
6b778c9633 Move ConvertNetworks to composetransform package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-16 11:51:13 -05:00
Sebastiaan van Stijn
ba76c9214d Merge pull request #29434 from yuexiao-wang/pause-and-unpause
Fix inconsistency for pause and unpause
2016-12-16 16:42:04 +01:00
Brian Goff
6ef1060cd0 Fix volume plugin refecounting on daemon restart
Ensures all known volumes (known b/c they are persisted to disk) have
their volume drivers refcounted properly.

In testing this, I found an issue with `--live-restore` (required since
currently the provided volume plugin doesn't keep state on restart)
where restorted plugins did not have a plugin client loaded causing a
panic when trying to use the plugin.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-16 10:14:06 -05:00
Brian Goff
47585996bf Fixes a race condition in client events monitoring
In cases where there is high latency (ie, not-local network)
`waitExitOrRemoved` was not receiving events for short-lived containers.
This caused the client to hang while waiting for a notification that the
container has stopped.

This happens because `client.Events()` returns immediately and spins a
goroutine up to process events. The problem here is it returns before
the request to the events endpoint is even made.
Even without high-latency issues, there is no guarantee that the
goroutine is even scheduled by the time the function returns.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-16 10:11:53 -05:00
Sebastiaan van Stijn
f89eee5d9d swarm leave is not only for workers
the "docker swarm leave" command description
mentioned that the command can only be used
for workers, however, the command can also
be used for managers (using the `-f` / `--force`
option).

this patch removes the "(workers only)" part
of the command description.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-16 15:10:20 +01:00
Sebastiaan van Stijn
e435665658 Merge pull request #29455 from andrewhsu/f23-eol
Remove fedora-23 because eol
2016-12-16 12:40:26 +01:00
Vincent Demeester
ddcb999621 Merge pull request #29474 from yuexiao-wang/add-link-node
Add the whole related information for node
2016-12-16 11:26:16 +01:00
yuexiao-wang
b67b0949ed Add the whole related information for node
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-16 22:21:52 +08:00
Sebastiaan van Stijn
92e63977d9 Merge pull request #27938 from AkihiroSuda/ovlnw-27866
api: allow NW name that is the prefix of a swarm NW ID
2016-12-16 10:40:46 +01:00
yuexiao-wang
082f4919ca Fix inconsistency for pause and unpause
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-16 17:27:28 +08:00
Vincent Demeester
4bda9bd6e9 Add the possibility to set the dev container name
By using `make CONTAINER_NAME=docker-dev shell` you're able to name
the docker-dev container to what you want. The idea behind it is by
knowing the name of your dev container you can automate easily some
thing using `docker exec` later.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-16 10:24:16 +01:00
Akihiro Suda
ff2f875574 vendor: google.golang.org/cloud -> cloud.google.com/go
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-16 08:36:18 +00:00
Vincent Demeester
e9d403ab36 Merge pull request #29462 from vieux/fix_devices_plugins
fix devices in plugins
2016-12-16 08:03:15 +01:00
lixiaobing10051267
e5ada578c3 rectify function and variable referred in pkg/archive/changes_linux.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>

Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-16 14:58:47 +08:00
Akihiro Suda
44b95265df vendor oauth2@96382aa0 and add its deps
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-16 04:37:47 +00:00
Akihiro Suda
eb11a10ddf update experimental/README.md
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-16 04:03:02 +00:00
Victor Vieux
a59625d912 Merge pull request #29302 from cpuguy83/graphdriver_plugin_use_propagated_mount
Make graphdriver plugin use plugin BasePath
2016-12-15 18:53:03 -08:00
Yong Tang
3003ae1d8b Allow containers to continue even if mount failed after live restore
This fix is a follow up to #29365. In #29365 a bug was fixed for
`docker exec -u user` after live restore by remounting.
However, #29365 will prevent containers from restored if mount failed.

In this fix, containers will be restored even if mount in that step failed.
Some functionalities might be missing (like `docker exec -u user`) but
at least it is possible to do certain operations like stop/restart/delete.

This fix is related to #29365.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-15 15:48:14 -08:00
Victor Vieux
6f00601c9f fix devices in plugins
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-12-15 15:35:53 -08:00
Sebastiaan van Stijn
5e176022f4 Merge pull request #29446 from ddingel/s390_slim_dockerfile
Dockerfile.s390x: Change base to debian jessie
2016-12-15 23:47:17 +01:00
Sebastiaan van Stijn
d52494252d Merge pull request #29437 from yuexiao-wang/remove-unuse-slice
Remove unuse slice in registry
2016-12-15 22:23:01 +01:00
Brian Goff
500210475f Make graphdriver plugin use plugin BasePath
Also enables `PropagatedMount` for graphdrivers.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-15 16:22:13 -05:00
Tibor Vass
8899c62ecf Merge pull request #29457 from tiborvass/poule_fix_docker_service
poule: do not treat "docker service" keyword as a swarm feature
2016-12-15 11:07:55 -08:00
Tibor Vass
59ca288c89 poule: do not treat "docker service" keyword as a swarm feature
"docker service" can also refer to an init system's service named docker
This would prevent labeling e.g. systemd related issues to swarm.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-12-15 10:41:54 -08:00
Andrew Hsu
ef98091a90 remove fedora-23 because eol
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-15 09:44:34 -08:00
yuexiao-wang
3ed06f9670 Remove unuse slice in registry
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-16 00:51:10 +08:00
Akihiro Suda
edfbc3b876 api: allow creating a network of which name is the prefix of the ID of a swarm network
Previously, it doesn't allow creating such a network:

e.g.

    $ docker network inspect -f '{{.Id}}' ingress
    84xh9knigj6zyt00u31e26nj3
    $ docker network create 84
    Error response from daemon: network with name 84 already exists

Fix #27866

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-15 15:09:06 +00:00
Sebastiaan van Stijn
e9a69316b8 Merge pull request #29383 from yuexiao-wang/add-logs-link
Add the link for service logs
2016-12-15 13:23:18 +01:00
yuexiao-wang
54d38fe115 Add the link for service logs
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-15 17:43:51 +08:00
Dominik Dingel
1bd6836a42 Dockerfile.s390x: Change base to debian jessie
With commit ee59f25c2d we changed from
gcc-go to golang 1.7. By switching to debian we can reduce the base
layer from 1.4 GB to around 130 MB.

Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
2016-12-15 10:40:33 +01:00
Vincent Demeester
6e6016f581 Merge pull request #29422 from unclejack/daemon_return_directly
daemon: return directly without ifs where possible
2016-12-15 09:46:53 +01:00
Vincent Demeester
31eea90f52 Merge pull request #29419 from trapier/reference_service_create_typo
fix typo in reference for service create
2016-12-15 09:45:17 +01:00
Vincent Demeester
aac75aca77 Merge pull request #29412 from albers/docs-network-create--attachable
Add docs for `docker network create --attachable`
2016-12-15 09:44:20 +01:00
Vincent Demeester
d0ab04ac16 Merge pull request #29372 from tophj-ibm/fix-plugin-disable-error
[plugins] return err when failing remove
2016-12-15 09:18:35 +01:00
Vincent Demeester
a60be6bfe3 Merge pull request #29365 from yongtang/29342-exec-user-after-restart
Fix `docker exec -u` issue after docker daemon restart
2016-12-15 09:16:17 +01:00
Akihiro Suda
ec8b286dd3 Merge pull request #29391 from lixiaobing10051267/masterTypeWin
fix some typos in libcontainer\types_windows.go
2016-12-15 13:26:58 +09:00
Victor Vieux
9a30560fda Merge pull request #29413 from albers/completion-deploy-experimental
Make bash completion for `docker stack deploy --bundle-file` available only in experimental mode
2016-12-14 17:24:50 -08:00
Aaron Lehmann
2a97ea9a6e Publish installed v2 plugins to manager
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-14 17:02:56 -08:00
Aaron Lehmann
423ba6f223 Revendor swarmkit
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-14 17:02:48 -08:00
Tibor Vass
ba368baea1 Merge pull request #29156 from aaronlehmann/trusted-service-create
Content trust for swarm services
2016-12-14 16:04:50 -08:00
unclejack
2c187a24e0 return directly without ifs in remaining packages
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2016-12-14 23:28:27 +02:00
Christopher Jones
fb11164c4f [plugins] return err when failing remove
Fixes a case where removing the plugin from disk would
fail silently. Also moves pluginStore remove after we
remove from disk, so 'docker plugin ls' doesn't isn't
empty in case it errors out.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-12-14 15:10:29 -06:00
unclejack
3a42518042 daemon: return directly without ifs where possible
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2016-12-14 22:36:58 +02:00
Phil Estes
8415aeb39a Merge pull request #29366 from unclejack/pkg_return_directly
pkg: return directly without ifs where possible
2016-12-14 21:20:26 +01:00
Trapier Marshall
90c680ad25 fix typo in reference for service create
Signed-off-by: Trapier Marshall <trapier.marshall@docker.com>
2016-12-14 14:56:55 -05:00
Anusha Ragunathan
738769d23c Merge pull request #29380 from vieux/skip_empty_network_plugin
skip empty networks in plugin install
2016-12-14 11:53:42 -08:00
Aaron Lehmann
62cd3b39f9 integration-cli: Add integration tests for swarm services + content trust
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-14 10:50:23 -08:00
Aaron Lehmann
d4d6f8c0d0 cli: Pin image to digest using content trust
Implement notary-based digest lookup in the client when
DOCKER_CONTENT_TRUST=1.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-14 10:49:33 -08:00
Aaron Lehmann
4b8c79f25e cli: Split out GetNotaryRepository and associated functions
Split these into cli/trust so that other commands can make use of them.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-14 10:49:32 -08:00
Kenfe-Mickaël Laventure
b6f870a278 Merge pull request #29387 from vicamo/add-debian-security-updates-when-available
mkimage: add debian security updates source when available
2016-12-14 09:54:50 -08:00
Sebastiaan van Stijn
2fe62f2395 Merge pull request #28943 from vdemeester/publish-long-short-syntax
Remove --port and update --publish for services to support syntaxes
2016-12-14 17:55:48 +01:00
Harald Albers
a53bdfa3be Make bash completion for docker stack deploy --bundle-file experimental
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-14 08:52:07 -08:00
Harald Albers
7433d3acf6 Add docs for docker network create --attachable
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-14 08:39:10 -08:00
You-Sheng Yang (楊有勝)
e2e5d4bc9d mkimage: add debian security updates source when available
Signed-off-by: You-Sheng Yang (楊有勝) <vicamo@gmail.com>
2016-12-14 23:23:00 +08:00
Sebastiaan van Stijn
2333af9e59 Merge pull request #29382 from yuexiao-wang/fix-wait-man
Update the manual for docker wait
2016-12-14 15:29:33 +01:00
Vincent Demeester
1474a451b1 Merge pull request #29401 from bfirsh/add-swagger-display-name
Add display name for tags in swagger.yaml
2016-12-14 15:28:22 +01:00
Brian Goff
c856c0c777 Merge pull request #29078 from bfirsh/add-swagger-docs
Add make command for previewing API docs
2016-12-14 08:42:35 -05:00
Ben Firshman
27ca33e965 Add make command for previewing API docs
Much easier than the previous method of copying over to the docs
repository and generating the docs.

And, as @cpuguy83 pointed out, that actually didn't work
because the PR that adds Swagger docs isn't merged yet. Oopsy.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-12-14 12:27:32 +00:00
Ben Firshman
0caa6c218c Add display name for tags in swagger.yaml
In #29071, we made the tags the correct name for generating types,
at the expense of the menu in the documentation looking good.

ReDoc now has support for tag display names
( https://github.com/Rebilly/ReDoc/pull/152 ), so we can assign
a more human-friendly name to the menu items.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-12-14 12:00:04 +00:00
yuexiao-wang
303ff807f2 Update the manual for docker wait
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-14 18:22:59 +08:00
Vincent Demeester
cf2ea76138 Remove some fmt.Printf from integration-cli/daemon…
… to flood a little bit less the integration cli output. Now use any
testing framework that has a LogF function.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-14 10:52:51 +01:00
lixiaobing10051267
f385846d6f fix some typos in libcontainer\types_windows.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-14 16:33:03 +08:00
Yong Tang
7feb2a17e4 Fix docker exec -u issue after docker daemon restart
This fix tries to address the issue raised in 29342 where
`docker exec -u` after docker daemon restart returns an error:
```
unable to find user test: no matching entries in passwd file
```

The reason was that `container.BaseFS` is not present after restart.

This fix adds the `daemon.Mount` during the restore to bring up the
`container.BaseFS`.

An integration test has been added to cover the changes.

This fix fixes 29342.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-13 22:36:30 -08:00
Tibor Vass
98fef1cb0b Merge pull request #29374 from mavenugo/exp
Add the missing experimental ipvlan network driver
2016-12-13 20:03:24 -08:00
Tibor Vass
af50cefe6c Merge pull request #29008 from cpuguy83/refcount_graphdriver
Refcount graphdriver plugins properly
2016-12-13 19:24:46 -08:00
Aaron Lehmann
96f7fedc1e Merge pull request #29198 from allencloud/return-no-swarm-when-unlock-normal-node
return node is not a swarm when unlock a normal node
2016-12-13 18:59:06 -08:00
Victor Vieux
04e35a01fc skip empty networks in plugin install
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-12-13 17:46:01 -08:00
Victor Vieux
e23c5fcdbb Merge pull request #29283 from cpuguy83/fix_plugin_live_restore
Fix issues with plugin and `--live-restore`
2016-12-13 17:11:59 -08:00
Madhu Venugopal
b0eef4e427 Pass daemon experiemental flag to libnetwork
Required to enable ipvlan experimental network driver

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-13 14:22:54 -08:00
Madhu Venugopal
8e6969d846 Vendor libnetwork with experimental daemon flag handling
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-12-13 14:22:48 -08:00
Brian Goff
cb6633175c Fix issues with plugin and --live-restore
Fixes an issue when starting the daemon with live-restore
where previously it was not set, plugins are not running.

Fixes an issue when starting the daemon with live-restore, the plugin
client (for interacting with the plugins HTTP interface) is not set,
causing a panic when the plugin is called.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-13 16:11:59 -05:00
Vincent Demeester
5665c73642 Merge pull request #29288 from Microsoft/jjh/promptusestdin
Windows: Prompt fix use regular stdin
2016-12-13 21:18:54 +01:00
unclejack
418e612383 pkg: return directly without ifs where possible
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2016-12-13 22:10:11 +02:00
Arnaud Porterie
39473dad54 Merge pull request #29349 from vdemeester/try-to-fix-win2lin
Fix failures on Win2lin
2016-12-13 08:35:25 -08:00
Sebastiaan van Stijn
66cf4cc7f7 Ignore certificate expiry error for top-level inspect
The top-level `docker inspect` command could return
an error if the nodes Swarm certificates were expired.

In situations where the user did not explicitly
ask for an object-type (`--type=foo`), we should
ignore these errors, and consider them equal to
"node is not a swarm manager".

This change makes `docker inspect` ignore these
errors if no type was specified.

As a further optimization, the "swarm status"
result is now stored in a variable, so that
other swarm-specific API calls can be skipped.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-13 17:22:43 +01:00
Sebastiaan van Stijn
59a496e664 Merge pull request #29361 from thaJeztah/update-service-ps-reference
Update reference docs for service ps
2016-12-13 16:59:37 +01:00
Yong Tang
c6f0b7f448 Add --file flag for docker secret create command
This fix tries to address the issue raised in 28581 and 28927
where it is not possible to create a secret from a file (only
through STDIN).

This fix add a flag `--file` to `docker secret create` so that
it is possible to create a secret from a file with:
```
docker secret create --file secret.in secret.name
```

or
```
echo TEST | docker secret create --file - secret.name
```

Related docs has been updated.

An integration test has been added to cover the changes.

This fix fixes 28581.
This fix is related to 28927.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-13 07:35:45 -08:00
Vincent Demeester
cda04547c0 Merge pull request #29000 from yongtang/24352-swarm-update-no-flags
Show usage when `docker swarm update` has no flags
2016-12-13 16:07:02 +01:00
Vincent Demeester
525c7bb930 Merge pull request #29359 from yuexiao-wang/fix-network-option
Fix the option name for network
2016-12-13 15:20:25 +01:00
yuexiao-wang
b101e451f1 Fix the incorrect option name
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-14 04:10:09 +08:00
Vincent Demeester
96ac223a13 Merge pull request #29346 from xlgao-zju/just-return-assignment
Get rid of err altogether by just returning the assignment
2016-12-13 15:19:45 +01:00
Vincent Demeester
c2b7480604 Merge pull request #29335 from tophj-ibm/skip-plugin-test
[integration-cli] skip plugin tests on non-x86
2016-12-13 14:54:41 +01:00
Yong Tang
5aa5a1cb00 Show usage when docker swarm update has no flags
This fix tries to address the issue raised in 24352. Previously,
when `docker swarm update` has no flags, the output is
```
Swarm updated.
```
even though nothing was updated. This could be misleading for
users.

This fix tries to address the issue by adding a `PreRunE` function
in the command so that in case no flag is provided (`cmd.Flags().NFlag() == 0`),
the usage will be outputed instead.

An integration has been added to cover the changes.

This fix fixes 24352.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-13 05:05:04 -08:00
Sebastiaan van Stijn
5902fa3384 Update reference docs for service ps
commit bbd2018ee1
changed the output format of `docker service ps`.

this patch updates the reference docs
to match the updated output format.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-13 13:30:58 +01:00
Vincent Demeester
1bc942597d Merge pull request #29216 from allencloud/add-status-code-403-for-services-create
add missing status code 403 for services/create in docs
2016-12-13 12:27:56 +01:00
Vincent Demeester
ce9960a9b2 Merge pull request #29348 from lixiaobing10051267/masterMount
modify some wrong func information in device_tool.go
2016-12-13 12:23:43 +01:00
Vincent Demeester
3b9646b4a4 Merge pull request #29352 from lixiaobing10051267/masterStack
stack_config.md not exist and delete it in other files
2016-12-13 12:18:13 +01:00
Vincent Demeester
e857785df4 Fixing win2lin builds by adding a testRequires to DockerDaemonSuite
The success of the win2lin CI before was really "by chance" on the
DockerDaemonSuite : the DockerDaemonSuite was panicking when starting
the daemon on the first non-skipped test.The suite panicked but as
the error returned from `StartWithBusybox` was nil, the test kept
going and was OK because the client had all the correct environment
variables set up to discuss with the remote daemon.

Then, as the suite panicked, no more test attached on the
DockerDaemonSuite ran (that's why on win2lin, `DockerDaemonSuite` was
only composed by 5 tests !). The really bad thing is, we didn't get
any report of the panic on the suite (go-check hiding something
somewhere).

As DockerDaemonSuite needs to run test on the same host as it's
running, this adds a `SameHostDaemon` requirement to the Suite.

This changes also make sure `TestRestartContainerWithRestartPolicy`
does left weirdies behind it.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-13 12:04:53 +01:00
lixiaobing10051267
afaff51a8b stack_config.md not exist and delete it
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-13 18:06:18 +08:00
lixiaobing10051267
cde57a0d56 modify some wrong func information in device_tool.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-13 17:49:03 +08:00
Vincent Demeester
7f44e09797 Merge pull request #28437 from thaJeztah/deprecate-default-network-inspect
deprecate "top-level" network information in NetworkSettings
2016-12-13 08:58:57 +01:00
Vincent Demeester
3d52c86d4c Merge pull request #29267 from yuexiao-wang/fix-bulid-para
Update the option for docker build
2016-12-13 08:55:20 +01:00
yuexiao-wang
cd317282c9 Update the option 'network' for docker build
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-13 18:18:53 +08:00
Xianglin Gao
da5d3cccc4 Get rid of err altogether by just returning the assignment
Signed-off-by: Xianglin Gao <xlgao@zju.edu.cn>
2016-12-13 14:25:57 +08:00
allencloud
0270645c13 return not a swarm when unlock
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-13 10:38:45 +08:00
Victor Vieux
e9076c0f00 Merge pull request #29337 from anusha-ragunathan/unmount_enable_err
When plugin enable fails, unmount PropagatedMount.
2016-12-12 16:02:16 -08:00
Christopher Jones
ebff8c79a3 [integration-cli] skip plugin tests on non-x86
Due to the test plugins being architecture specific, these
tests fail to start the plugin (even though they don't fail yet)

Temporary fix until we can build architecture specific test
plugins.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-12-12 17:17:45 -05:00
Victor Vieux
96a84ed85a Merge pull request #29130 from cyphar/29097-dynamically-reload-apparmor
daemon: switch to 'ensure' workflow for AppArmor profiles
2016-12-12 13:32:36 -08:00
Anusha Ragunathan
cef443bddf When plugin enable fails, unmount PropagatedMount.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-12-12 13:25:06 -08:00
Anusha Ragunathan
8de2336f07 Merge pull request #29230 from vieux/remove_old_media_type_plugin
remove old media type compat for plugins
2016-12-12 12:43:32 -08:00
Vincent Demeester
59ba895a0f Merge pull request #29208 from andrewhsu/validate-changelog
validate CHANGELOG.md is well-formed
2016-12-12 17:59:41 +01:00
Brian Goff
4530097582 Merge pull request #29319 from sanimej/libn-bump
Vendor libnetwork @4df06c4
2016-12-12 11:41:57 -05:00
Vincent Demeester
3356442d00 Merge pull request #29074 from yongtang/29044-swarm-ipam-options
Fix missing IPAM options in swarm network mode
2016-12-12 17:27:01 +01:00
Sebastiaan van Stijn
91dd29acdc Merge pull request #29196 from aluzzardi/service-ps-output
service ps: Revert output to 1.12 behavior.
2016-12-12 17:20:45 +01:00
Sebastiaan van Stijn
f1736dfa33 Merge pull request #29308 from pengqinglan/fix-contents-links
fix some broken contents links
2016-12-12 15:02:32 +01:00
Qinglan Peng
bac792c163 fix some broken contents links
Signed-off-by: Qinglan Peng <qinglanpeng@zju.edu.cn>

fix-contents-links

Signed-off-by: Qinglan Peng <qinglanpeng@zju.edu.cn>
2016-12-12 21:34:37 +08:00
Sebastiaan van Stijn
8f57ac390f Merge pull request #29289 from vdemeester/integration-cli-startwithbusybox
[integration-cli] Use *check.C in Start/Stop on Daemon struct
2016-12-12 11:39:26 +01:00
Vincent Demeester
1a7c906757 Merge pull request #29318 from lixiaobing10051267/masterBuilder
fix some wrong vars or funcs in builder.go
2016-12-12 11:22:29 +01:00
Sebastiaan van Stijn
94a2996bde Merge pull request #29311 from djmaze/patch-1
Fix link to volume label support issue in changelog
2016-12-12 10:58:58 +01:00
Vincent Demeester
cc85b14d9c Merge pull request #29309 from ohmk/fix-description-of-docker-swarm-command
Fix description of docker swarm command
2016-12-12 10:34:35 +01:00
Vincent Demeester
a1307aab28 Merge pull request #29287 from Microsoft/jjh/fixd4w301
Windows: Fix crash in docker system prune
2016-12-12 10:30:13 +01:00
Sebastiaan van Stijn
9f92818afe Merge pull request #29320 from lixiaobing10051267/masterExtendConfig
replace env description with args in extend config
2016-12-12 10:23:40 +01:00
lixiaobing10051267
abdc031aea replace env description with args in extend config
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-12 17:24:12 +08:00
Sebastiaan van Stijn
9863470c96 Merge pull request #29305 from albers/completion-inspect-plugins
Add bash completion for `docker inspect --type plugin`
2016-12-12 10:13:30 +01:00
Vincent Demeester
4d78a8fd0f Merge pull request #29317 from sdurrheimer/zsh-completion-inspect-types
Add zsh completion for 'docker inspect --type=plugin' and other missing ones
2016-12-12 10:11:59 +01:00
lixiaobing10051267
ee8a3eee4f fix some wrong vars or funcs in builder.go
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-12 17:11:41 +08:00
Steve Durrheimer
2bdffc1fb5 Add zsh completion for 'docker inspect --type=plugin' and other missing ones
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-12-12 10:09:05 +01:00
Vincent Demeester
c502fb49dc Use *check.C in StartWithBusybox, Start, Stop and Restart…
… to make sure it doesn't fail. It also introduce StartWithError,
StopWithError and RestartWithError in case we care about the
error (and want the error to happen).

This removes the need to check for error and make the intent more
clear : I want a deamon with busybox loaded on it — if an error occur
it should fail the test, but it's not the test code that has the
responsability to check that.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-12 09:46:47 +01:00
Vincent Demeester
04f7a03359 Move templates to pkg/templates
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-12 09:34:03 +01:00
Vincent Demeester
ce37550347 Move debug functions to cli/debug package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-12 09:33:58 +01:00
Santhosh Manohar
b6b6d3ade4 Vendor libnetwork @4df06c4
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
2016-12-12 00:29:54 -08:00
Vincent Demeester
8c1ac81665 Move process functions to pkg/system
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-12 09:28:41 +01:00
Vincent Demeester
0ab9320ab2 Move utils.TestDirectory to pkg/testutil/tempfile
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-12 09:28:32 +01:00
Vincent Demeester
9d4aa3621f Make --publish-rm precedes --publish-add, so that add wins
`--publish-add 8081:81 --publish-add 8082:82 --publish-rm 80
--publish-rm 81/tcp --publish-rm 82/tcp` would thus result in 81 and
82 to be published.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-11 23:14:54 +01:00
Vincent Demeester
75bf18c9f0 Remove --port and update --publish for services to support syntaxes
Add support for simple and complex syntax to `--publish` through the
use of `PortOpt`.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-11 23:14:54 +01:00
Martin Honermeyer
bb06e138e4 Fix link to volume label support in changelog
Signed-off-by: Martin Honermeyer <maze@strahlungsfrei.de>
2016-12-11 17:43:29 +01:00
Kei Ohmura
2f0e00f587 docs: fix description of docker swarm update --help
Signed-off-by: Kei Ohmura <ohmura.kei@gmail.com>
2016-12-11 21:25:40 +09:00
Kei Ohmura
77dd8474a7 docs: fix description of docker swarm join --help
Signed-off-by: Kei Ohmura <ohmura.kei@gmail.com>
2016-12-11 21:21:48 +09:00
Harald Albers
81b4b2b5fa Add bash completion for docker inspect --type plugin
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-10 13:31:42 -08:00
Yong Tang
4d958e99c1 Fix missing IPAM options in swarm network mode
This fix tries to fix the issue raised in 29044 where
the IPAM options is missing in swarm network mode
after the service is deployed. Before the service
is deployed, the IPAM options is available.

The reason for the issue is that, before service is
deployed, `network inspect` is querying the swarm and
obtained the correct information.
However, after service is deployed, swarm executor
does not pass the IPAM options to the backend (daemon).
Also after service is deployed, `network inspect` is
actually querying the local daemon for information.
At this time the network information with missing IPAM
options is returned.

This fix fixes the issue by updating the swarm network
allocator and swarm executor.

A separate PR for swarmkit will be opened.

An integration test has been added to cover the change.

This fix fixes 29044.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-10 09:29:50 -08:00
Brian Goff
b1322e3de9 Merge pull request #29292 from yongtang/12092016-swarmkit-update
Update vendored swarmkit to 5a6df4b07d83e6dbd72e39e354c325dc9b91850f
2016-12-10 11:54:02 -05:00
Vincent Demeester
f7897afaff Merge pull request #29173 from lalyos/patch-2
Note about potential plugin issue when upgrading
2016-12-10 16:16:50 +01:00
Brian Goff
f29bbd16f5 Refcount graphdriver plugins properly
Adds 2 new methods to v2 plugin `Acquire` and `Release` which allow
refcounting directly at the plugin level instead of just the store.
Since a graphdriver is initialized exactly once, and is really managed
by a separate object, it didn't really seem right to call
`getter.Get()` to refcount graphdriver plugins.
On shutdown it was particularly weird where we'd either need to keep a
driver reference in daemon, or keep a reference to the pluggin getter in
the layer store, and even then still store extra details on if the
graphdriver is a plugin or not.

Instead the plugin proxy itself will handle calling the neccessary
refcounting methods directly on the plugin object.

Also adds a new interface in `plugingetter` to account for these new
functions which are not going to be implemented by v1 plugins.

Changes terms `plugingetter.CREATE` and `plugingetter.REMOVE` to
`ACQUIRE` and `RELEASE` respectively, which seems to be better
adjectives for what we're doing.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-09 19:46:28 -05:00
Yong Tang
3c1c992271 Revendor swarmkit to 5a6df4b07d83e6dbd72e39e354c325dc9b91850f
This fix updates swarmkit to 5a6df4b07d83e6dbd72e39e354c325dc9b91850f.

This fix is needed by #29074 (docker PR) and is related to
docker/swarmkit#1789 (swarmkit PR) and #29044

This fix may be needed for 1.13.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-09 16:28:51 -08:00
Anusha Ragunathan
001cbc4518 Merge pull request #29210 from vdemeester/integration-cli-extract-daemon
[integration-tests] extract daemon to its own package
2016-12-09 15:23:46 -08:00
Misty Stanley-Jones
66cbb5a552 Edits to plugin upgrade warning
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-12-09 14:50:36 -08:00
Victor Vieux
ab65ac6bc4 Merge pull request #29233 from aaronlehmann/vendor-swarmkit-5fe1f720
Update vendored swarmkit to 5fe1f720
2016-12-09 14:49:14 -08:00
Victor Vieux
8db25833b9 Merge pull request #29264 from andrewhsu/revert-pr-29081
Revert PR 29081 add selinux policy for centos-7
2016-12-09 14:48:52 -08:00
John Howard
30b8f08443 Windows: Prompt fix
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-09 14:27:53 -08:00
John Howard
e5900ee9bf Windows: Fix crash in docker system prune
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-09 14:23:25 -08:00
Sebastiaan van Stijn
7caf77ac18 Merge pull request #23480 from thaJeztah/remove-unsupported-distros
Remove unsupported distros from install script
2016-12-09 22:38:18 +01:00
Vincent Demeester
f4a34a1f06 Remove check.C field from daemon and Use errors package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-09 22:26:42 +01:00
Vincent Demeester
48de91a33f Extract daemon to its own package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-09 22:26:42 +01:00
Anusha Ragunathan
0a072e93df Merge pull request #26398 from tiborvass/plugin-fixes
plugins: container-rootfs-relative paths
2016-12-09 12:48:59 -08:00
Anusha Ragunathan
86a0de7fa9 Merge pull request #29281 from anusha-ragunathan/fix_race
Fix race in setting plugin refcounts.
2016-12-09 12:47:39 -08:00
Vincent Demeester
f2533c0266 Merge pull request #29275 from cpuguy83/set_inspect_type_emptyfs
Set inspect type in ensure-emptyfs
2016-12-09 21:40:58 +01:00
Lajos Papp
acd847cd56 Note about potential plugin issue when upgrading
Fixes: #29172
Fixes: https://github.com/docker/for-mac/issues/1000

Signed-off-by: Lajos Papp <lalyos@yahoo.com>
Signed-off-by: lalyos <lalyos@yahoo.com>
2016-12-09 19:32:28 +01:00
Tibor Vass
c54b717caf plugins: container-rootfs-relative paths
Legacy plugins expect host-relative paths (such as for Volume.Mount).
However, a containerized plugin cannot respond with a host-relative
path. Therefore, this commit modifies new volume plugins' paths in Mount
and List to prepend the container's rootfs path.

This introduces a new PropagatedMount field in the Plugin Config.
When it is set for volume plugins, RootfsPropagation is set to rshared
and the path specified by PropagatedMount is bind-mounted with rshared
prior to launching the container. This is so that the daemon code can
access the paths returned by the plugin from the host mount namespace.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-12-09 10:16:24 -08:00
allencloud
19654fd71e add missing status code 403 for services/create in docs
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-10 01:54:51 +08:00
Anusha Ragunathan
4c088d1e2e Fix race in setting plugin refcounts.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-12-09 09:34:30 -08:00
Anusha Ragunathan
9d884986f5 Merge pull request #28949 from yongtang/28717-docker-plugin-create
Use GetByName to check for collision before create any context in plugin creation
2016-12-09 09:12:08 -08:00
Vincent Demeester
b8e1553765 Merge pull request #29231 from Microsoft/jjh/dcocheck
Windows: make.ps1 fix DCO check
2016-12-09 17:07:31 +01:00
Brian Goff
b00f1c8623 Merge pull request #28976 from miaoyq/remove-a-redundant-func-and-fix-some-typos
Remove a redundant funtion and fix some typos
2016-12-09 08:44:05 -05:00
Brian Goff
71ca76e8f2 Set inspect type in ensure-emptyfs
This keeps the test daemon logs from being flooded with calls to lookup
emptyfs for other types.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-09 08:26:05 -05:00
Vincent Demeester
98e4a7edb6 Merge pull request #29245 from pengqinglan/doc-deprecated
fix some version information
2016-12-09 10:25:50 +01:00
Akihiro Suda
d1515a5264 Merge pull request #29244 from yuexiao-wang/fix-typos-eg
Fix a bit typos
2016-12-09 16:03:35 +09:00
Andrew Hsu
387b95216b Revert "add selinux policy for centos-7"
This reverts commit e0852bec96.

Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-08 16:27:48 -08:00
Andrew Hsu
28cfdc62bd Revert "add extra docker.te lines from rhel7.3 docker.spec"
This reverts commit 09e68fdd52.

Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-08 16:27:36 -08:00
Andrew Hsu
793be849c8 Revert "get rhel7.3 selinux-policy-devel pkg for centos-7"
This reverts commit bfe5cab13b.

Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-08 16:27:23 -08:00
Victor Vieux
9aa0c9a214 Merge pull request #29256 from tophj-ibm/ppc64le-move-to-go-bin
[ppc64le] use official go 1.7.4 binaries
2016-12-08 15:59:31 -08:00
Sebastiaan van Stijn
7ea31b4034 Merge pull request #29224 from vdemeester/check-no-errors
Use check in params so we don't ignore errors
2016-12-09 00:26:20 +01:00
Christy Perez
42969d44fc ppc64le rpmbuild
Add support for 'make rpm' on ppc64le. Currently only fedora 24.

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
2016-12-08 17:16:16 -05:00
Christopher Jones
62ab6809bd [ppc64le] use official go 1.7.4 binaries
go 1.7.4 introduced official go ppc64le binaries, so use those
instead of using older versions of go and building from src.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-12-08 16:18:10 -05:00
Victor Vieux
c1a1b381f9 Merge pull request #28459 from dmcgowan/plugin-repository-pinning
Plugin repository pinning
2016-12-08 11:28:52 -08:00
Sebastiaan van Stijn
032b5b21b6 Merge pull request #25860 from yongtang/1396-service-update-publish-rm
Return error for incorrect argument of `service update --publish-rm`
2016-12-08 20:09:56 +01:00
yuexiao-wang
11454e1c97 Fix a bit typos
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-09 03:05:11 +08:00
Vincent Demeester
58ad9177d7 Remove some unused global variables
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-08 19:51:42 +01:00
Brian Goff
3b31de62b9 Merge pull request #29142 from tophj-ibm/move-go-to-1.7.4
[project] bump go to go 1.7.4
2016-12-08 11:48:34 -05:00
Justin Cormack
68a423304e Merge pull request #28924 from xlgao-zju/fix-apparmor-load-profile
fix apparmor load profile
2016-12-08 08:47:27 -08:00
Sebastiaan van Stijn
4bc3b4d6aa Merge pull request #29092 from KingEmet/master
Add credential helper documentation
2016-12-08 15:29:35 +01:00
Sebastiaan van Stijn
cefda34773 Merge pull request #29020 from wefine/commands_order
Give a order to AddCommands, for better read and maintenance.
2016-12-08 15:13:22 +01:00
Sebastiaan van Stijn
e94a40cdda Merge pull request #29041 from aaronlehmann/hide-updatestatus
api: Hide UpdateStatus when it is not present
2016-12-08 13:55:13 +01:00
Sebastiaan van Stijn
fee2bb2682 Merge pull request #29144 from yongtang/29129-hostname-in-host-mode
Fix issue for `--hostname` when running in "--net=host"
2016-12-08 12:57:53 +01:00
Qinglan Peng
aa26364ce1 fix some version information
Signed-off-by: Qinglan Peng <qinglanpeng@zju.edu.cn>
2016-12-08 19:03:46 +08:00
Akihiro Suda
a75cb8c014 Merge pull request #29241 from lixiaobing10051267/masterNetworkLs
add SCOPE field content for docker network ls
2016-12-08 19:03:12 +09:00
Vincent Demeester
bcad3d5212 Use check in params so we don't ignore errors
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-08 10:56:29 +01:00
lixiaobing10051267
170fcead7e add SCOPE field content for docker network ls
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-08 17:13:38 +08:00
Sebastiaan van Stijn
16157034f6 Merge pull request #29237 from lixiaobing10051267/masterBreak
add break when found in TestVolumeCLICreateWithOpts()
2016-12-08 09:58:22 +01:00
wefine
6174adc4b3 Give a order to AddCommands, for easy read and maintenance.
Signed-off-by: wefine <wang.xiaoren@zte.com.cn>
2016-12-08 16:43:14 +08:00
lixiaobing10051267
feadc5171a add break when found in TestVolumeCLICreateWithOpts()
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-08 15:59:52 +08:00
Andrew Hsu
aec52767b9 validate changelog format
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-07 22:30:56 -08:00
Christopher Jones
20e243780e [project] bump go to go 1.7.4
Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-12-07 22:22:39 -05:00
Aaron Lehmann
4441e390d0 Update vendored swarmkit to 5fe1f720
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-07 18:06:28 -08:00
John Howard
e538c1fdca Windows: make.ps1 fix DCO check
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-07 17:58:07 -08:00
Anusha Ragunathan
9d898b872e Merge pull request #29191 from anusha-ragunathan/plugin_races
Make v2/Plugin accesses safe.
2016-12-07 17:52:44 -08:00
Victor Vieux
f644e758bd remove old media type compat for plugins
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-12-07 17:35:09 -08:00
Tõnis Tiigi
dca76ed50a Merge pull request #29104 from duglin/Issue29084
Fix processing of unset build-args during build
2016-12-07 17:18:55 -08:00
Tõnis Tiigi
1e92365a5f Merge pull request #29124 from ijc25/check-config-legacy-vsyscall
Caution against the use of CONFIG_LEGACY_VSYSCALL_NATIVE
2016-12-07 17:13:55 -08:00
Tõnis Tiigi
a039ca9aff Merge pull request #29139 from ehazlett/fix-api-cors-exec
Add headers when using exec
2016-12-07 17:10:31 -08:00
Tõnis Tiigi
c7d34a0ca5 Merge pull request #29190 from aaronlehmann/remove-registry-reference
registry: Remove reference.go
2016-12-07 16:53:52 -08:00
Tõnis Tiigi
51b422ce6a Merge pull request #29213 from yongtang/12072016-typo-swagger-yaml
Fix a couple of incorrect version strings in swagger.yaml
2016-12-07 16:47:49 -08:00
Michael Crosby
a42ca21f50 Merge pull request #29200 from coolljt0725/fix_attach
fix #29199, reset container if container start failed
2016-12-07 15:21:28 -08:00
Vincent Demeester
9468d687ac Merge pull request #29062 from erxian/refine-api-swagger.yaml-towards-image-create-status-code
refine api swagger.yaml towards image create status code
2016-12-07 22:03:54 +01:00
Jake Sanders
68211f4cb4 Add credential helper documentation
Signed-off-by: Jake Sanders <jsand@google.com>
2016-12-07 10:14:28 -08:00
Justin Cormack
74ecec9199 Merge pull request #29174 from lhsvobodaj/29132-add-build-args-to-build-deb-script
Add variable DOCKER_BUILD_ARGS to build-deb script
2016-12-07 09:02:47 -08:00
Yong Tang
887c4188f4 Fix a couple of incorrect version string in swagger.yaml
This fix fixes a couple of incorrect version strings in swagger.yaml
`v1.25` should be `v1.26`. This applies to 1.14 version only.

Also checked 1.13rc and it is fine.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-07 08:11:12 -08:00
Doug Davis
cdb8ea90b0 Fix processing of unset build-args during build
This reverts 26103.  26103 was trying to make it so that if someone did:
  docker build --build-arg FOO .
and FOO wasn't set as an env var then it would pick-up FOO from the
Dockerfile's ARG cmd.  However, it went too far and removed the ability
to specify a build arg w/o any value. Meaning it required the --build-arg
param to always be in the form "name=value", and not just "name".

This PR does the right fix - it allows just "name" and it'll grab the value
from the env vars if set. If "name" isn't set in the env then it still needs
to send "name" to the server so that a warning can be printed about an
unused --build-arg. And this is why buildArgs in the options is now a
*string instead of just a string - 'nil' == mentioned but no value.

Closes #29084

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-12-07 07:41:55 -08:00
Brian Goff
8b7d076425 Merge pull request #29195 from vdemeester/integration-test-shell-dont-run-if-compilation-failure
Make sure we don't run integration cli test if compilation fails
2016-12-07 10:35:30 -05:00
Brian Goff
145fa77817 Merge pull request #29061 from allencloud/forbid-leave-when-swarm-locked
not export errors and forbid leave without --force when unlocked
2016-12-07 10:30:28 -05:00
Vincent Demeester
9b91c7e423 Merge pull request #29201 from lixiaobing10051267/masterVar4
modify URLs for bind docker in docs/api
2016-12-07 16:30:02 +01:00
Vincent Demeester
d23bb3d083 Merge pull request #29202 from sdurrheimer/zsh-completion-network-attachable
Add zsh completion for 'docker network create --attachable'
2016-12-07 09:18:22 +01:00
Steve Durrheimer
bce11a29f8 Add zsh completion for 'docker network create --attachable'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-12-07 08:09:42 +01:00
lixiaobing10051267
9c76fb253e modify URLs for bind docker in docs/api
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-07 15:06:16 +08:00
Lei Jitang
e806821b53 fix #29199, reset container if container start failed
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-12-07 01:37:08 -05:00
allencloud
7bdd1a4f9c not export errors and forbid leave when unlocked
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-07 13:25:34 +08:00
Andrea Luzzardi
bbd2018ee1 service ps: Revert output to 1.12 behavior.
- Display the ID column
- Do not append the task ID in the name column
- (NEW): Truncate task IDs, unless --no-trunc is specified

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-12-06 18:52:47 -08:00
erxian
15be050fb3 refine api swagger.yaml towards image create status code
Signed-off-by: erxian <evelynhsu21@gmail.com>
2016-12-07 10:27:40 +08:00
John Howard
9249b29348 Merge pull request #29186 from yongtang/29185-docker-inspect-unknown-object
Fix `docker inspect <unkown object>` issue on Windows
2016-12-06 18:23:08 -08:00
Aaron Lehmann
d91ed88365 registry: Remove reference.go
This removes some very old vestigial code that really should have been
removed during the content addressability transition. It implements
something called "reference" but it behaves differently from the actual
reference package. This was only used by client-side content trust code,
and is relatively easy to extricate.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-06 15:53:21 -08:00
Vincent Demeester
aefbc03444 Make sure we don't run integration cli test if compilation fails
Otherwise, while using test-integration-shell, it runs the tests using
the previously compiled test binary.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-06 23:37:08 +01:00
Aleksa Sarai
567ef8e785 daemon: switch to 'ensure' workflow for AppArmor profiles
In certain cases (unattended upgrades), system services can disable
loaded AppArmor profiles. However, since /etc being read-only is a
supported setup we cannot just write a copy of the profile to
/etc/apparmor.d.

Instead, dynamically load the docker-default AppArmor profile if a
container is started with that profile set. This code will short-cut if
the profile is already loaded.

Fixes: 2f7596aaef ("apparmor: do not save profile to /etc/apparmor.d")
Signed-off-by: Aleksa Sarai <asarai@suse.de>
2016-12-07 08:47:28 +11:00
Anusha Ragunathan
b35490a8ba Make v2/Plugin accesses safe.
v2/Plugin struct had fields that were
- purely used by the manager.
- unsafely exposed without proper locking.
This change fixes this, by moving relevant fields to the manager as well
as making remaining fields as private and providing proper accessors for
them.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-12-06 13:23:41 -08:00
Yong Tang
88fcdb0a82 Fix docker inspect <unkown object> issue on Windows
This fix tries to address the issue raised on 29185 where
`docker inspect <unknown object>` on Windows will return:
```
Error response from daemon: plugins are not supported on this platform
```

The reason was that in case `--type` is not specified, `docker inspect`
will iterate through different types `container`, `image`, `network`,
`plugin` etc. The `plugin` object is the last type to check.

However, as `plugin` is not supported on Windows yet, the error message
is not very informative for `plugins are not supported on this platform`.

This fix tries to fix the issue by return a `not found` error on unsupported
platforms as well.

An integration test has been added to cover the changes for Windows/Linux.

This fix fixes 29185.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-06 12:05:59 -08:00
Evan Hazlett
f86db80b5f add headers when using exec
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>

ensure headers are properly sanitized

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2016-12-06 14:27:34 -05:00
Tõnis Tiigi
eefbf1ddd3 Merge pull request #28907 from tonistiigi/cluster-refactor
Switch cluster locking strategy
2016-12-06 10:02:23 -08:00
Sebastiaan van Stijn
9ec471049d Merge pull request #29182 from albers/completion-network-create--attachable
Add bash completion for `docker network create --attachable`
2016-12-06 18:52:55 +01:00
Harald Albers
8d2e789bbc Add bash completion for docker network create --attachable
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-06 08:44:02 -08:00
Brian Goff
b7ab3276c2 Merge pull request #29081 from andrewhsu/fix-rhel73
add selinux policy for centos-7
2016-12-06 11:00:45 -05:00
Yong Tang
b0a7b0120f Fix issue for --hostname when running in "--net=host"
This fix tries to address the issue raised in 29129 where
"--hostname" not working when running in "--net=host" for
`docker run`.

The fix fixes the issue by not resetting the `container.Config.Hostname`
if the `Hostname` has already been assigned through `--hostname`.

An integration test has been added to cover the changes.

This fix fixes 29129.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-06 07:29:45 -08:00
Brian Goff
11702c66cf Merge pull request #28823 from AkihiroSuda/ensure-dev-pts-readonly
add a test for ensuring the behavior of read-only /dev/shm
2016-12-06 08:39:43 -05:00
Antonio Murdaca
fa45184713 Merge pull request #29153 from aaronlehmann/volume-refs-map
volume: Use a map of maps for VolumeStore.refs
2016-12-06 14:35:18 +01:00
Luiz Svoboda
63aaf5e316 Add variable DOCKER_BUILD_ARGS to build-deb script
Some containers were being built (`docker build`) without
the DOCKER_BUILD_ARGS variable, which was causing some
issues because of the lack of network proxy configuration.

Fixes #29132

Signed-off-by: Luiz Svoboda <luizek@gmail.com>
2016-12-06 10:17:41 -02:00
Sebastiaan van Stijn
080d7a5543 Merge pull request #29145 from Microsoft/jjh/make
Windows: make.ps1 Throw exception on failure
2016-12-06 12:10:56 +01:00
Sebastiaan van Stijn
96a2d9e7d2 Merge pull request #29149 from Microsoft/jjh/dockerfileclarification
Windows: Dockerfile 2GB clarification Hyper-V
2016-12-06 12:10:03 +01:00
Sebastiaan van Stijn
f687eb576f Merge pull request #29166 from allencloud/add-403-for-network-create-endpoint
add 403 for endpoint network create
2016-12-06 11:47:28 +01:00
Vincent Demeester
7f9ba93914 Merge pull request #29073 from adshmh/28756-print-checkpoint-name-in-checkpoint-create-command
Print checkpoint id when creating a checkpoint
2016-12-06 11:06:29 +01:00
Vincent Demeester
57d77cc205 Merge pull request #28896 from yongtang/28884-secret-name-mask-ID
Fix issue where secret ID is masked by name
2016-12-06 11:05:30 +01:00
Vincent Demeester
745795ef2e Merge pull request #28535 from yongtang/28497-prune-until
Convert DanglingOnly to Filters for `docker image prune`
2016-12-06 11:03:45 +01:00
Vincent Demeester
08f0100d50 Merge pull request #28974 from AkihiroSuda/test-service-logs
improve TestServiceLogs for the goroutine issue #28915
2016-12-06 10:58:57 +01:00
Vincent Demeester
8326dcd2af Merge pull request #29159 from Microsoft/jjh/bumpgit
Windows: Bump to latest version of git
2016-12-06 10:30:33 +01:00
Vincent Demeester
67131bde6d Merge pull request #29096 from cyli/fix-swarmjoinpromote-test
Fix DockerSwarmSuite.TestSwarmJoinPromoteLocked flakiness
2016-12-06 10:19:36 +01:00
Sebastiaan van Stijn
b4618baf68 Merge pull request #29162 from friism/patch-8
Windows: make.ps1 - remove bonus whitespace
2016-12-06 10:18:42 +01:00
Akihiro Suda
e8a2c7196a Merge pull request #28939 from duglin/HideDupWarnings
Only show global warnings once
2016-12-06 16:12:34 +09:00
allencloud
0d21e24b9f add 403 for endpoint network create
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-06 14:36:50 +08:00
Akihiro Suda
268991a9f5 Merge pull request #29136 from cpuguy83/pkgcache_use_volume
Use named volumes for docker pkg cache
2016-12-06 14:26:10 +09:00
Michael Friis
8d47858f96 remove bonus whitespace
Signed-off-by: Michael Friis <friism@gmail.com>
2016-12-05 20:21:25 -08:00
Akihiro Suda
f8a93d0c9d improve TestServiceLogs for the goroutine issue #28915
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-06 03:44:49 +00:00
Akihiro Suda
46ade6acb5 add a test for ensuring the behavior of read-only /dev/shm
The test ensures that `docker run --read-only -v /var/empty:/dev/shm:ro`
makes /dev/shm read-only

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-06 03:44:02 +00:00
zhangxianwei
2dfb57b670 Fix typo in integration-cli (#29160)
Signed-off-by: xianwei <xianwei.zw@alibaba-inc.com>
2016-12-05 22:23:41 -05:00
John Howard
8a45eea2dd Windows: Bump to latest version of git
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-05 18:40:31 -08:00
Brian Goff
c9623d1b76 Use named volumes for docker pkg cache
Changes the default when incremental build is enabled to use named
volumes instead of bindmounts.
The reason for this is, on Mac/Windows the bind mounts will go over the
shared fs, which is incredibly slow and itself uses lots of CPU.

Makes an incremental build on OSX go from ~40s to 10s.

To get the old behavior, can set `PKGCACHE_DIR=.go-pkg-cache`

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-05 20:42:08 -05:00
Brian Goff
1f09d68a6e Merge pull request #29123 from vdemeester/29116-compose-to-swarm-logging
Handle logging in compose to swarm
2016-12-05 20:39:08 -05:00
Victor Vieux
29e728e9b2 Merge pull request #29082 from runcom/fix-rpm-buildtime
hack/make.sh: fix BUILDTIME
2016-12-05 16:31:29 -08:00
Aaron Lehmann
a762222396 volume: Use a map of maps for VolumeStore.refs
The current implementation of getRefs is a bit fragile. It returns a
slice to callers without copying its contents, and assumes the contents
will not be modified elsewhere.

Also, the current implementation of Dereference requires copying the
slice of references, excluding the one we wish to remove.

To improve both of these things, change refs to be a map of maps.
Deleting an item becomes trivial, and returning a slice of references
necessitates copying from the map.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-05 15:39:05 -08:00
John Howard
f7b4d65445 Windows: Dockerfile 2GB clarification Hyper-V
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-05 14:01:17 -08:00
John Howard
8c93a41044 Windows: make.ps1 calc root
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-05 13:26:04 -08:00
cyli
e831a7cdb7 In DockerSwarmSuite.TestSwarmJoinPromoteLocked, actually wait for the node to
finish being demoted before restarting it and ensuring it isn't locked anymore
to reduce test flakiness.

Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-12-05 13:21:27 -08:00
Tibor Vass
1c96879f1e Merge pull request #28963 from vieux/refactor_plugin_install
refactor plugin install
2016-12-05 12:00:29 -08:00
Brian Goff
04cd1990b4 Merge pull request #29117 from AkihiroSuda/vendor-swarmkit
[master] Vendor swarmkit
2016-12-05 14:11:21 -05:00
Vincent Demeester
ac9226d843 Merge pull request #29134 from unclejack/gofmt_fixes
api/types/container,client: gofmt
2016-12-05 19:26:25 +01:00
Sebastiaan van Stijn
6a8156d646 Merge pull request #29115 from andrewhsu/fix-vim-install
run dnf upgrade before installing in fedora
2016-12-05 19:05:14 +01:00
John Howard
8c22a00b77 Windows: make.ps1 Throw exception on failure
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-05 09:58:56 -08:00
Daniel Nephin
86faf137f9 Merge pull request #29121 from AkihiroSuda/fix-it-bundle
Fix bundle dir for integration-cli
2016-12-05 10:50:29 -05:00
unclejack
c1ce63b17b api/types/container,client: gofmt
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
2016-12-05 17:00:36 +02:00
Vincent Demeester
806cc1e0f8 Handle logging in compose to swarm
Logging configuration was completely ignore when deploy a compose file
to swarm. This fixes it.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-05 15:18:36 +01:00
Sebastiaan van Stijn
2ef729460d Merge pull request #29111 from albers/fix-completion-service-create-update
Fix bash completion for `docker service create|update
2016-12-05 15:16:23 +01:00
Brian Goff
602efb0cab Merge pull request #29109 from albers/completion-secrets
Add bash completion for secret management
2016-12-05 09:13:26 -05:00
Aleksa Sarai
e440a57a79 apparmor: switch IsLoaded to return bool
Signed-off-by: Aleksa Sarai <asarai@suse.de>
2016-12-06 00:10:08 +11:00
Vincent Demeester
f7862482ce Merge pull request #29113 from albers/completion-version--format
Add bash completion for `docker version --format`
2016-12-05 11:47:24 +01:00
Ian Campbell
49dcce7ba0 Caution against the use of CONFIG_LEGACY_VSYSCALL_NATIVE
It provides an ASLR-bypassing target with usable ROP gadgets.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-12-05 10:13:07 +00:00
Akihiro Suda
4522f14f8c Fix bundle dir for integration-cli
test.main was unexpectedly created under docker/integration-cli/bundles/VERSION/test-integration-cli directory.
This commit moves test.main to docker/bundles/VERSION/test-integration-cli.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-05 09:07:38 +00:00
Akihiro Suda
7375507eea Vendor swarmkit
Update swarmkit to deec7ba2c4ef48f20ebe9674afbcced606a5339e, from the master branch.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-05 04:56:40 +00:00
Anusha Ragunathan
24ffa2fa77 Merge pull request #28967 from yongtang/28946-support-plugin-docker-inspect
Support plugin type in `docker inspect`
2016-12-04 18:30:38 -08:00
Andrew Hsu
ebd804bfb6 run dnf upgrade before installing in fedora
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-04 16:29:03 -08:00
Harald Albers
3d43c48c1b Add bash completion for docker version --format
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-04 14:13:14 -08:00
Harald Albers
be5685e4bf Fix bash completion for `docker service create|update
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-04 12:11:33 -08:00
Harald Albers
324dd3cfec Add bash completion for secret management
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-04 11:25:41 -08:00
Sebastiaan van Stijn
eab3711999 Merge pull request #29106 from chrisgavin/docs-spelling-fix
Fix a spelling mistake in the docs.
2016-12-04 14:17:27 +01:00
Chris Gavin
35c82f422d Fix a spelling mistake in the docs.
Signed-off-by: Chris Gavin <chris@chrisgavin.me>
2016-12-04 12:55:00 +00:00
Sebastiaan van Stijn
d80fd833e7 Merge pull request #29098 from DieterReuter/add-support-for-qemu-builds
Add support for running builds within an QEMU emulation
2016-12-03 23:25:46 +01:00
Dieter Reuter
0d7e118f01 Add support for running builds within an QEMU emulation
With this change we can run a Docker build in QEMU and build ARM or ARM64 binaries directly on an Intel build machine. This feature already supports building with Docker4Mac (Beta31). So it's easy for a developer to compile and test the Docker binaries locally on his dev machine w/o the need of the target hardware. Another use case would be to run builds on a clound CI like Travis to get an instant feedback loop for PR's, all on a common Intel platform w/o the need to set up the CI system on the target hardware.

Usage: build static Docker binaries for ARM 32-bit
```
DOCKER_ENGINE_OSARCH="linux/arm" make binary
```

Usage: build static Docker binaries for ARM64 aka AARCH64
```
DOCKER_ENGINE_OSARCH="linux/arm64" make binary
```

Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
2016-12-03 13:53:59 +01:00
Antonio Murdaca
7b1f77dcbc hack/make.sh: fix BUILDTIME
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-12-03 09:09:41 +01:00
Yong Tang
3638ca4d14 Fix issue where secret ID is masked by name
This fix tries to address the issue in 28884 where
it is possible to mask the secret ID by name.

The reason was that searching a secret is based on name.
However, searching a secret should be done based on:
- Full ID
- Full Name
- Partial ID (prefix)

This fix addresses the issue by changing related implementation
in `getCliRequestedSecretIDs()`

An integration test has been added to cover the changes.

This fix fixes 28884

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-02 20:24:29 -08:00
Yong Tang
a6be56b54e Convert DanglingOnly to Filters for docker image prune
This fix convert DanglingOnly in ImagesPruneConfig to Filters,
so that it is possible to maintain API compatibility in the future.

Several integration tests have been added to cover changes.

This fix is related to 28497.

A follow up to this PR will be done once this PR is merged.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-02 20:08:49 -08:00
Brian Goff
3cb310c210 Merge pull request #28988 from vdemeester/28985-dont-validate-hostname
Remove hostname validation as it seems to break users
2016-12-02 21:16:56 -05:00
Sebastiaan van Stijn
51c5718aa3 Merge pull request #28735 from yongtang/28708-plugin-list-id
Add `ID` field for `docker plugin ls`
2016-12-03 02:37:09 +01:00
Tibor Vass
6dff86f8b3 Merge pull request #29064 from vdemeester/29005-revert-builder-comments-line
Revert "Fix dockerfile parser with empty line after escape"
2016-12-02 17:11:18 -08:00
Sebastiaan van Stijn
535db46be5 Merge pull request #28349 from allencloud/add-missing-code-in-api-docs
add missing status code of swarm cluster in api 1.24
2016-12-03 02:04:05 +01:00
Victor Vieux
30db51c169 update docs
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-12-02 15:24:11 -08:00
Victor Vieux
fa3b61a28f refactor plugin install
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-12-02 15:23:08 -08:00
Victor Vieux
42aafe725f Merge pull request #28994 from cpuguy83/allow_vol_recreate_for_same_driver
Fix out-of-band vol delete+create for same driver
2016-12-02 15:12:13 -08:00
Arnaud Porterie
07489b8e79 Merge pull request #29090 from vieux/update_poule_config
update poule.yml
2016-12-02 15:06:26 -08:00
Sebastiaan van Stijn
ab56641ab5 Merge pull request #28964 from Microsoft/jjh/make
Windows: make.ps1 and dockerfile for native builds
2016-12-02 23:56:42 +01:00
Victor Vieux
d2920bb311 update poule.yml
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-12-02 14:54:34 -08:00
Andrew Hsu
bfe5cab13b get rhel7.3 selinux-policy-devel pkg for centos-7
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-02 14:39:24 -08:00
Andrew Hsu
09e68fdd52 add extra docker.te lines from rhel7.3 docker.spec
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-02 14:18:58 -08:00
Yong Tang
8a226ed643 Add ID field for docker plugin ls
This fix tries to address the enhancement proposed in 28708 to display
ID field for the output of `docker plugin ls`.

This fix add `ID` field to the output of `docker plugin ls`

Related docs has been updated.

This fix fixes 28708.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-02 13:42:50 -08:00
Alexander Morozov
0fb0d67008 Merge pull request #29075 from cpuguy83/29070_fix_tmpfs_opts
Fix issue where TmpfsOptions are not sent to swarm
2016-12-02 13:40:20 -08:00
Yong Tang
90bb2cdb9f Support plugins in docker inspect
This fix tries to address the proposal raised in 28946
to support plugins in `docker inspect`.

The command `docker inspect` already supports
"container", "image", "node", "network", "service", "volume", "task".
However, `--type plugin` is not supported yet at the moment.

This fix address this issue by adding the support of `--type plugin`
for `docker inspect`.

An additional integration test has been added to cover the changes.

This fix fixes 28946.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-02 11:33:29 -08:00
Brian Goff
bed5a0bc2c Merge pull request #29077 from dnephin/fix-swagger-gen-validate
Fix swagger-gen validation
2016-12-02 14:08:46 -05:00
John Howard
155435b6ce Windows: make.ps1 and Dockerfile for native builds
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-02 10:46:15 -08:00
Andrew Hsu
e0852bec96 add selinux policy for centos-7
This policy is from commit
583a67ffdf

Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-12-02 10:26:00 -08:00
Brian Goff
fddb5a7f2a Merge pull request #29069 from vdemeester/29031-manpages-buildarg
Use DOCKER_BUILD_ARGS on manpages make target
2016-12-02 12:30:36 -05:00
Alexander Morozov
6e023ac748 Merge pull request #29039 from thaJeztah/fix-restart-limit-validation
Fix restartpolicy max-retry validation
2016-12-02 09:19:54 -08:00
Daniel Nephin
334366cdd9 Merge pull request #29071 from bfirsh/29045-use-singular-tag-names-in-swagger
Use singular tag names in swagger.yaml
2016-12-02 12:13:20 -05:00
Daniel Nephin
f247a99c6d Fix swagger-gen validation.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-02 12:11:35 -05:00
Anusha Ragunathan
57ace38103 Merge pull request #28789 from yongtang/28735-plugin-inspect-id-or-name
Allow `docker plugin inspect` to search based on ID or name
2016-12-02 08:46:47 -08:00
Brian Goff
a5b3649bfa Fix issue where TmpfsOptions are not sent to swarm
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-02 11:43:47 -05:00
Vincent Demeester
1c69680641 Merge pull request #28738 from sathieu/debootstrap_errors
Improve error reporting in mkimage/debootstrap
2016-12-02 17:41:08 +01:00
Alexander Morozov
8895ee0b4d Merge pull request #29043 from duglin/Issue29014
Fix use of **/ in .dockerignore
2016-12-02 08:34:45 -08:00
Kenfe-Mickaël Laventure
2a3bbe571e Merge pull request #29066 from albers/completion-deploy
Add bash completion for experimental `docker deploy`
2016-12-02 07:54:42 -08:00
Kenfe-Mickaël Laventure
1603547700 Merge pull request #25851 from KingEmet/master
Add registry-specific credential helper support, take 2
2016-12-02 07:32:45 -08:00
Ben Firshman
30a9249e15 Use singular tag names in swagger.yaml
This is required to make the type generation put things in the
correct directory, but unfortunately makes the names in the
documentation menu look a bit crap.

I think the best solution would be to add a `x-display-name`
extension to tags to determine how the tags show up in the menu,
rather than it depend on the name of the tag. I shall do this in
a follow-up PR - for now, let's fix the breakage.

Fixes #29045

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-12-02 14:14:36 +00:00
Brian Goff
3d1383f834 Merge pull request #29046 from thaJeztah/pin-swagger-version
pin go-swagger 0.7.4
2016-12-02 08:41:21 -05:00
Vincent Demeester
58505ffdee Use DOCKER_BUILD_ARGS on manpages make target
This make it more consistent with the other image builds and allow to
build manpages behind a proxy for example.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-02 14:20:30 +01:00
Vincent Demeester
6e0666e622 Revert "Fix dockerfile parser with empty line after escape"
This reverts commit 3e1b539e8d.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-02 14:15:55 +01:00
Harald Albers
10f567ec6a Add bash completion for experimental docker deploy
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-02 04:28:10 -08:00
Harald Albers
af84b7e441 Allow selective activation of experimental features in bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
2016-12-02 04:28:10 -08:00
Doug Davis
376bb84c5c Fix use of **/ in .dockerignore
.dockerignore pattern of **/.foo incorrectly matched **/bar.foo
because **/.foo was getting converted into a .*\.foo regex
instead of (.*/)*\.foo

Closes #29014

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-12-02 03:58:54 -08:00
Arash Deshmeh
f1df2d5a2e Print checkpoint id when creating a checkpoint
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
2016-12-01 23:30:14 -05:00
allencloud
9a1f7b6b0b add missing status code in api docs
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-12-02 11:24:45 +08:00
Yong Tang
c4d773cdfe Return error for incorrect argument of service update --publish-rm <TargetPort>
Currently `--publish-rm` only accepts `<TargetPort>` or `<TargetPort>[/Protocol]`
though there are some confusions.

Since `--publish-add` accepts `<PublishedPort>:<TargetPort>[/Protocol]`, some user
may provide `--publish-rm 80:80`. However, there is no error checking so the incorrect
provided argument is ignored silently.

This fix adds the check to make sure `--publish-rm` only accepts `<TargetPort>[/Protocol]`
and returns error if the format is invalid.

The `--publish-rm` itself may needs to be revisited to have a better UI/UX experience,
see discussions on:
https://github.com/docker/swarmkit/issues/1396
https://github.com/docker/docker/issues/25200#issuecomment-236213242
https://github.com/docker/docker/issues/25338#issuecomment-240787002

This fix is short term measure so that end users are not misled by the silently ignored error
of `--publish-rm`.

This fix is related to (but is not a complete fix):
https://github.com/docker/swarmkit/issues/1396

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-01 17:46:53 -08:00
Sebastiaan van Stijn
9db5d649ae Fix restartpolicy max-retry validation
the restart policy validation was moved from
the client to the daemon in 94e95e4711

As part of that change, retry-counts < 1
were marked as "invalid".

However, the default is 0 (unlimited), causing

    docker run -d --restart=on-failure nginx

To fail.

This changes the validation to only invalidate
retry-counts < 0.

A test was added, and other tests renamed
to allow running just these tests :)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-02 02:39:16 +01:00
Sebastiaan van Stijn
ba20c3e65e pin go-swagger 0.7.4
This pins the version of go-swagger used, because
the results generated by different versions
can differ quite a bit (tested between 0.7.2 - 0.7.4),
and can cause CI / validation to fail.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-02 01:36:46 +01:00
Aaron Lehmann
0e70d96a68 api: Hide UpdateStatus when it is not present
When UpdateStatus was not present, the empty values of the timestamps
would be present:

        "UpdateStatus": {
            "StartedAt": "0001-01-01T00:00:00Z",
            "CompletedAt": "0001-01-01T00:00:00Z"
        }

To fix this, make the timestamps pointers, so they can be set to nil
when they should not be shown.

Also make UpdateStatus itself a pointer, so an empty object does not
show up when there is no UpdateStatus.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-12-01 15:08:41 -08:00
Justin Cormack
a756c1ac65 Merge pull request #28996 from Microsoft/jjh/sqlite-remove-windows
Windows: Factor out sqlite
2016-12-01 13:56:11 -08:00
Mathieu Parent
ee75c3fca2 Improve error reporting in mkimage/debootstrap
Signed-off-by: Mathieu Parent <math.parent@gmail.com>
2016-12-01 21:27:10 +01:00
Aaron Lehmann
0020398c74 Merge pull request #28997 from cyli/fix-flakey-test
Update the `TestSwarmLockUnlockCluster` test to be less flakey.
2016-12-01 11:32:30 -08:00
Yong Tang
0ce6e070f7 Allow docker plugin inspect to search based on ID or name
This fix tries to address the issue raised in discussion of
PR 28735 where it was not possible to manage plugin based on
plugin ID. Previously it was not possible to invoke
`docker plugin inspect` with a plugin ID (or ID prefix).

This fix updates the implementation of `docker plugin inspect`
so that it is possbile to search based on a plugin name, or a
plugin ID. A short format of plugin ID (prefix) is also possible,
as long as there is no ambiguity.

Previously the check of `docker plugin inspect` was mostly done
on the client side. This could potentially cause inconsistency
between API and CMD. This fix move all the checks to daemon side
so that API and CMD will be consistent.

An integration test has been added to cover the changes.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-12-01 10:44:17 -08:00
Jake Sanders
07c4b4124b Add registry-specific credential helper support
Signed-off-by: Jake Sanders <jsand@google.com>
2016-12-01 10:29:00 -08:00
John Howard
3f6127b173 Windows: Factor out sqlite
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-01 09:38:08 -08:00
Tõnis Tiigi
0a5cb187b4 Merge pull request #29015 from coolljt0725/fix_restore_panic
Fix docker restart panic on machine ungracefully shutdown
2016-12-01 08:38:02 -08:00
Sebastiaan van Stijn
3879ded936 Merge pull request #29026 from yuexiao-wang/fix-client-test
Optimize the log info for client test
2016-12-01 16:30:07 +01:00
yuexiao-wang
40b8ff6243 Optimize the log info for client test
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-02 03:32:04 +08:00
Justin Cormack
a227ea62e6 Merge pull request #29027 from runcom/fix-jq
contrib: download-frozen-image-v2.sh requires jq
2016-12-01 06:26:59 -08:00
Justin Cormack
006e23c63a Merge pull request #29028 from yuexiao-wang/fix-func-name
Fix the inconsistent function name for client
2016-12-01 06:26:28 -08:00
yuexiao-wang
16233eb055 Fix the inconsistent function name for client
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-02 04:18:02 +08:00
Antonio Murdaca
887bc48319 contrib: download-frozen-image-v2.sh requires jq
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-12-01 12:40:58 +01:00
Sebastiaan van Stijn
c34efaeca0 Merge pull request #29025 from lixiaobing10051267/masterManUrl2
rectify several wrong URLs in branch of man
2016-12-01 12:33:35 +01:00
lixiaobing10051267
576780369f rectify several wrong URLs in branch of man
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-01 19:35:27 +08:00
Justin Cormack
31d4d9e996 Merge pull request #29019 from lixiaobing10051267/masterRunCOnfig
check testing code for runconfig and volume
2016-12-01 03:00:43 -08:00
Sebastiaan van Stijn
a3be176f13 Merge pull request #28922 from yuexiao-wang/fix-secret
Fix the inconsistency for secret ls and secrect rm
2016-12-01 11:29:58 +01:00
Vincent Demeester
782f0ed73d Merge pull request #29009 from yuexiao-wang/fix-secret-create
Fix the usage for secret create
2016-12-01 11:29:45 +01:00
yuexiao-wang
5cef55ba91 Fix the use for secret create
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-12-01 19:48:33 +08:00
lixiaobing10051267
b3e5137856 check testing code for runconfig and volume
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-12-01 17:07:38 +08:00
Lei Jitang
267422e4d0 Fix docker restart panic on machine ungracefully shutdown
Machine ungracefully shutdown leaves a lot of container has a
Running=true state.

```
$ cat config.v2.json | jq .

    "Running": true,
    "Paused": false,
    "Restarting": false,

```

And the next docker start will fail with panic.

```

time="2016-12-01T01:54:45.086446715-05:00" level=warning msg="libcontainerd: client is out of sync, restore was called on a fully synced container (49f41ad5ca0be860622d9190673b5816d012022fb2c1794560ec4851e7cfec6a)."
time="2016-12-01T01:54:45.087046004-05:00" level=warning msg="libcontainerd: failed to retrieve container 49f41ad5ca0be860622d9190673b5816d012022fb2c1794560ec4851e7cfec6a state: rpc error: code = 2 desc = containerd: container not found"
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x5db7f3]

goroutine 57 [running]:
panic(0x16a8e60, 0xc420010130)
        /usr/local/go/src/runtime/panic.go:500 +0x1a1
github.com/docker/docker/libcontainerd.(*client).Restore(0xc4202e1a40, 0xc420415000, 0x40, 0xc42015a0b0, 0x0, 0x0, 0x0, 0x0, 0x0)
        /go/src/github.com/docker/docker/libcontainerd/client_linux.go:457 +0x553
github.com/docker/docker/daemon.(*Daemon).restore.func1(0xc4201c46f0, 0xc4202581e0, 0xc4201c46e8, 0xc42047bfb0, 0xc42047bf80, 0xc42047bf50, 0xc42024ba10, 0xc420512c00)
        /go/src/github.com/docker/docker/daemon/daemon.go:205 +0x198
created by github.com/docker/docker/daemon.(*Daemon).restore
        /go/src/github.com/docker/docker/daemon/daemon.go:260 +0x7bb

```

Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-12-01 02:25:24 -05:00
Tonis Tiigi
b7ea1bdb02 Switch cluster locking strategy
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-30 14:59:12 -08:00
Sebastiaan van Stijn
457d562af1 Merge pull request #28917 from erxian/correct-secret-remove-http-return-code
correct the http return code of secret remove
2016-11-30 22:47:28 +01:00
Vincent Demeester
849f659fd9 Merge pull request #28944 from albers/completion-inspect-more-types
Add more types to bash completion of `docker inspect`
2016-11-30 22:28:13 +01:00
Alexander Morozov
6151ad19ad Merge pull request #28797 from miaoyq/fix-a-err-of-logger
Fix a error of the function 'CopyMessage' in 'daemon/logger/logger.go'
2016-11-30 13:27:40 -08:00
Alexander Morozov
e0681ad0fe Merge pull request #28782 from mlaventure/fix-race-in-restore
Fix race with containerd events stream on restore
2016-11-30 13:26:27 -08:00
Ahmed Kamal
4addda3f07 zfs: expose mountpoint/dataset on inspection
Signed-off-by: Ahmed Kamal <email.ahmedkamal@googlemail.com>
2016-11-30 23:20:42 +02:00
cyli
6a5b8a640a Update the swarm cluster lock/unlock tests to be less flakey.
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-11-30 13:00:36 -08:00
Vincent Demeester
9d47927984 Merge pull request #28980 from lixiaobing10051267/masterReference
checkt t.Fatalf information for reference path
2016-11-30 21:49:26 +01:00
Alexander Morozov
4b3740d009 Merge pull request #28978 from lixiaobing10051267/masterMan
modify some urls related to reference path
2016-11-30 12:04:00 -08:00
Alexander Morozov
53d69aeb74 Merge pull request #28885 from vdemeester/revert-service-ps-all
Revert "Add -a option to service/node ps"
2016-11-30 12:02:34 -08:00
Alexander Morozov
caaa52c124 Merge pull request #28838 from AkihiroSuda/remove-run-mount
[Revert #26825] cli: remove `--mount` from `docker run`
2016-11-30 11:56:42 -08:00
Alexander Morozov
466dd8585d Merge pull request #28864 from sdurrheimer/zsh-completion-stack
Add zsh completion for 'docker stack' subcommand
2016-11-30 11:56:03 -08:00
Alexander Morozov
d9bd5aa186 Merge pull request #28746 from albers/completion-stack
Add bash completion for `docker stack`
2016-11-30 11:53:46 -08:00
Alexander Morozov
0bf4510a53 Merge pull request #28784 from thaJeztah/add-some-adjectives
Add some adjectives to the namesgenerator
2016-11-30 11:46:56 -08:00
Alexander Morozov
33b7596902 Merge pull request #28975 from mavenugo/ln113
Vendoring libnetwork to address some concurrency issues
2016-11-30 11:40:12 -08:00
Tõnis Tiigi
dd20fa60b4 Merge pull request #28926 from coolljt0725/fix_save
Fix docker save with empty timestamp of layer created time
2016-11-30 11:23:19 -08:00
Vincent Demeester
6367c67ab7 Merge pull request #28487 from cpuguy83/stack_dumps
Move stack dump dir to exec root
2016-11-30 20:01:29 +01:00
Vincent Demeester
ef39256dfb Remove hostname validation as it seems to break users
Validation is still done by swarmkit on the service side.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-30 19:22:07 +01:00
Anusha Ragunathan
9c2f1669a0 Merge pull request #28965 from cpuguy83/move_plugin_shutdown
Move plugin shutdown after layerstore shtudown
2016-11-30 10:15:49 -08:00
Kenfe-Mickael Laventure
9fff9bb761 Fix race with containerd events stream on restore
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-30 10:15:39 -08:00
Doug Davis
ff42a2eb41 Only show global warnings once
Upon each container create I'm seeing these warning **every** time in the
daemon output:
```
WARN[0002] Your kernel does not support swap memory limit
WARN[0002] Your kernel does not support cgroup rt period
WARN[0002] Your kernel does not support cgroup rt runtime
```
Showing them for each container.create() fills up the logs and encourages
people to ignore the output being generated - which means its less likely
they'll see real issues when they happen.  In short, I don't think we
need to show these warnings more than once, so let's only show these
warnings at daemon start-up time.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-11-30 10:11:42 -08:00
Madhu Venugopal
8f082e418b Vendoring libnetwork to address some concurrency issues
Addresses #28697, #28845, #28712, #26111

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2016-11-30 09:31:19 -08:00
Brian Goff
d8ce4a6e10 Fix out-of-band vol delete+create for same driver
Fix issue where out-of-band deletions and then a `docker volume create`
on the same driver caused volume to not be re-created in the driver but
return as created since it was stored in the cache.

Previous fix only worked if the driver names did not match.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-30 12:19:03 -05:00
Alexander Morozov
523ad6ac71 Merge pull request #28966 from aaronlehmann/push-panic
distribution: Fix panic on push
2016-11-30 07:26:58 -08:00
Sebastiaan van Stijn
643b1c0175 Merge pull request #28840 from bfirsh/2016-11-25-api-docs
Updates to swagger.yaml and API documentation
2016-11-30 15:49:25 +01:00
Doug Davis
3676bad041 Merge pull request #28972 from Microsoft/jjh/commentcorrection
Fix incorrect comment
2016-11-30 08:34:15 -05:00
Doug Davis
4a0e295cd1 Merge pull request #28725 from Microsoft/jjh/builderenvcaseinsensitive
Windows: Builder case insensitive env
2016-11-30 08:33:29 -05:00
erxian
21768933fb correct the http return code of secret remove
Signed-off-by: erxian <evelynhsu21@gmail.com>
2016-11-30 19:45:45 +08:00
lixiaobing10051267
4b1ff89fae checkt t.Fatalf information for reference path
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-30 17:54:41 +08:00
Sebastiaan van Stijn
6b6cfc63e9 Merge pull request #28934 from lixiaobing10051267/masterPluginDoc
Give the correct location for plugin documentation
2016-11-30 10:25:46 +01:00
yuexiao-wang
b4306588e9 Fix the inconsistency for docker secret
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-30 17:23:39 +08:00
Sebastiaan van Stijn
f9ddac3f3c Merge pull request #28854 from coolljt0725/igore_close_stderr_error
Ignore "failed to close stdin" if container or process not found
2016-11-30 10:23:27 +01:00
Vincent Demeester
768f4ce02b Merge pull request #28899 from aaronlehmann/dont-pull-image-id
Don't resolve or pull images referenced by ID
2016-11-30 10:08:43 +01:00
Vincent Demeester
b5f4d3f716 Merge pull request #28954 from darrenstahlmsft/UnknownBlobRetry
Stop retrying pull on UnkownBlob error
2016-11-30 10:05:16 +01:00
lixiaobing10051267
b069690827 modify some urls related to reference path
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-30 16:48:39 +08:00
Vincent Demeester
ccd5e18990 Merge pull request #28961 from daehyeok/refactoring_newV1DependencyImage
Refactoring functions
2016-11-30 09:27:37 +01:00
Yanqiang Miao
219a38e3db Remove a redundant funtion and fix some typos
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-30 15:16:07 +08:00
John Howard
b83076bfc0 Fix incorrect comment
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-29 20:05:47 -08:00
Tõnis Tiigi
1b6352996a Merge pull request #28566 from cyli/more-swarm-encryption-tests
Add extra swarm lock/unlock tests that ensure that all the managers are locked with the same key
2016-11-29 18:32:32 -08:00
Aaron Lehmann
e0702e9f37 distribution: Fix panic on push
When building a manifest during a push operation, all layers must have
an associated descriptor. If a layer is missing a descriptor, that leads
to a panic.

A break inside a switch in layerAlreadyExists meant to break from the
loop surrounding the switch, but instead breaks from the switch. This
causes the loop to continue, and can overwrite the descriptor with an
empty one, leading to the panic.

Also, fix layerAlreadyExists not to abort the push when a speculative
stat on a candidate layer digest fails with an error. This could happen
in situations like a potential cross-repository mount where the user
does not have permission to access the source repository.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-29 18:13:39 -08:00
lixiaobing10051267
4b9604381a Give the correct location for plugin documentation
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-30 09:52:28 +08:00
Lei Jitang
37db022045 Change Error log to Warning when close stdin fail
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-11-29 20:42:29 -05:00
Lei Jitang
9aedaf5b3a Ignore "failed to close stdin" if container or process not found
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-11-29 20:41:39 -05:00
Tõnis Tiigi
dbe0752157 Merge pull request #28955 from dongluochen/fix_attachable_test
Run overlay attachable test on a single daemon
2016-11-29 17:03:08 -08:00
Brian Goff
4b400ecc4d Move plugin shutdown after layerstore shtudown
This ensures that graphdriver plugins can properly cleanup on daemon
exit.
Also prevents errors during shutdown when it tries to send the plugin a
`Cleanup()` request but ultimately times out since it's already been
shutdown.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-29 20:00:02 -05:00
Brian Goff
8e0794aae0 Merge pull request #28950 from stevvooe/symlink-check-err
tarexport: check symlink error when saving layer
2016-11-29 19:56:16 -05:00
Daehyeok Mun
d117a2f614 Refactoring functions
Modified newV1DependencyImage and generateDependencyImages not to return
errors instead of always return nil.

Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2016-11-29 16:52:37 -07:00
Darren Stahl
dee2968560 Stop retrying pull on UnkownBlob error
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-29 15:06:25 -08:00
Victor Vieux
b8dac5dc99 Merge pull request #28876 from vdemeester/28835-better-handling-of-external-networks
stack deploy: handle external network when deploying
2016-11-29 15:00:35 -08:00
Sebastiaan van Stijn
8c53567720 Merge pull request #28940 from tophj-ibm/ppc64le-add-httpredir
[ppc64le] allow replacing httpredir in dockerfile
2016-11-29 23:29:40 +01:00
Yong Tang
52405a9b58 Use GetByName to check for collision before create any context in plugin creation
This fix is a follow up to the comment:
https://github.com/docker/docker/pull/28717#discussion_r90040589

Currently, the collision checking is done at the last step `Add()` of
plugin creation. However, at this stage the context such as plugin
directories have already been creation. In case of name collision,
rollback is needed which could be expensive.

This fix performs the check at the beginning of CreateFromContext using
GetByName. In this way, collision fails fast and no context creation
or rollback is needed.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-29 14:18:01 -08:00
Dong Chen
e42d1bb4b2 Run overlay attachable test on a single daemon
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-11-29 14:05:12 -08:00
Sebastiaan van Stijn
f244174664 Merge pull request #27622 from AkihiroSuda/client-set-http-header
client: add accessor methods for client.customHTTPHeaders
2016-11-29 22:18:47 +01:00
Stephen J Day
8616b0690a tarexport: check symlink error when saving layer
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-29 13:08:24 -08:00
Madhu Venugopal
4fae94f663 Merge pull request #28721 from dongluochen/attachable_network
Fix network attachable option
2016-11-29 11:04:49 -08:00
Harald Albers
1076f0882b Add more types to bash completion of docker inspect
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-29 09:45:43 -08:00
Sebastiaan van Stijn
7debf456e3 Merge pull request #28778 from Microsoft/jjh/volumenote
Windows: Note about volumes in run
2016-11-29 17:40:54 +01:00
Anusha Ragunathan
82b35dd997 Merge pull request #28717 from yongtang/28684-duplicate-docker-plugin-create
Fix issue caused by duplicate `docker plugin create` with same names
2016-11-29 08:22:40 -08:00
Christopher Jones
150a519a0b [ppc64le] allow replacing httpredir in dockerfile
Allows replacing of the default httpredir.debian.org in /etc/apt/sources.list
with a user-specified mirror. This will (hopefully) fix CI apt issues.

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-11-29 11:06:45 -05:00
Sebastiaan van Stijn
492bc8eb45 Merge pull request #28905 from jlhawn/reject_unspecified_advertise_addr
Reject unspecified advertise addr on swarm init
2016-11-29 16:24:45 +01:00
Vincent Demeester
9387ccc683 Merge pull request #28928 from miaoyq/fix-some-format-err
Fix some format errors
2016-11-29 16:02:35 +01:00
Sebastiaan van Stijn
209c6a419a Merge pull request #28935 from likel/improve-style
Initialize field with name
2016-11-29 15:52:13 +01:00
Sebastiaan van Stijn
82506fe9a9 Merge pull request #28914 from aaronlehmann/cluster-object
cluster: Refuse swarm spec not named "default"
2016-11-29 15:41:05 +01:00
Vincent Demeester
063d5679c5 Merge pull request #28919 from allencloud/change-secret-remove-in-cli
change secret remove logic in cli
2016-11-29 15:08:24 +01:00
Vincent Demeester
c1b0f23de0 Merge pull request #28893 from anusha-ragunathan/delete_onerr
On plugin pull errors, delete created dirs.
2016-11-29 14:48:27 +01:00
Vincent Demeester
986740691f Merge pull request #28874 from yuexiao-wang/fix-layer-typo
Fix some typos
2016-11-29 14:45:08 +01:00
yuexiao-wang
c8c7a3ff21 Fix some typos
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-30 03:01:32 +08:00
Yanqiang Miao
71f1205269 Fix some format errors
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-29 21:45:04 +08:00
Sebastiaan van Stijn
d5654a8e76 Merge pull request #28904 from dnephin/add-volume-labels-to-deploy
Use namespace label on stack volumes
2016-11-29 14:39:26 +01:00
Sebastiaan van Stijn
f06c2f230a Merge pull request #28819 from yuexiao-wang/modify-link
Modify the link about config.json for docker plugin create
2016-11-29 14:28:32 +01:00
Ke Li
da6944ec87 Initialize field with name
Signed-off-by: Ke Li <kel@splunk.com>
2016-11-29 19:36:56 +08:00
Akihiro Suda
a754d89b40 client: add accessor methods for client.customHTTPHeaders
Added two methods:

 - *Client.CustomHTTPHeaders() map[string]string
 - *Client.SetCustomHTTPHeaders(headers map[string]string)

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-11-29 09:02:52 +00:00
Lei Jitang
e0b2c0af4d Fix docker save with empty timestamp of layer created time
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-11-29 03:58:23 -05:00
Vincent Demeester
cee0fff9fe Revert "Add bash completion for docker service ps --all"
This reverts commit 188d2fac57.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-29 09:33:03 +01:00
Xianglin Gao
2ab8f2e389 fix apparmor load profile
Signed-off-by: Xianglin Gao <xlgao@zju.edu.cn>
2016-11-29 15:48:38 +08:00
allencloud
5b93e77138 change secret remove logic in cli
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-29 15:12:05 +08:00
Doug Davis
1ef10c83c7 Merge pull request #28909 from Microsoft/jjh/moreworkdir2
WORKDIR set cmd
2016-11-28 20:35:21 -05:00
Aaron Lehmann
9dba9e3248 cluster: Refuse swarm spec not named "default"
If, using the API, a user submits an init request with a spec that has a
name other than "default", the engine will rename the "default" cluster
object. Some parts of swarmkit depend on having a cluster object named
"default". Reject any specs that use other names.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-28 17:19:29 -08:00
Anusha Ragunathan
9e4234261c On plugin pull errors, delete created dirs.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-28 16:57:27 -08:00
Dong Chen
abcb699ad1 Fix network attachable option.
Signed-off-by: Dong Chen <dongluo.chen@docker.com>
2016-11-28 16:54:56 -08:00
Sebastiaan van Stijn
66154d0888 Merge pull request #28906 from mstanleyjones/udp_port_publishing
Document publishing a UDP port
2016-11-29 00:57:41 +01:00
Brian Goff
0b04f1dca2 Merge pull request #28898 from vdemeester/fix-imagelist-retrocompat
Fixes ImageList to be retro-compatible with older API
2016-11-28 18:57:13 -05:00
John Howard
1b97bb416b WORKDIR set cmd
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-28 15:44:10 -08:00
Josh Hawn
eeac871946 Reject unspecified advertise addr on swarm init
Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
2016-11-28 15:44:06 -08:00
Misty Stanley-Jones
2178c840ba Document publishing a UDP port
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-11-28 15:41:56 -08:00
Tibor Vass
584d23d849 Merge pull request #28897 from anusha-ragunathan/plugin_exit
Fix issue with plugin exit.
2016-11-28 15:25:27 -08:00
Daniel Nephin
4013a7c6d8 Use namespace label on stack volumes.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-28 18:02:39 -05:00
Victor Vieux
13ce1fe5a9 Merge pull request #28901 from thaJeztah/carry-28783-update-plugin-example
[carry 28783] update plugin example
2016-11-28 14:45:47 -08:00
Victor Vieux
d73f73b365 update plugin example
Signed-off-by: Victor Vieux <victorvieux@gmail.com>

cleanup whitespace formatting

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-28 23:44:24 +01:00
Brian Goff
8c2e674551 Merge pull request #28776 from Microsoft/jjh/fix28775
Align output of docker version again
2016-11-28 17:02:17 -05:00
Aaron Lehmann
089842c4b4 Don't resolve or pull images referenced by ID
If a swarm service is created using an image ID, it's useless to try to
pull this reference or resolve it to a manifest digest. Avoid doing this
when a fully qualified image ID is given.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-28 13:53:52 -08:00
Vincent Demeester
c6e31454ba Fixes ImageList to be retro-compatible with older API
Make sure current client code can talk for ImageList can still talk to
older daemon.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-28 22:15:50 +01:00
Anusha Ragunathan
890a98ceed Fix issue with plugin exit.
A plugin has an `ExitChan` channel which is used to signal the exit of
the plugin process. In a recent change, the initialization was
incorrectly moved to the daemon Shutdown path.

Fix this by initializing the channel during plugin enable.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-28 12:48:56 -08:00
Yong Tang
662d456928 Fix issue caused by duplicate docker plugin create with same names
This fix tries to fix the issue raised in 28684:
1. Duplicate plugin create with the same name will override the old plugin reference
2. In case an error happens in the middle of the plugin creation, plugin directories
   in `/var/lib/docker/plugins` are not cleaned up.

This fix update the plugin store so that `Add()` will return an error if a plugin
with the same name already exist.

This fix also will clean up the directory in `/var/lib/docker/plugins` in case
an error happens in the middle of the plugin creation.

This fix fixes 28684.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-28 12:37:49 -08:00
Vincent Demeester
60e72ea379 Merge pull request #28734 from ipbabble/master
Added and example of using --format with docker images
2016-11-28 20:57:13 +01:00
John Howard
dfeaf7a959 Align output of docker version again
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-28 11:38:58 -08:00
Vincent Demeester
3ccc4bc370 Merge pull request #28792 from yuexiao-wang/restart-mgr
Optimize the unit test for restartmanager
2016-11-28 20:27:44 +01:00
John Howard
b9e65f40cf Windows: Note about volumes in run
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-28 11:06:01 -08:00
Sebastiaan van Stijn
0e0a5e0d39 Merge pull request #28891 from mstanleyjones/fix_doubled_words
Fix instances of doubled words
2016-11-28 19:57:17 +01:00
Sebastiaan van Stijn
1a710b1585 Merge pull request #28890 from mstanleyjones/fix_is-official
Fix copypaste error 'is-automated'
2016-11-28 19:53:02 +01:00
Misty Stanley-Jones
379e9259cf Fix instances of doubled words
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-11-28 10:48:45 -08:00
Misty Stanley-Jones
2333657e1b Fix copypaste error 'is-automated'
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-11-28 10:31:38 -08:00
John Howard
49f392ff6b Windows: Builder case insensitive env
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-28 10:30:45 -08:00
David Lawrence
175792a655 updating notary to released 0.5.0 version
Signed-off-by: David Lawrence <david.lawrence@docker.com> (github: endophage)
2016-11-28 10:29:17 -08:00
Doug Davis
937027a0cb Merge pull request #28514 from Microsoft/jjh/workdir
Refix COPY file . after WORKDIR (now always created)
2016-11-28 12:58:17 -05:00
Sebastiaan van Stijn
35fd96f3f9 Merge pull request #28886 from mstanleyjones/fix_redirect_loop
Fix some redirect loops and problems
2016-11-28 18:49:36 +01:00
Misty Stanley-Jones
a1f55dca21 Fix some redirect loops and problems
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-11-28 09:46:38 -08:00
Vincent Demeester
eb55d03f3c Revert "Add -a option to service/node ps"
This reverts commit 139fff2bf0.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-28 18:08:45 +01:00
Kenfe-Mickaël Laventure
783d4ac6d4 Merge pull request #28625 from albers/completion-plugins
Add bash completion for plugin API
2016-11-28 08:56:53 -08:00
Vincent Demeester
b20bf510e5 Merge pull request #28822 from yuexiao-wang/modify-plugin
Modify repoName to PLUGIN for docker plugin create
2016-11-28 17:52:04 +01:00
Vincent Demeester
56a979801a Merge pull request #28877 from vdemeester/dont-export-accepted-filter
AcceptedFilters in router/network/filter.go should not be exported
2016-11-28 17:40:15 +01:00
Vincent Demeester
6fff845409 stack deploy: handle external network when deploying
If the network is marked as external, don't use the namespace on
it. Otherwise, it's not found.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-28 17:38:41 +01:00
Sebastiaan van Stijn
85a99c8891 Merge pull request #28657 from erxian/fix-doc-about-service-create
fix doc about service create in docker_remote_api_v1.24.md
2016-11-28 16:06:50 +01:00
Antonio Murdaca
76459076c2 Merge pull request #28882 from vdemeester/remove-stack_config-doc
Remove docker stack config commandline reference doc
2016-11-28 15:34:29 +01:00
Sebastiaan van Stijn
c04cf54d4e Merge pull request #28865 from albers/docs-stack-ls-aliases
Add aliases and options to `docker stack ls` docs
2016-11-28 15:27:35 +01:00
Vincent Demeester
3f98871a19 Remove docker stack config commandline reference doc
`docker stack config` command does not exists anymore, removing it
from the command reference documentation.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-28 15:25:52 +01:00
Vincent Demeester
e517d7975e AcceptedFilters in router/network/filter.go should not be exported
It's not used elsewhere and doesn't need to be exported.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-28 14:14:50 +01:00
Justin Cormack
33b6ef02cb Merge pull request #28868 from ohmk/fix-a-description-of-docker-swarm-init
fix description of 'docker swarm init'
2016-11-28 04:11:31 -08:00
Cyprian Gracz
74cf6157ef Stop returns 0 when docker service was not running
In case when docker was not running init script stop was returning value <> 0.
Due to this fact it was impossible to uninstall the docker-engine if the docker service was stopped.

Signed-off-by: Cyprian Gracz <cyprian.gracz@micro-jumbo.eu>

Fixed message logging

Signed-off-by: Cyprian Gracz <cyprian.gracz@micro-jumbo.eu>
2016-11-28 12:27:21 +01:00
Ben Firshman
bf6a790f00 Make swagger.yaml operationIds consistent
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-28 11:24:26 +00:00
Ben Firshman
54051b18a1 Make docs URLs in swagger.yaml absolute
This makes the swagger.yaml useful outside of the documentation.
For background:
https://github.com/docker/docker.github.io/pull/606#issuecomment-261389645

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-28 11:24:26 +00:00
Ben Firshman
2aea9ad56b Improve tags in swagger.yaml
- Consistent naming (plural, etc)
- Add section descriptions
- Add docs in swagger.yaml about how to maintain them

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-28 11:24:25 +00:00
Ben Firshman
be52738a2c Add intro to swagger.yaml to explain what it's for
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-28 11:24:25 +00:00
Ben Firshman
d9b109b807 Fix headings in old API docs
Jekyll automatically adds titles based on the title of the page,
so this was causing duplicate titles.

Also, made all the headings the correct level.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-28 11:24:22 +00:00
Kei Ohmura
4a3207de5b fix more according to the actual output of 'docker swarm init --help'
Signed-off-by: Kei Ohmura <ohmura.kei@gmail.com>
2016-11-28 18:40:11 +09:00
Kei Ohmura
3abee1bf8a fix description of 'docker swarm init'
Signed-off-by: Kei Ohmura <ohmura.kei@gmail.com>
2016-11-28 13:24:02 +09:00
Akihiro Suda
d5dee554ea Merge pull request #28857 from miaoyq/fix-a-description-of-docker-run
Fix description and link  of 'docker run [-a]'
2016-11-28 10:31:06 +09:00
Brian Goff
9439b2b7e2 Merge pull request #28866 from albers/completion-service--host
Add bash completion for `docker service {create,update}` host options
2016-11-27 20:22:02 -05:00
Harald Albers
f3b7f40aaf Add bash completion for docker service {create,update} host options
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-27 05:08:35 -08:00
Steve Durrheimer
1e0c612f84 Add zsh completion for 'docker stack' subcommand
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-27 13:59:48 +01:00
Harald Albers
8260366dd2 Add aliases and options to docker stack ls docs
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-27 04:38:49 -08:00
Sebastiaan van Stijn
9dc0c8ec32 Merge pull request #28824 from lixiaobing10051267/masterPlugin2
modify invalid url in plugins_network.md
2016-11-26 23:22:52 +01:00
Harald Albers
ecb707cb0f Add bash completion for plugin API
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-26 11:04:55 -08:00
Harald Albers
16494a81f9 Add bash completion for docker stack
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-26 10:45:07 -08:00
Yanqiang Miao
08ff4f427e Fix a description of 'docker run [-a]'
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-26 22:56:29 +08:00
Antonio Murdaca
76a0dfaa8e Merge pull request #28710 from miaoyq/eliminate-redundant-parameters
Eliminate the redundant parameter
2016-11-26 14:37:17 +01:00
Antonio Murdaca
ce0068ed04 Merge pull request #28780 from vieux/accept_src_in_secret
support src in --secret
2016-11-26 14:34:30 +01:00
Antonio Murdaca
022c13271b Merge pull request #28829 from lixiaobing10051267/masterDaemon
check typos and fix in daemon directory
2016-11-26 14:33:09 +01:00
Antonio Murdaca
2f5dbd63b0 Merge pull request #28855 from YuPengZTE/devMD023
fix the typo
2016-11-26 14:31:54 +01:00
Antonio Murdaca
41b7687758 Merge pull request #28856 from sdurrheimer/zsh-completion-service-update-hostname
Add zsh completion for 'docker service update --hostname'
2016-11-26 14:30:07 +01:00
Steve Durrheimer
b23fbc3fbd Add zsh completion for 'docker service update --hostname'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-26 14:13:00 +01:00
lixiaobing10051267
cf4f5b4771 check typos and fix in daemon directory
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>

Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-26 17:23:21 +08:00
yupeng
6e1339bbc6 fix the mistake of present
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-26 17:11:19 +08:00
Akihiro Suda
e6d9b7de64 cli: remove --mount from docker run
This commit reverts 273eeb813c (#26825).
For the discussion so far, please refer to #28527.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-11-26 04:55:28 +00:00
Vincent Demeester
c36c63b308 Merge pull request #28815 from dnephin/add-short-option
Add a short flag for docker stack deploy
2016-11-25 21:18:09 +01:00
Daniel Nephin
f1dd721b69 Add a short flag for docker stack deploy
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-25 13:23:36 -05:00
Doug Davis
7dcd7b8ec5 Merge pull request #28841 from justincormack/sandbox-error
Fix grammar on error message
2016-11-25 11:54:36 -05:00
yuexiao-wang
c394034f59 Modify reponame to PLUGIN and fix some typos
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-25 23:09:46 +08:00
Justin Cormack
cd5c8e9c2d Fix grammar on error message
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-25 14:58:20 +00:00
Sebastiaan van Stijn
28c3d5c2f9 Merge pull request #28833 from albers/completion-service-update--hostname
Add bash completion for `docker service update --hostname`
2016-11-25 14:03:54 +01:00
Akihiro Suda
58d59c63e0 Merge pull request #28832 from runcom/seccomp-comment-fix
profiles/seccomp: fix comment
2016-11-25 21:31:29 +09:00
Sebastiaan van Stijn
e026f80a4d Merge pull request #28759 from miaoyq/optimization-context-name1
Optimize the function 'Context.Name()' and replace 'Context.Container…
2016-11-25 13:25:17 +01:00
Harald Albers
9d98d6d8cb Add bash completion for docker service update --hostname
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-25 12:42:30 +01:00
Antonio Murdaca
197f3ee687 profiles/seccomp: fix comment
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-11-25 11:40:54 +01:00
yuexiao-wang
4e970c1e5a Modify the link for config.json
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-25 18:33:04 +08:00
Vincent Demeester
a24c750c7c Merge pull request #28779 from Microsoft/jjh/tp5-runtests
Windows: Update TP5 refs in run_test.go
2016-11-25 10:27:22 +01:00
Vincent Demeester
3e58117608 Merge pull request #28771 from dnephin/add-missing-service-hostname-update
Allow hostname to be updated on service
2016-11-25 10:26:06 +01:00
lixiaobing10051267
fc7c235f84 modify invalid url in plugins_network.md
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-25 15:40:51 +08:00
Doug Davis
b8e3a28d65 Merge pull request #28818 from miaoyq/fix-some-syntax-err
Fix some syntax error
2016-11-24 22:26:25 -05:00
Yanqiang Miao
18724726c2 Fix some syntax error
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-25 10:03:28 +08:00
Daniel Nephin
1c65cb6657 Allow hostname to be updated on service.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-24 15:44:35 -05:00
Vincent Demeester
03ba9a4922 Merge pull request #28794 from yongtang/28786-docs-network-ls-dangling
Update docs of `docker network ls --filter`
2016-11-24 19:16:57 +01:00
Sebastiaan van Stijn
169b4d92a1 Add some adjectives to the namesgenerator
Because .. `hardcore_hamilton` and `inspiring_murdock`

https://twitter.com/swiftonsecurity/status/801195049165799424

Also replacing adjectives that could be interpreted as
refering to body size, (mental) health, intoxication.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-24 18:38:04 +01:00
Justin Cormack
8602d97835 Merge pull request #28804 from bfirsh/better-service-network-overlay-error-message
Improve error when connecting service to network
2016-11-24 09:06:51 -08:00
yuexiao-wang
0a0bbab81d Optimize the unit test for restartmanager
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-25 00:21:58 +08:00
Yong Tang
2510f254ee Update docs of docker network ls --filter
Currently the help output of `docker network ls --filter` is:
```
Options:
  -f, --filter value   Provide filter values (i.e. 'dangling=true') (default [])
  ...
```
This caused confusion as only the following filters are supported at the moment:
 - `driver`
 - `type`
 - `name`
 - `id`
 - `label`

This fix update the help output of `docker network ls --filter` and `network_ls.md`.
The `dangling=true` description has been replace to:
```
Options:
  -f, --filter filter   Provide filter values (i.e. 'driver=bridge')
  ...
```

This fix fixes 28786.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-24 08:14:36 -08:00
Justin Cormack
82c858c8b6 Merge pull request #28803 from ijc25/check-config-legacy-vsyscall
check-config check for LEGACY_VSYSCALL_* options
2016-11-24 08:10:27 -08:00
Vincent Demeester
ab397c95e6 Merge pull request #28772 from yongtang/28769-checkpoint-id-name-check
Restrict checkpoint name to prevent directory traversal
2016-11-24 17:09:01 +01:00
Vincent Demeester
7aae360c41 Merge pull request #28802 from yuexiao-wang/fix-cli-typo
Add options for docker plugin enable and fix some typos
2016-11-24 17:03:56 +01:00
yuexiao-wang
9e414bfa6b Add options for docker plugin enable and fix some typos
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-25 04:07:06 +08:00
Ben Firshman
70acb89fa2 Improve error when connecting service to network
The error didn't hint at how to resolve it. Google auto-suggest
also implies that people have been Googling this error.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-24 14:43:24 +00:00
Justin Cormack
0f79746f3d Merge pull request #28800 from lixiaobing10051267/masterState
Fix some output information for container test
2016-11-24 06:21:07 -08:00
Sebastiaan van Stijn
b3687bdcdc Merge pull request #28602 from dattatrayakumbhar04/nw-connect-paused-container-doc
28600: Docs: network connect for container in Created/Stopped state
2016-11-24 15:04:53 +01:00
Yanqiang Miao
3b82eac65f Fix a error of the function 'CopyMessage' in 'daemon/logger/logger.go'
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

add a test for 'CopyMessage'

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-24 20:08:54 +08:00
lixiaobing10051267
92ee5a5d3a Fix some output information for container test
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-24 20:01:00 +08:00
Ian Campbell
163db04452 Check for LEGACY_VSYSCALL_* options
Chosing LEGACY_VSYSCALL_NONE (over NATIVE or EMULATE) will mean that binaries
using eglibc <= 2.13 will not run (segfault).

Fixes #28705.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-24 11:39:05 +00:00
Yanqiang Miao
52fd6e4664 Optimize the function 'Context.Name()' and replace 'Context.ContainerName' that need to remove slash with 'Context.Name()'.
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-24 09:24:29 +08:00
Sebastiaan van Stijn
e47ca825d1 Merge pull request #28757 from minamijoyo/fix-broken-markdown-in-changelog
Fix broken markdown in CHANGELOG.md
2016-11-24 02:05:03 +01:00
Victor Vieux
32229914c7 Merge pull request #28773 from dnephin/exit-status
exit with status 1 if help is called on an invalid command
2016-11-23 15:13:29 -08:00
John Howard
f93c04d1ed Merge pull request #28667 from Microsoft/jjh/env-case-sensitive
Windows: Case insensitive env vars
2016-11-23 14:40:16 -08:00
Victor Vieux
f70470b71e support src in --secret
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-23 14:30:57 -08:00
John Howard
38faf6e043 Windows: Update TP5 refs in run_test.go
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-23 14:28:06 -08:00
Alexander Morozov
6b12887c3e Merge pull request #28777 from Microsoft/jjh/fixtypo-bin-mounts
Fixes typo 'bin-mounts'
2016-11-23 14:04:03 -08:00
John Howard
c8c1dfbaf3 Fixes typo 'bin-mounts'
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-23 14:01:57 -08:00
Vincent Demeester
205291c5f3 Merge pull request #28675 from dnephin/no-swarmmode-error-on-deploy
Better error message on stack deploy when not a swarm manager
2016-11-23 22:47:13 +01:00
Yong Tang
c90ec05175 Restrict checkpoint name to prevent directory traversal
This fix tries to address the issue raised in 28769 where
checkpoint name was not checked before passing to containerd.
As a result, it was possible to use a special checkpoint name
to get outside of the container's directory.

This fix add restriction `[a-zA-Z0-9][a-zA-Z0-9_.-]+` (`RestrictedNamePattern`).
This is the same as container name restriction.

This fix fixes 28769.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-23 13:23:07 -08:00
John Howard
b2049a84de Windows: Case insensitive env vars
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-23 12:57:33 -08:00
Victor Vieux
ae64cae74e Merge pull request #28760 from ehazlett/carry-28576
Update Secret Command help (carry #28576)
2016-11-23 12:29:55 -08:00
dattatrayakumbhar04
16c9cdad6f 28600: Docs: network connect for container in Created/Stopped state
Signed-off-by: dattatrayakumbhar04 <dattatraya.kumbhar@gslab.com>
2016-11-23 20:20:37 +00:00
Daniel Nephin
bb7601a3ff exit with status 1 if help is called on an invalid command.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-23 15:13:58 -05:00
John Howard
286ab6d69b COPY file . after WORKDIR (now always created)
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-23 09:56:02 -08:00
zteBill
47b110a592 check err type
Signed-off-by: zteBill <bi.zhenkun@zte.com.cn>
2016-11-24 01:33:02 +08:00
Alexander Morozov
1640bb23b1 Merge pull request #28728 from aluzzardi/swarmkit-revendor-53fcdeba083627b1a2616612a103019b73c6d5ce
revendor swarmkit to 53fcdeba083627b1a2616612a103019b73c6d5ce
2016-11-23 09:24:23 -08:00
William Henry
798c00a7ee Added and example of using --format with docker images
Docker-DCO-1.1-Signed-off-by: William Henry <whenry@redhat.com> (github: ipbabble)

Signed-off-by: William Henry <whenry@redhat.com>
2016-11-23 10:15:19 -07:00
Daniel Nephin
c72daf953a Better error message on stack deploy against not a swarm.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-23 12:15:11 -05:00
Vincent Demeester
2c978bd946 Merge pull request #28765 from vdemeester/update-docker-info-docs
Update docker info cli reference documentation
2016-11-23 17:27:08 +01:00
Vincent Demeester
bbe1a7f84f Merge pull request #28749 from runcom/remove-notneeded-unmarshal
daemon: remove not needed unmarshal
2016-11-23 17:22:23 +01:00
Vincent Demeester
d28eaa1171 Update docker info cli reference documentation
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-23 17:20:12 +01:00
Sebastiaan van Stijn
6e8479bdfa Merge pull request #28753 from vdemeester/fix-userns-integration-cli
Fixes some integration-cli on userns
2016-11-23 16:14:41 +01:00
erxian
d87c91e39f update secret command
Signed-off-by: erxian <evelynhsu21@gmail.com>
2016-11-23 10:07:09 -05:00
Vincent Demeester
55cd9c4edc Merge pull request #28758 from vdemeester/update-plugin-enable-cli-doc
Update plugin enable cli reference documentation
2016-11-23 15:53:02 +01:00
Vincent Demeester
43297dd6f8 Update plugin enable cli reference documentation
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-23 15:42:40 +01:00
Masayuki Morita
2ca39d27a6 Fix broken markdown in CHANGELOG.md
Signed-off-by: Masayuki Morita <minamijoyo@gmail.com>
2016-11-23 23:26:07 +09:00
Sebastiaan van Stijn
04d60a44d7 Merge pull request #28743 from albers/docs-stack-experimental
Move `docker stack` docs out of experimental
2016-11-23 14:17:09 +01:00
Vincent Demeester
eb5fe064cf Fixes some integration-cli on userns
Mainly adding requirements on Network or NotUserNamespace to make it pass.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-23 14:03:53 +01:00
Antonio Murdaca
30b8712e93 daemon: remove not needed unmarshal
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-11-23 12:53:25 +01:00
Harald Albers
bb96e18b19 Move docker stack docs out of experimental
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-23 11:14:38 +01:00
erxian
c22821014a update the secret command docs
Signed-off-by: erxian <evelynhsu21@gmail.com>
2016-11-23 10:36:11 +08:00
cuiwei13
cd7496abb5 Checking whether CG_MEM_SWAP is enabled at the current system session
Signed-off-by: CUI Wei <ghostplant@qq.com>
2016-11-22 21:24:01 -05:00
Alexander Morozov
5afdacb20e Merge pull request #28455 from Microsoft/jjh/autogen
Windows: Native autogen
2016-11-22 18:18:12 -08:00
cyli
be2603973d Add some swarm encryption tests, and modify some existing ones, to test locking the whole cluster
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-11-22 20:56:45 -05:00
Victor Vieux
7c6f001248 Merge pull request #28716 from ehazlett/fix-multi-secret-inspect
Update secret inspect to support IDs
2016-11-22 17:39:48 -08:00
Victor Vieux
0633c558bb Merge pull request #28733 from thaJeztah/use-official-fedora25-image
Use official fedora 25 image
2016-11-22 17:38:01 -08:00
Yanqiang Miao
58028a2919 Eliminate redundant parameters
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-23 09:28:13 +08:00
Sebastiaan van Stijn
545a2f009e Use official fedora 25 image
Fedora 25 was released today, and the official
image will be available soon.

This removes the temporary override, so that
we can build using the official image.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-23 02:19:02 +01:00
Andrea Luzzardi
51247185a2 revendor swarmkit to 53fcdeba083627b1a2616612a103019b73c6d5ce
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-22 17:01:02 -08:00
Tõnis Tiigi
5c1826ec4d Merge pull request #28683 from darrenstahlmsft/SystemDLL
Swap usage of LazyDLL and LoadDLL to LazySystemDLL
2016-11-22 16:58:30 -08:00
Victor Vieux
22ba220e86 Merge pull request #28727 from cyli/do-not-display-secret-digest
Do not display the digest or size of swarm secrets [1.13]
2016-11-22 16:44:06 -08:00
Anusha Ragunathan
23ea9e45fd Merge pull request #28601 from tiborvass/plugin-misc-fixes
Plugin miscellaneous fixes
2016-11-22 16:12:37 -08:00
cyli
fe127b7eae Update docs to reflect no longer displaying secret digest or size.
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-11-22 18:18:56 -05:00
cyli
2c0613540a Do not display the digest or size of swarm secrets
Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-11-22 18:13:27 -05:00
Darren Stahl
22c83c567f Swap usage of LazyDLL and LoadDLL to LazySystemDLL.
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-22 14:57:11 -08:00
Tibor Vass
6547609870 plugins: misc fixes
Rename variable to reflect manifest -> config renaming
Populate Description fields when computing privileges.
Refactor/reuse code from daemon/oci_linux.go

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-22 14:32:07 -08:00
Vincent Demeester
d145b0b93f Merge pull request #28726 from jacobtomlinson/docs-pull-concurrent
Document pull concurrent options
2016-11-22 23:11:27 +01:00
Jacob Tomlinson
b303381a4d Add concurrent uploads/downloads section
Document and link to the concurrent uploads/downloads daemon option.

Signed-off-by: Jacob Tomlinson <jacob@tom.linson.uk>
2016-11-22 21:59:10 +00:00
Sebastiaan van Stijn
0415525049 Merge pull request #26833 from cpuguy83/use_mounts_api_for_services
Use container Mounts API for Swarm containers.
2016-11-22 22:48:54 +01:00
Victor Vieux
c025d56504 Merge pull request #28691 from aluzzardi/service-logs-no-follow
[experimental] service logs: Support no-follow mode
2016-11-22 13:48:14 -08:00
Sebastiaan van Stijn
313502488e Merge pull request #28506 from bfirsh/prepare-api-docs-for-swagger-docs
Prepare docs and Swagger definition for automatically generated API docs
2016-11-22 22:47:38 +01:00
Evan Hazlett
70d2cefd51 update secret inspect to support IDs
This updates secret inspect to support inspect by ID in addition to name
as well as inspecting multiple secrets.  This also cleans up the
help text for consistency.

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2016-11-22 16:01:16 -05:00
Sebastiaan van Stijn
61d9ba930c Merge pull request #28685 from darrenstahlmsft/RevendorGowinio
Revendor go-winio to v0.3.7
2016-11-22 21:35:45 +01:00
Sebastiaan van Stijn
9d0050727d Merge pull request #28598 from darrenstahlmsft/VmcomputeDNE
Ensure vmcompute.dll exists during daemon start
2016-11-22 21:31:45 +01:00
Sebastiaan van Stijn
86eae4018a Merge pull request #28698 from YuPengZTE/devErrot
error strings should not be capitalized or end with punctuation
2016-11-22 21:25:09 +01:00
Sebastiaan van Stijn
0cbc187447 Merge pull request #28715 from thaJeztah/add-warning-for-windows-plugins
add note that windows does not support managed plugins
2016-11-22 21:23:13 +01:00
Sebastiaan van Stijn
658b89192f Merge pull request #28703 from runcom/full-hash-commit-runc
hack/dockerfile/binaries-commits: use full commit hash for docker info
2016-11-22 21:14:00 +01:00
Tõnis Tiigi
d1a137b10c Merge pull request #28681 from aboch/vnd
Vendor libkv @ 1d84310
2016-11-22 11:46:22 -08:00
Sebastiaan van Stijn
6e11ca0fdf Merge pull request #28672 from mlaventure/arm-ubuntu-xenial
Add support for armhf ubuntu-xenial deb
2016-11-22 19:57:11 +01:00
Darren Stahl
873a26697d Revendor go-winio to v0.3.7
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-22 10:39:42 -08:00
Brian Goff
39e2e07567 Merge pull request #28668 from anusha-ragunathan/fix_teardown
Check for valid daemon in TearDownTest.
2016-11-22 13:26:08 -05:00
Vincent Demeester
4bc96372d8 Merge pull request #28718 from albers/docs-fix-copmose
Fix typo in docs (Copmose)
2016-11-22 19:25:47 +01:00
Brian Goff
821aeb6a6f Use container Mounts API for Swarm containers.
Instead of converting nicely typed service mounts into untyped `Binds`
when creating containers, use the new `Mounts` API which is a 1-1
mapping between service mounts and container mounts.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-22 13:23:51 -05:00
Tibor Vass
677e14643c Merge pull request #28595 from anusha-ragunathan/plugin_timeout
Allow HTTP client timeout to be configurable on plugin enable.
2016-11-22 10:17:10 -08:00
Harald Albers
2e12055687 Fix typo in docs (Copmose)
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-22 19:09:30 +01:00
Victor Vieux
772a423e08 Merge pull request #28529 from allencloud/update-secret-create-url
fix secret create url for consistency
2016-11-22 09:55:17 -08:00
Tibor Vass
53b9b99e5c plugins: support for devices
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-22 09:54:45 -08:00
Victor Vieux
e308f6bc01 Merge pull request #28709 from andrewhsu/fix-release-sh
skip solaris and allow dry run control points
2016-11-22 09:52:07 -08:00
Sebastiaan van Stijn
bae61194db Merge pull request #27625 from hqhq/add_deb_support
Add `make deb` support for aarch64
2016-11-22 18:24:58 +01:00
Ben Firshman
109c54c481 Add documentation for working on Engine API
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-22 16:46:57 +00:00
Sebastiaan van Stijn
6aa7073c00 Merge pull request #28700 from sdurrheimer/zsh-completion-images-filter-reference
Add zsh completion for 'docker image ls --filter reference'
2016-11-22 17:00:38 +01:00
Sebastiaan van Stijn
8f6ed2a47f Merge pull request #28699 from sdurrheimer/zsh-completion-dockerd-userland-proxy-path
Add zsh completion for 'dockerd --userland-proxy-path'
2016-11-22 17:00:10 +01:00
Kenfe-Mickael Laventure
3b3cf87478 Add generate.sh for armhf deb Dockerfiles
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-22 07:12:57 -08:00
Kenfe-Mickael Laventure
b118056241 Add support for armhf ubuntu-yakkety deb
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-22 07:09:10 -08:00
Sebastiaan van Stijn
f885463b58 add note that windows does not support managed plugins
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-22 16:01:14 +01:00
Daniel Nephin
c979192026 Merge pull request #28711 from vdemeester/28635-fix-network-list-ignored
Update aanand/compose-file to a3e58764f50597b6217fec07e9bff7225c4a1719
2016-11-22 09:57:08 -05:00
Vincent Demeester
c8388a52ec Merge pull request #28445 from cpuguy83/28439_fix_client_rm_on_old_daemons
Handle `run --rm` against older daemons on the cli
2016-11-22 14:25:03 +01:00
Ben Firshman
44c50807c6 Update swagger.yaml with changes to API
Up to and including 673c5ee559

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-22 12:49:38 +00:00
Ben Firshman
c97f67dbab Add version information to swagger.yaml
- Tidied up copy
- API version is now mandatory
- Links to previous API versions

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-22 12:49:38 +00:00
Ben Firshman
f0d55cd081 Rename Remote API to Engine API
Implementation of https://github.com/docker/docker/issues/28319

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-22 12:49:38 +00:00
Ben Firshman
993854f58f Move API reference to new location
See: https://github.com/docker/docker.github.io/pull/606

Also:
- Add missing redirects to API reference pages
- Remove v1.25 and 1.26, because they are being replaced with
  swagger generated docs.
- Remove all other docs which aren't reference material, because
  this can live in docker/docker.github.io

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-22 12:47:25 +00:00
Vincent Demeester
48c3df015d Merge pull request #28651 from YuPengZTE/devMD002
First header should be a top level header
2016-11-22 13:11:37 +01:00
Vincent Demeester
01b70a95c9 Update aanand/compose-file to a3e58764f50597b6217fec07e9bff7225c4a1719
This fixes services networks list to be ignored when loading.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-22 13:09:17 +01:00
Vincent Demeester
d1258c761a Merge pull request #28659 from xuzhenglun/master
bugfix: incorrect ErrConnectFailed Comparison
2016-11-22 13:01:05 +01:00
Justin Cormack
3373227f36 Merge pull request #28682 from tonistiigi/stdin-close
Fix race on sending stdin close event
2016-11-22 11:02:47 +00:00
Justin Cormack
0bcdeaefcf Merge pull request #28704 from YuPengZTE/devGenerate
hack/swagger-gen.sh is not exist
2016-11-22 11:01:19 +00:00
Sebastiaan van Stijn
f67c8163d4 Merge pull request #27628 from flixr/deb_armhf_ubuntu-xenial
build debian package for armhf ubuntu-xenial
2016-11-22 11:47:42 +01:00
Sebastiaan van Stijn
fc488328b1 Merge pull request #28671 from darrenstahlmsft/RevendorHcshim
Update hcsshim to v0.5.9
2016-11-22 10:48:20 +01:00
Andrew Hsu
f60541069c skip solaris and allow dry run control points
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-11-22 01:42:52 -08:00
yupeng
c471b7f243 hack/swagger-gen.sh is not exist, it should be /hack/generate-swagger-api.sh
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-22 16:32:32 +08:00
Vincent Demeester
7ca953e66e Merge pull request #28343 from albers/completion-build--network
Add bash completion for `docker build --network`
2016-11-22 09:29:42 +01:00
Antonio Murdaca
fa15d5ed0f hack/dockerfile/binaries-commits: use full commit hash for docker info
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-11-22 08:59:57 +01:00
Steve Durrheimer
15134b8d36 Add zsh completion for 'docker image ls --filter reference'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-22 08:01:45 +01:00
Steve Durrheimer
97e1892922 Add zsh completion for 'dockerd --userland-proxy-path'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-22 07:57:31 +01:00
yupeng
fc11efa2db error strings should not be capitalized or end with punctuation
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-22 14:53:11 +08:00
Derek McGowan
a12b466183 Add class to repository scope
Expose registry error translation for plugin distribution

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2016-11-21 22:18:50 -08:00
Derek McGowan
d1f5e0f7a6 Update vendor distribution
Distribution client change for class in resource

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2016-11-21 22:18:41 -08:00
Reficul
d5dc9b8b1f fix incorrect ErrConnectFailed comparison
Signed-off-by: Reficul <xuzhenglun@gmail.com>
2016-11-22 10:42:55 +08:00
Andrea Luzzardi
c2d435e4f0 service logs: Support no-follow mode
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-21 18:02:13 -08:00
Tonis Tiigi
4e262f6387 Fix race on sending stdin close event
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-21 17:43:01 -08:00
Darren Stahl
000366f1a7 Ensure vmcompute.dll exists during daemon start
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-21 17:40:31 -08:00
Brian Goff
f4bb8c51de Handle run --rm against older daemons on the cli
For previous versions of Docker, `--rm` was handled client side, as such
there was no support in the daemon for it.
Now it is handled daemon side, but we still need to handle the case of a
newer client talking to an older daemon.

Falls back to client-side removal when the daemon does not support it.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-21 20:39:04 -05:00
yupeng
1e65db4206 First header should be a top level header
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-22 09:33:21 +08:00
Tibor Vass
e2e7ab655f vendor go-connections to error out if unix socket path is too long
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-21 16:34:10 -08:00
Tibor Vass
a08ffa0e93 plugins: fix some tests
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-21 16:34:10 -08:00
Sebastiaan van Stijn
e350d44dbe Merge pull request #27621 from AkihiroSuda/machine-install-bundle
contrib: add docker-machine-install-bundle.sh
2016-11-22 01:10:53 +01:00
Sebastiaan van Stijn
d95c174d2f Merge pull request #28640 from andrewhsu/apt-mirror-arm
allow replacing httpredir mirror for arm
2016-11-22 00:54:04 +01:00
Sebastiaan van Stijn
fff1885a4b Merge pull request #28628 from albers/completion-images-f-reference
Add bash completion for `docker images --filter reference`
2016-11-22 00:52:34 +01:00
Sebastiaan van Stijn
700f618410 Merge pull request #28486 from vdemeester/docs-service-templating
Add documentation about templating support on…
2016-11-22 00:50:45 +01:00
Sebastiaan van Stijn
da4a2f16a0 Merge pull request #28664 from thaJeztah/update-service-ps-reference
Update service ps reference for "--no-trunc"
2016-11-22 00:48:03 +01:00
Tibor Vass
84e58e2f89 plugins: do not try to contact disabled plugin
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-21 14:52:14 -08:00
Tibor Vass
99124c055a plugins: support for host networking
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-21 14:52:14 -08:00
Tibor Vass
9f239281b1 plugins: linux capabilities and device creation
In the plugin manifest, Capabilities has been moved to
Linux.Capabilities to avoid confusion with Interface.Types[i].Capability

A DeviceCreation boolean has also been added to the manifest. This could
be changed in the future to be specific to a major number.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-11-21 14:52:14 -08:00
Victor Vieux
eac91a19d6 Merge pull request #28677 from dnephin/remove-deploy-experimental
Move `docker stack` out of experimental
2016-11-21 14:33:35 -08:00
Alessandro Boch
f9cff5e267 Vendor libkv @ 1d84310
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-11-21 14:07:51 -08:00
Victor Vieux
99a7289632 Merge pull request #28328 from aaronlehmann/duration-opts
cli: Add valid suffixes for remaining duration options
2016-11-21 14:03:00 -08:00
Victor Vieux
3a6829257e Merge pull request #28504 from runcom/fix-info-route-secopt
api: types: do not remove old SecurityOptions struct
2016-11-21 13:55:07 -08:00
Alexander Morozov
9bd7189527 Merge pull request #28673 from aboch/vnd
Vendoring libnetwork @dd0ddde
2016-11-21 13:46:14 -08:00
Andrew Hsu
060196ee4c allow replacing httpredir or deb mirror in jessie
Signed-off-by: Andrew Hsu <andrewhsu@docker.com>
2016-11-21 13:34:05 -08:00
Victor Vieux
6e4a3c4546 Merge pull request #28649 from allencloud/judge-locked-before-parsing-key
judge manager if locked before parsing key
2016-11-21 13:33:38 -08:00
Anusha Ragunathan
5890091cc0 Check for valid daemon in TearDownTest.
SetupTest could fail creating a Daemon object (eg, out of space when
creating daemon root dir). In such a case, TearDownTest fails when
accessing the daemon object. This commit adds the required nil check.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-21 13:29:13 -08:00
Alexander Morozov
9326fb1389 Merge pull request #28670 from cpuguy83/update_syslog_driver
re-vendor syslog log driver
2016-11-21 13:19:47 -08:00
Anusha Ragunathan
83ca993c15 Add HTTP client timeout.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-21 13:11:40 -08:00
Vincent Demeester
05963010ee Merge pull request #28556 from ehazlett/container-secret-store
Fix target reference secrets and container secret store
2016-11-21 21:40:01 +01:00
Daniel Nephin
6df5baf30f Move docker stack out of experimental
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-21 15:30:25 -05:00
Darren Stahl
baac0ef67f Update hcsshim
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-21 11:45:32 -08:00
Alessandro Boch
948c7fdb94 Vendoring libnetwork @dd0ddde
Signed-off-by: Alessandro Boch <aboch@docker.com>
2016-11-21 11:44:58 -08:00
Madhu Venugopal
111a95fb50 Merge pull request #28562 from tomdee/bump-libnetwork
Update libnetwork version for IPv6 support
2016-11-21 11:30:00 -08:00
Brian Goff
00caf03132 re-vendor syslog log driver
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-21 14:24:53 -05:00
Vincent Demeester
e349d3d330 Merge pull request #28466 from miaoyq/update-a-var-type
The type of 'ExportdPorts' should be 'nat.PortSet'
2016-11-21 20:23:10 +01:00
Victor Vieux
fb7e9a908b Merge pull request #28663 from vdemeester/28633-do-not-panic-on-empty-network
Do not panic if network is nil
2016-11-21 10:48:03 -08:00
Sebastiaan van Stijn
6cc645c938 Merge pull request #28615 from dmcgowan/update-v1-deprecation-doc
Update deprecation notes about v1 registry
2016-11-21 19:16:38 +01:00
Victor Vieux
51c107b64f Merge pull request #28647 from WeiZhang555/dont-lock-client-version
Bugfix: set cli.manualOverride when env var not empty
2016-11-21 09:52:35 -08:00
Derek McGowan
c8f826f407 Update deprecation notes about v1 registry
Adds section about the hub deprecating the v1 protocol.
Adds note about intent to disable by default and remove support.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2016-11-21 09:39:48 -08:00
Vincent Demeester
158388ef8d Do not panic if network is nil
network is `nil` if the following case:

```
services:
  foo:
    image: nginx
    networks:
      mynetwork:
```

It's a valid compose so we should not panic.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-21 17:59:29 +01:00
Sebastiaan van Stijn
ca4d907851 Merge pull request #28656 from vdemeester/update-docker-deploy-ref-doc
Update cli reference for docker {,stack} deploy
2016-11-21 17:46:08 +01:00
Sebastiaan van Stijn
90993640f0 Update service ps reference for "--no-trunc"
The "--no-trunc" option toggles between showing/hiding
digests.

This updates the reference to show this difference.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-21 17:39:58 +01:00
Vincent Demeester
278e01d6de Merge pull request #28539 from nishanttotla/pin-image-digest-ux
Suppressing digest for docker service ls/ps
2016-11-21 14:06:37 +01:00
Vincent Demeester
88cdfc512b Update cli reference for docker {,stack} deploy
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-21 12:36:31 +01:00
Felix Ruess
015e83a8da build debian package for armhf ubuntu-xenial
Signed-off-by: Felix Ruess <felix.ruess@gmail.com>
2016-11-21 12:34:20 +01:00
Sebastiaan van Stijn
5c6e649fde Merge pull request #28648 from YuPengZTE/devBareURL
fix the mistak of url format
2016-11-21 11:03:43 +01:00
Zhang Wei
4d54d30477 Bugfix: set cli.manualOverride when env var not empty
If env var "DOCKER_API_VERSION" is specified by user, we'll set
`cli.manualOverride`, before this, this field is always true due to
wrong logic.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2016-11-21 17:31:46 +08:00
Vincent Demeester
3739c3bed3 Merge pull request #28294 from vdemeester/compose-swarm-healthcheck
Add support for healthcheck in compose to swarm
2016-11-21 10:28:37 +01:00
allencloud
89100c162b judge manager if locked before parsing key
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-21 16:39:09 +08:00
yupeng
0655d5cd1f Bare URL used
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-21 16:30:09 +08:00
Akihiro Suda
fa314aa52e contrib: add docker-machine-install-bundle.sh
docker-machine-install-bundle.sh installs the bundle to Docker Machine instances.

This script helps developers to test the latest Docker with Swarm-mode enabled.

Usage:

    $ docker-machine create -d some-driver dm01
    ..
    $ docker-machine create -d some-driver dm05
    $ make binary
    $ contrib/docker-machine-install-bundle.sh install dm01 dm02 dm03 dm04 dm05

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-11-21 07:13:11 +00:00
Lei Jitang
103f2e56bf Merge pull request #28644 from zhukj/daemon-config
close the file
2016-11-21 13:50:26 +08:00
zhukj
cf3ef262b1 close the file
Signed-off-by: zhukj <zhu.kunjia@zte.com.cn>
2016-11-21 19:56:01 +08:00
Lei Jitang
8976934806 Merge pull request #28637 from albers/completion-dockerd--userland-proxy-path
Add bash completion for `dockerd --userland-proxy-path`
2016-11-21 13:48:10 +08:00
Vincent Demeester
baa14c0e61 Merge pull request #28026 from ripcurld00d/fix_27772
Return an empty stats if the container is restarting
2016-11-20 21:14:37 +01:00
Harald Albers
0d573a62f7 Add bash completion for dockerd --userland-proxy-path
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-20 09:58:39 -08:00
Vincent Demeester
227af35a17 Merge pull request #28607 from mstanleyjones/28133_iptables_false
Clarify that ipmasq rules are not added when iptables is false
2016-11-20 17:35:31 +01:00
Tom Denham
5d983d21bf Update tests to handle bug fix from libnetwork
Signed-off-by: Tom Denham <tom@tomdee.co.uk>
2016-11-19 16:34:56 -08:00
Tom Denham
d96baf28d4 Update netlink library (required for libnetwork)
Signed-off-by: Tom Denham <tom@tomdee.co.uk>
2016-11-19 16:12:39 -08:00
Tom Denham
5b76fe4a35 Update libnetwork to latest version
Signed-off-by: Tom Denham <tom@tomdee.co.uk>
2016-11-19 16:12:32 -08:00
Harald Albers
e84d62f6cb Add bash completion for docker images --filter reference
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-19 13:05:51 -08:00
Vincent Demeester
c8bf933697 Merge pull request #28563 from darrenstahlmsft/ShutdownOnStop
Shutdown instead of terminate process on Windows
2016-11-19 18:22:51 +01:00
Vincent Demeester
2b680b1573 Merge pull request #28451 from Ghnuberath/master
Add HostConfig.Tmpfs to docs for container creation remote API
2016-11-19 18:22:15 +01:00
Antonio Murdaca
514ca09426 api: types: keep info.SecurityOptions a string slice
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-11-19 13:21:16 +01:00
Doug Davis
96f50e9b70 Merge pull request #28611 from vieux/fix_golint
fix a few golint errors
2016-11-19 07:16:44 -05:00
Victor Vieux
f6f67891be Merge pull request #28438 from vdemeester/use-container-shell-instead-of-hardcoded
Use Container.Config.Shell instead of hardcoded…
2016-11-18 18:54:36 -08:00
Victor Vieux
c3fab6d473 Merge pull request #28524 from aluzzardi/experimental-routes
router: Return explicit error rather than 404 for experimental.
2016-11-18 18:49:15 -08:00
Victor Vieux
0337822d34 Merge pull request #28561 from vieux/poc_cmd_error_unsuported
error on cli when trying to use experimental feature with non experimental daemon
2016-11-18 18:47:36 -08:00
Victor Vieux
eb8fc5dcc3 Merge pull request #28605 from cpuguy83/use_v2_for_graph_plugins
Allow graphdriver plugins to use v2
2016-11-18 18:45:34 -08:00
Tibor Vass
ee6f3b6796 Merge pull request #28613 from vieux/fix_govet
skip api/types/container/ (like golint) and fix one pkg
2016-11-18 18:35:37 -08:00
Victor Vieux
9c559e6d0b fix a few golint errors
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-18 18:32:02 -08:00
Victor Vieux
79a891efb7 skip api/types/container/ (like golint) and fix one pkg
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-18 16:33:50 -08:00
Victor Vieux
a0866bd679 Merge pull request #28599 from aluzzardi/revendor-swarmkit
[master] Revendor SwarmKit to 9bca23b0de42a9ebcc71622a30d646afa1e2b564
2016-11-18 16:23:54 -08:00
Victor Vieux
697b6b504a Merge pull request #28610 from vieux/fix_gofmt
fix gofmt in master
2016-11-18 15:21:39 -08:00
Victor Vieux
9f348d5625 fix gofmt in master
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-18 15:20:19 -08:00
Michael Crosby
8851e6ba70 Merge pull request #28603 from thaJeztah/flipping-hosts
swap position of "host" and "ip"
2016-11-18 14:58:04 -08:00
bbayani
db3f06fd97 Clarify that ipmasq rules are not added when iptables is false
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-11-18 14:25:24 -08:00
Brian Goff
020b051dfb Allow graphdriver plugins to use v2
Currently the plugin initialization is too late for a loaded v2 plugin
to be usable as a graph driver.

This moves the initialization up before we create the graph driver.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-18 17:23:59 -05:00
Victor Vieux
e67664887d Merge pull request #28590 from mlaventure/update-containerd
Update containerd & runc
2016-11-18 14:08:56 -08:00
Andrea Luzzardi
e35c1747f5 Revendor SwarmKit to 9bca23b0de42a9ebcc71622a30d646afa1e2b564
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-18 13:32:26 -08:00
Sebastiaan van Stijn
f1b9df9172 swap position of "host" and "ip"
the service definition uses the format as defined
in  http://man7.org/linux/man-pages/man5/hosts.5.html
(IP_address canonical_hostname [aliases...])

This format is the _reverse_ of the format used in
the container API.

Commit f32869d956
inadvertently used the incorrect order.

This fixes the order, and correctly sets it to;

    IP-Address hostname

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-18 22:04:27 +01:00
Darren Stahl
8b50324273 Shutdown instead of terminate process on Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-11-18 12:05:08 -08:00
Sean McIntyre
2c38d43eb5 Add HostConfig.Tmpfs to docs for container creation remote API
Signed-off-by: Sean McIntyre <s.mcintyre@xverba.ca>
2016-11-18 15:00:07 -05:00
Aaron Lehmann
30d0c3899e Merge pull request #28421 from aaronlehmann/digest-pinning-warnings
Return warnings from service create/update when digest pinning fails
2016-11-18 11:33:17 -08:00
Tõnis Tiigi
eb0fc787e6 Merge pull request #28533 from allencloud/judge-manager-first-before-unlocking
judge manager before unlocking
2016-11-18 11:27:48 -08:00
John Howard
61dad306b1 Windows: Fix a longstanding TODO
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-18 10:20:43 -08:00
Evan Hazlett
eb036ea4db lint fixes
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2016-11-18 13:04:08 -05:00
Nishant Totla
e7d83fdb9a Suppressing digest for docker service ls/ps
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2016-11-18 09:39:34 -08:00
Aaron Lehmann
948e60691e Return warnings from service create and service update when digest pinning fails
Modify the service update and create APIs to return optional warning
messages as part of the response. Populate these messages with an
informative reason when digest resolution fails.

This is a small API change, but significantly improves the UX. The user
can now get immediate feedback when they've specified a nonexistent
image or unreachable registry.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-18 09:31:31 -08:00
Brian Goff
06e92cc2c1 Merge pull request #28577 from chchliang/defercode
function setupOOMScoreAdj file close illogicality
2016-11-18 11:48:58 -05:00
Kenfe-Mickael Laventure
8b1aeb22fe Update containerd & runc
containerd: 03e5862ec0d8d3b3f750e19fca3ee367e13c090e
runc: 51371867a01c467f08af739783b8beafc15

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-18 08:15:20 -08:00
allencloud
972a246c67 judge manager before unlocking
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-18 23:49:40 +08:00
Daniel Nephin
7c1b399235 Default parallelism to 1.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-18 16:17:08 +01:00
Alexander Morozov
8874f80e67 Merge pull request #28586 from felipeweb/fix_infinite_recursion
fix infinite recursion
2016-11-18 06:44:52 -08:00
Vincent Demeester
4571ad05db Add documentation about templating support on…
… services creation/update.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-18 15:28:01 +01:00
Vincent Demeester
3bd64de7a9 Add support for healthcheck in composefile v3
`docker stack deploy` now supports a composefile v3 format that have a
healthcheck.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-18 15:09:13 +01:00
Vincent Demeester
b0903c9db0 Update compose-file to bc280351b9589b05c6da031d9f93c5c5d22db922
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-18 15:08:29 +01:00
Doug Davis
c41ff780d8 Merge pull request #28578 from allencloud/remove-redudant-file-Close
remove redundant file Close
2016-11-18 08:21:58 -05:00
Justin Cormack
b4e69fb3aa Merge pull request #28580 from allencloud/fix-nits-in-error-message
fix typos
2016-11-18 13:18:23 +00:00
Brian Goff
3e31f3744e Merge pull request #28584 from justincormack/devpts-multiple-4.8
Fix check config script on 4.8 kernels
2016-11-18 08:18:08 -05:00
Felipe Oliveira
271b1f2756 fix infinite recursion
Signed-off-by: Felipe Oliveira <felipeweb.programador@gmail.com>
2016-11-18 10:57:50 -02:00
Vincent Demeester
6c447f552c Merge pull request #28354 from ripcurld00d/tag_creation
Change the docker-tag usage text to be clearer
2016-11-18 13:02:40 +01:00
Justin Cormack
228ee16df3 Fix check config script on 4.8 kernels
DEVPTS_MULTIPLE_INSTANCES is no longer an option, it is always set, so
do not check for this post 4.8.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-11-18 11:42:05 +00:00
Vincent Demeester
c0acfd1dad Merge pull request #28540 from lixiaobing10051267/masterNewContainerId
expected new_container_id while testing ContainerCommit
2016-11-18 12:13:30 +01:00
Vincent Demeester
9e43a68f69 Merge pull request #28565 from crosbymichael/cputime
Fix cfs period calculation
2016-11-18 12:12:53 +01:00
allencloud
3dca62cfb1 remove redundant file Close
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-18 17:50:02 +08:00
chchliang
e82fa89bcd function setupOOMScoreAdj file close illogicality
Signed-off-by: chchliang <chen.chuanliang@zte.com.cn>
2016-11-18 17:34:01 +08:00
Michael Crosby
aff99136b4 Fix cfs period calculation
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-18 00:47:43 -08:00
Boaz Shuster
039aca05c2 Change the docker-tag usage text to be clearer
Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2016-11-18 10:34:02 +02:00
allencloud
1f039a66ac fix typo
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-18 15:51:36 +08:00
Tõnis Tiigi
27699ba8b2 Merge pull request #28558 from cpuguy83/add_vim
Add vim to Dockerfile
2016-11-17 21:14:19 -08:00
lixiaobing10051267
773ae28dae expected new_container_id while testing ContainerCommit
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-18 10:21:04 +08:00
allencloud
86d7682843 update secret create url for consistency
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-18 10:18:21 +08:00
Brian Goff
7d1a72a286 Add vim to Dockerfile
Why? Most of the time I end up needing an editor when in `make shell`.
Spent much time doing `apt-get update && apt-get install vim`.
Since we're already installing vim-common anyway...

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-17 20:02:26 -05:00
Sebastiaan van Stijn
c6d69ea9e9 Merge pull request #28477 from vdemeester/update-reference-filter-cli-reference
Update `images` cli reference with reference filter
2016-11-18 01:34:48 +01:00
Michael Crosby
4b29f404b1 Merge pull request #28458 from yongtang/28456-cpus-error-message
Fix error messages for `--cpus` from daemon
2016-11-17 16:29:21 -08:00
Sebastiaan van Stijn
d9612db974 Merge pull request #28560 from akshaykarle/master
fix a typo
2016-11-18 01:03:05 +01:00
Andrea Luzzardi
3976a33c1a router: Return explicit error rather than 404 for experimental.
Instead of not adding experimental routes at all, fail with an explicit
message if the daemon is not running in experimental mode.

Added the `router.Experimental` which does this automatically.

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-17 15:51:47 -08:00
Michael Crosby
bbac9eeae6 Merge pull request #28532 from stevvooe/disabled-swarm-service-unavailable
api/server/httputils: service unavailable for disable swarm
2016-11-17 15:16:23 -08:00
Michael Crosby
e61ad74655 Merge pull request #28347 from yongtang/28339-ignore-unkwnon-field-template
Use `map[string]bool` for `preProcessor` to ignore unknown fields
2016-11-17 15:13:02 -08:00
Victor Vieux
98bb08fe38 error on cli when trying to use experimental feature with non experimental daemon
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-17 14:52:01 -08:00
Vincent Demeester
870f52533f Merge pull request #28557 from vdemeester/fix-tini-compilation-error-on-photon
Update Tini to fix photon build-rpm compilation errors
2016-11-17 23:40:39 +01:00
Vincent Demeester
423c014038 Merge pull request #28552 from tomwilkie/fix-multi-read-seeker
Fix use of cap in MultiReadSeeker; possible data corruption bug.
2016-11-17 23:40:30 +01:00
Tõnis Tiigi
43de09045c Merge pull request #28554 from vieux/showhelp
refactor help func in CLI
2016-11-17 14:27:26 -08:00
Akshay Karle
2d08a76421 fix a typo
Signed-off-by: Akshay Karle <akshay.a.karle@gmail.com>
2016-11-17 16:51:37 -05:00
John Howard
64cc7677bf Windows: Native autogen
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-17 13:48:57 -08:00
Brian Goff
6969c98a3c Merge pull request #28383 from zteBill/fix-useless-var
Remove needless var
2016-11-17 16:18:07 -05:00
Tom Wilkie
3a05545851 s/bCap/bLen/
Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com>
2016-11-17 21:05:09 +00:00
Vincent Demeester
ce33d4e1c3 Update Tini to fix photon build-rpm compilation errors
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-17 22:03:32 +01:00
Evan Hazlett
bebd472e40 do not force target type for secret references
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>

use secret store interface instead of embedded secret data into container

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2016-11-17 15:49:02 -05:00
Sebastiaan van Stijn
f297dea657 Merge pull request #28551 from cpuguy83/28517_dont_spew_so_much
Reduce spew data dumped
2016-11-17 21:37:06 +01:00
Brian Goff
22dccaf2d6 Merge pull request #28538 from yongtang/11162016-Log-Logf-fix
Fix several issues with `go vet` and `gofmt -s`
2016-11-17 15:21:22 -05:00
Tõnis Tiigi
b59ee9486f Merge pull request #28531 from cpuguy83/wait_stop_ctx
Use WaitWithContext for WaitStop
2016-11-17 11:52:19 -08:00
Stephen J Day
1d90d76048 api/server/httputils: service unavailable for disable swarm
When swarm-mode is disabled, we need to return an error indicating this.
406 was chosen for the "Not Acceptable" verbiage, but this code has
specific semantics in relation to the `Accept` header, which aren't
applicable here.

We now use a 503 for this case. While it is not a perfect match, it does
make it clear that the particular "service" (read: API endpoint) is not
available. The body of the message provides the user with enough
information to take action on it by enabling swarm-mode and ensuring the
service is available.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-17 11:43:45 -08:00
Brian Goff
31a050e31b Merge pull request #28290 from KevinTHU/master
fix "fatal error: concurrent map read and map write" bugs when we concurrently execute lots of delete volumes and create or list volumes tasks
2016-11-17 13:59:09 -05:00
Aaron Lehmann
6d0f7bb4c7 Merge pull request #28523 from yongtang/28519-service-inspect-pretty-crash
Fix crash caused by `docker service inspect --pretty`
2016-11-17 10:56:57 -08:00
Victor Vieux
bf95472105 refactor help func in CLI
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-17 10:54:10 -08:00
Tom Wilkie
158bb9bbd5 Fix use of cap in MultiReadSeeker
Signed-off-by: Tom Wilkie <tom.wilkie@gmail.com>
2016-11-17 18:36:35 +00:00
Alexander Morozov
0a5a41a438 Merge pull request #28415 from Microsoft/jjh/builduser
Windows: Allow `USER` in builder
2016-11-17 10:32:56 -08:00
Alexander Morozov
c2fbf0871d Merge pull request #28462 from tonistiigi/health-deadlock
Fix deadlock on cancelling healthcheck
2016-11-17 10:30:57 -08:00
Alexander Morozov
8a6c5358af Merge pull request #28536 from allencloud/remove-unused-err-ErrPendingSwarmExists
remove unused error ErrPendingSwarmExists
2016-11-17 10:17:47 -08:00
Brian Goff
4130eb24e9 Reduce spew data dumped
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-17 13:10:48 -05:00
Vincent Demeester
a0d7b34d9c Update images cli reference with reference filter
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-17 15:34:17 +01:00
Brian Goff
57f44b4598 Merge pull request #28526 from aluzzardi/master-revendor-swarmkit
[master] Re-vendor SwarmKit to 91c6e2db9c0c91c466a83529ed16649a1de7ccc4
2016-11-17 09:33:18 -05:00
Yong Tang
ace786e9d5 Fix several issues with go vet and go fmt
For some reason, `go vet` and `go fmt` validate does not capture
several issues.

The following was the output of `go vet`:
```
ubuntu@ubuntu:~/docker$ go vet ./... 2>&1 | grep -v ^vendor | grep -v '^exit status 1$'
cli/command/formatter/container_test.go:393: possible formatting directive in Log call
volume/volume_test.go:257: arg mp.RW for printf verb %s of wrong type: bool
```

The following was the output of `go fmt -s`:
```
ubuntu@ubuntu:~/docker$ gofmt -s -l . | grep -v ^vendor
cli/command/stack/list.go
daemon/commit.go
```

Fixed above issues with `go vet` and `go fmt -s`

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-17 06:31:28 -08:00
Sebastiaan van Stijn
85bc735b4a Merge pull request #28498 from rhvgoyal/rwlayer-opts
Move CreateRWLayer() parameters in a struct
2016-11-17 13:57:59 +01:00
Sebastiaan van Stijn
a58e3e7fef Merge pull request #28512 from anusha-ragunathan/fix_enable
Cleanup after plugin install.
2016-11-17 10:16:47 +01:00
zteBill
4b3a1bbda5 make each return explicitly
Signed-off-by: zteBill <bi.zhenkun@zte.com.cn>
2016-11-17 17:13:25 +08:00
Sebastiaan van Stijn
f47ae61293 Merge pull request #28534 from cizixs/changelog-typo
Fix 1.13.0 changelog typo
2016-11-17 09:57:03 +01:00
Vincent Demeester
465c0484dc Merge pull request #28521 from aaronlehmann/omitempty
api: Remove omitempty tag on Parallelism
2016-11-17 09:05:29 +01:00
Victor Vieux
e93bd7b8ce Merge pull request #28530 from stevvooe/derandom-error-codes
api/server/httputils: ensure consistent status code
2016-11-16 23:52:52 -08:00
Victor Vieux
d75f5178f8 Merge pull request #28537 from YuPengZTE/devTypo
Fix the typo
2016-11-16 23:49:52 -08:00
yupeng
9551dd03cf Fix the typo
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-17 14:13:38 +08:00
allencloud
7777557a3a remove unused error ErrPendingSwarmExists
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-17 14:06:08 +08:00
cizixs
e99e694502 Fix 1.13.0 changelog typo
Signed-off-by: wei wu <wuwei4455@gmail.com>
2016-11-17 12:24:44 +08:00
Brian Goff
36d6d76a41 Use WaitWithContext for WaitStop
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-16 22:08:37 -05:00
Stephen J Day
3484e02590 api/server/httputils: ensure consistent status code
Error code resolution is powered by string matching. Not the greatest
thing in the world and I hope no one is proud of this code, but it
works. However, because a map is used, the iteration order of the map is
random, such that if an error matches two of the snippets, it may return
a different error code depending on the seed of the hashmap. This change
converts it to use a slice instead.

Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-11-16 18:58:55 -08:00
He Xin
19bd1cee23 fix bugs 'fatal error: concurrent map read and map write' to change VolumeStore.globalLock type from Mutex to RWMutex, and add globalLock.RLock() for the read of names, refs, labels and options in VolumeStore
Signed-off-by: He Xin <he_xinworld@126.com>
2016-11-17 10:48:19 +08:00
Andrea Luzzardi
fbe8790759 Re-vendor SwarmKit to 91c6e2db9c0c91c466a83529ed16649a1de7ccc4
Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
2016-11-16 18:15:15 -08:00
Qiang Huang
a532ff8cc3 Add make deb support for aarch64
Fixes: #27045

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2016-11-17 09:38:17 +08:00
Yong Tang
b6857e91c1 Fix crash caused by docker service inspect --pretty
This fix tries to fix the crash caused by `docker service inspect --pretty`,
by performing necessary nil pointer check.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-16 17:26:03 -08:00
Victor Vieux
956ff8f773 Merge pull request #28505 from Microsoft/jjh/revert27884
Windows: Revert 27884
2016-11-16 17:12:19 -08:00
Sebastiaan van Stijn
a5dce0cb1a Merge pull request #28100 from nwt/disable-v1-protocol-for-default-registry
Disable v1 protocol for the default registry
2016-11-17 01:25:31 +01:00
Aaron Lehmann
d8b8b12994 api: Remove omitempty tag on Parallelism
It doesn't make sense to use omitempty here. 0 is a meaningful value and
it's different from the default. If someone sets Parallelism to 0, we
want to show that Parallelism is 0, not hide the field.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-16 16:21:25 -08:00
Victor Vieux
bb845dbd42 Merge pull request #28501 from tonistiigi/fix-daemon-cmd
Skip cli initialization for daemon command
2016-11-16 15:37:43 -08:00
Sebastiaan van Stijn
3f9dc02135 Merge pull request #28322 from Microsoft/jjh/api1.26
Bump API to v1.26
2016-11-17 00:01:46 +01:00
Victor Vieux
895bf6b053 Merge pull request #27749 from riyazdf/plugin-doc-edits
Edits to plugin docs after building authz plugin
2016-11-16 15:01:16 -08:00
Anusha Ragunathan
1144f8f1d4 Cleanup after plugin install.
During error cases, we dont cleanup correctly. This commit takes care
of removing the plugin, if there are errors after the pull passed. It
also shuts down the plugin, if there are errors after the plugin in the
enable path.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-16 14:45:51 -08:00
John Howard
7e03ce3f13 Windows: Revert 27884
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-16 13:38:45 -08:00
Anusha Ragunathan
5659296f15 Merge pull request #28457 from vieux/proper_error_plugin_windows
explicitly show plugins as unsupported on !linux
2016-11-16 13:36:21 -08:00
Vivek Goyal
f7f3d34210 Move CreateRWLayer() parameters in a struct
Move some of the optional parameters of CreateRWLayer() in a struct
called CreateRWLayerOpts. This will make it easy to add more options
arguments without having to change signature of CreateRWLayer().

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2016-11-16 16:31:23 -05:00
Yong Tang
312cc7eebd Use map[string]bool for preProcessor to ignore unknwon field
This fix is an attempt to address the issue raised in 28339. In
`docker ps`, the formatter needs to expose all fields of `types.Container`
to `preProcessor` so that template could be executed.

This direct exposing is unreliable and could cause issues as user may incorrectly
assume all fields in `types.Container` will be available for templating.

However, the purpose of `preProcessor` is to only find out if `.Size`
is defined (so that opts.size could be set accordingly).

This fix defines `preProcessor` as `map[string]bool` with a func `Size()`.
In this way, any unknown fields will be ignored.

This fix adds several test cases to the existing `TestBuildContainerListOptions`.

This fix fixes 28339.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-16 13:23:47 -08:00
Tonis Tiigi
5b0a52f7dc Skip cli initialization for daemon command
Cli initialization pings back to remote API and
creates a deadlock if socket is already being
listened by systemd.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-16 13:19:45 -08:00
Vivek Goyal
288f933ed5 devmapper: get rid of unused device id argument in unregisterDevice()
There is no need to populate device id during unregisterDevice(). Nobody
makes use of this information. We just need to remove file associated
with device and that file is looked up using the hash and not the
device id which is used for thin pool operations.

So get rid of device id argument to unregisterDevice().

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2016-11-16 16:16:46 -05:00
Victor Vieux
77fca662dd Merge pull request #28485 from Microsoft/jjh/remove-make.sh-old-hack
Remove old Windows hack in make.sh
2016-11-16 11:38:19 -08:00
Brian Goff
0bd720b28d Move stack dump dir to exec root
Dump stack dumps to exec root instead of daemon root.
When no path is provided to the stack dumper, such is the case with
SIGQUIT, dump to stderr.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-16 12:55:18 -05:00
Riyaz Faizullabhoy
a524c135dc Edits to plugin docs after building authz plugin
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-11-16 09:53:23 -08:00
Michael Crosby
1c29c3a54d Merge pull request #28420 from vieux/update_tini
update tini to a87614212b3a51a9cad57ff7989103a841546745
2016-11-16 09:46:11 -08:00
John Howard
5e6f8cb4a7 Remove old Windows hack in make.sh
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-16 09:29:38 -08:00
Vincent Demeester
673c5ee559 Merge pull request #27631 from allencloud/get-node-brefore-update
allow node update API to receive node name and id prefix
2016-11-16 17:47:31 +01:00
Doug Davis
4dff538118 Merge pull request #28467 from miaoyq/del-redundant-logical-judgmont-statement
Remove redundant 'if' statement
2016-11-16 11:34:40 -05:00
Vincent Demeester
9057294e4c Merge pull request #28475 from vdemeester/update-stats-reference
Update stats cli reference documentation
2016-11-16 17:25:52 +01:00
Vincent Demeester
947464e2f1 Update stats cli reference documentation
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-16 15:26:29 +01:00
Justin Cormack
4549e9104c Merge pull request #28440 from cpuguy83/20740_fix_tmpfs_parsing_on_client
Don't validate platform-dep tmpfs opts on client
2016-11-16 12:04:14 +00:00
Sebastiaan van Stijn
297f2fd445 Merge pull request #28346 from yongtang/11122016-docs-api-version
Fix missing versions in example requests of api docs
2016-11-16 12:15:05 +01:00
Vincent Demeester
cd2d52b5f6 Merge pull request #28316 from yongtang/28018-docker-info-swarm-managers-docs
Update docs for `docker info` for most recent changes.
2016-11-16 12:08:35 +01:00
Vincent Demeester
d60cb82ca5 Merge pull request #28471 from lixiaobing10051267/masterLogGroupName
function TestCreateSuccess uses a wrong variable LogGroupName
2016-11-16 12:06:15 +01:00
Vincent Demeester
cec2dffd50 Merge pull request #28468 from sdurrheimer/zsh-completion-system-df
Add zsh completion for 'docker system df'
2016-11-16 12:05:49 +01:00
Yanqiang Miao
d63dc45f0b Remove redundant 'if' statement
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>

update

Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-16 16:50:54 +08:00
lixiaobing10051267
320c93824b function TestCreateSuccess uses a wrong variable LogGroupName
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-16 16:48:36 +08:00
Steve Durrheimer
70fdbff5f0 Add zsh completion for 'docker system df'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-16 08:39:21 +01:00
Yanqiang Miao
c44c542d95 The type of 'ExportdPorts' should be 'nat.PortSet'
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-16 13:36:11 +08:00
Tonis Tiigi
89b1234737 Fix deadlock on cancelling healthcheck
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-15 20:10:16 -08:00
Tõnis Tiigi
6697fa8a68 Merge pull request #28447 from nishanttotla/use-distribution-reference-pkg
Using distribution reference pkg (pin image by digest)
2016-11-15 20:05:26 -08:00
allencloud
d075b83dd6 allow node update api receive node name and id prefix
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-16 10:18:19 +08:00
Yong Tang
d22ac2f3a0 Fix error messages for --cpus from daemon
This fix fixes error messages for `--cpus` from daemon.

When `docker run` takes `--cpus`, it will translate into NanoCPUs
and pass the value to daemon. The `NanoCPU` is not visible to the user.
The error message generated from daemon used 'NanoCPU' which may cause
some confusion to the user.

This fix fixes this issue by returning the error in CPUs instead.

This fix fixes 28456.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-15 17:16:09 -08:00
Victor Vieux
ff2de8dace Merge pull request #28444 from allencloud/move-getNetwork-func-into-helper-gofile
move func getNetwork into helper.go to keep consistent
2016-11-15 17:03:23 -08:00
Victor Vieux
a8139460ff explicitly show plugins as unsupported on !linux
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2016-11-15 16:47:30 -08:00
Sebastiaan van Stijn
b35973ffe8 Merge pull request #28272 from Microsoft/jjh/sequentialscan2
Windows: Perf: Use sequential file access
2016-11-16 00:47:19 +01:00
Elan Ruusamäe
d7df731597 do not require custom build of tini
https://github.com/krallin/tini/issues/55#issuecomment-260507562
https://github.com/krallin/tini/issues/55#issuecomment-260538243
https://github.com/docker/docker/pull/28037

Signed-off-by: Elan Ruusamäe <glen@delfi.ee>
2016-11-16 00:08:55 +02:00
Nishant Totla
dc1b6341b9 Refactoring code for pinning image by digest
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2016-11-15 13:54:47 -08:00
Sebastiaan van Stijn
5f577bfa6b Merge pull request #28453 from thaJeztah/revert-docs-for-ambient-capabilities
Revert reference docs for ambient capabilities
2016-11-15 22:31:06 +01:00
Sebastiaan van Stijn
d341bb1b6e Revert reference docs for ambient capabilities
This feature was reverted for docker 1.13
in c5251f7116,
so removing the documentation as well.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-15 21:59:21 +01:00
Alexander Morozov
27c20a7ea0 Merge pull request #28436 from vdemeester/incremental-build-by-default
Build docker incrementally by default
2016-11-15 09:55:43 -08:00
Vincent Demeester
5f81cf11f6 Use Container.Config.Shell instead of hardcoded…
… for healthcheck. It make the code a little cleaner and more
future/usage proof.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-15 17:53:24 +01:00
allencloud
729b49e9c5 move func getNetwork into helper.go to keep consistent
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-16 00:28:56 +08:00
Brian Goff
b9b8d8b364 Don't validate platform-dep tmpfs opts on client
Daemon still does validation and errors out on incorrect options.

Fixes an issue where non-Linux clients attempting to pass tmpfs options
on `docker run` to a Linux daemon will incorrectly error out.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-15 11:01:40 -05:00
Vincent Demeester
2c342cff79 Build docker incrementally by default
This speeds up docker build time drastically. It still possible to
disable this by setting `DOCKER_INCREMENTAL_BUILD` to `0` (and this is
what should be done on the CI).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-15 16:23:48 +01:00
Vincent Demeester
03f79a2115 Merge pull request #28435 from jonboulle/master
man/docker: wrap lines consistently
2016-11-15 15:47:05 +01:00
Sebastiaan van Stijn
ae6f09b29c deprecate "top-level" network information in NetworkSettings
When inspecting a container, `NetworkSettings` contains top-level
information about the default ("bridge") network;

`EndpointID`, `Gateway`, `GlobalIPv6Address`, `GlobalIPv6PrefixLen`,
`IPAddress`, `IPPrefixLen`, `IPv6Gateway`, and `MacAddress`.

These properties are deprecated in favor of per-network properties in
`NetworkSettings.Networks`. These properties were already "deprecated" in
docker 1.9, but kept around for backward compatibility.

Refer to [#17538](https://github.com/docker/docker/pull/17538) for further
information.

This officially deprecates these properties, and marks them
for removal in 1.16

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-15 15:41:52 +01:00
Sebastiaan van Stijn
95c898d1f9 Merge pull request #28422 from yuexiao-wang/update-driver
Modify serial number and fix some typos
2016-11-15 15:04:32 +01:00
Jonathan Boulle
ba408fbc9a man/docker: wrap lines consistently
Quite a few changes, as it seems like previous wrapping was done
manually, so it's all over the place.

As noted in #28424

Signed-off-by: Jonathan Boulle <jonathanboulle@gmail.com>
2016-11-15 22:46:25 +09:00
Vincent Demeester
101676a591 Merge pull request #28419 from yuexiao-wang/remove-stack-tasks
Remove inexistent link and add related links
2016-11-15 13:51:46 +01:00
Sebastiaan van Stijn
c716827dc8 Merge pull request #26868 from Microsoft/jjh/deprecateemail
1.14 deprecation: email from login
2016-11-15 13:08:05 +01:00
Vincent Demeester
b6e1f11105 Merge pull request #28384 from bbayani/28295_live_restore_unsupported_win
Updated daemon documentation to clarify that live-restore is not supp…
2016-11-15 11:06:26 +01:00
Vincent Demeester
832833db48 Merge pull request #28424 from jonboulle/master
man page: consistent indents for flag descriptions
2016-11-15 10:45:42 +01:00
yuexiao-wang
9ddd1242db Modify serial number and fix some typos
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-15 17:15:26 +08:00
bbayani
45bccaeacb Updated daemon documentation to clarify that live-restore is not suppoted on windows
Review comment implementation

Signed-off-by: bbayani <bhumikabayani@gmail.com>
2016-11-15 07:07:43 +00:00
Jonathan Boulle
8eeaa25563 man page: consistent indents for flag descriptions
Signed-off-by: Jonathan Boulle <jonathanboulle@gmail.com>
2016-11-15 14:59:47 +09:00
Victor Vieux
b1a91dcc0f update tini to a87614212b3a51a9cad57ff7989103a841546745
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-11-14 17:47:04 -08:00
John Howard
7c29f5beed Windows: Use sequential file access
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-14 17:41:52 -08:00
yuexiao-wang
985cc9fb05 Remove inexistent link and add related links
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-15 09:40:44 +08:00
Victor Vieux
da32371922 Merge pull request #28417 from Microsoft/jjh/autogen
Gitignore dockerversion\version_autogen_unix.go
2016-11-14 17:32:15 -08:00
Brian Goff
eb3a489246 Merge pull request #28418 from anusha-ragunathan/disable_with_grace
Perform graceful shutdown during plugin disable.
2016-11-14 20:27:11 -05:00
Sebastiaan van Stijn
ccba7911c8 Merge pull request #28292 from lixiaobing10051267/masterDockerSwarm
fix the wrong title with docker swarm
2016-11-15 00:37:07 +01:00
Nishant Totla
d910781c66 Updating docker/distribution vendoring
Signed-off-by: Nishant Totla <nishanttotla@gmail.com>
2016-11-14 15:31:25 -08:00
Sebastiaan van Stijn
35ee642feb Merge pull request #28380 from sdurrheimer/zsh-completion-build-network
Add zsh completion for 'docker image build --network'
2016-11-15 00:30:30 +01:00
John Howard
e2adb5560b Gitignore dockerversion\version_autogen_unix.go
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-14 15:18:23 -08:00
Anusha Ragunathan
766cc9b467 Perform graceful shutdown during plugin disable.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-14 15:09:48 -08:00
Victor Vieux
8930aa0a86 Merge pull request #28340 from cpuguy83/28337_fix_template_opts_ps
Fix issue with missing fields for `ps` template
2016-11-14 14:25:01 -08:00
John Howard
9182cf1a8d Bump API to v1.26
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-14 14:24:02 -08:00
Victor Vieux
b06dc994f6 Merge pull request #27985 from muayyad-alsadi/17734-better-message-for-host-volumes
fixes #17734, clear message for host volumes not starting with /
2016-11-14 14:21:17 -08:00
John Howard
a3c4ab9b65 Windows: Allow user in builder
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-14 14:10:47 -08:00
Justin Cormack
65835bfaa6 Merge pull request #28410 from cpuguy83/move_streamconfig
Move `StreamConfig` out of `runconfig`
2016-11-14 21:50:52 +00:00
Brian Goff
5ea75bb6bf Move StreamConfig out of runconfig
`StreamConfig` carries with it a dep on libcontainerd, which is used by
other projects, but libcontainerd doesn't compile on all platforms, so
move it to `github.com/docker/docker/container/stream`

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-14 15:15:09 -05:00
Victor Vieux
bf7759cb75 Merge pull request #28397 from anusha-ragunathan/plugin_push_docs
Add docs for plugin push
2016-11-14 11:22:49 -08:00
Tibor Vass
27b673bb81 Merge pull request #28341 from johnstep/show-experimental
Show experimental flags and subcommands if enabled
2016-11-14 11:18:09 -08:00
Anusha Ragunathan
d2bb29f87e Add docs for plugin push
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-11-14 09:10:21 -08:00
Sebastiaan van Stijn
6cf3976041 Merge pull request #28280 from yuexiao-wang/remove-doc
Remove duplicated document
2016-11-14 17:34:47 +01:00
Muayyad Alsadi
2d3df91436 remove "starting with /"
Signed-off-by: Muayyad Alsadi <alsadi@gmail.com>
2016-11-14 16:51:29 +02:00
Sebastiaan van Stijn
a27e51ea98 Merge pull request #28378 from sdurrheimer/zsh-completion-service-dns
Add zsh completion for 'docker service' DNS settings
2016-11-14 15:46:05 +01:00
Sebastiaan van Stijn
b661338d87 Merge pull request #28386 from sdurrheimer/zsh-completion-service-secret
Add zsh completion for 'docker service {create,update} --secret'
2016-11-14 15:23:03 +01:00
Vincent Demeester
21051de6e1 Merge pull request #28365 from wefine/fix-t-errorf
fix t.Errorf to t.Error in serveral _test.go
2016-11-14 14:46:30 +01:00
Steve Durrheimer
0bc07d2957 Add zsh completion for 'docker service {create,update} --secret'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-14 13:38:48 +01:00
Sebastiaan van Stijn
e129365fd3 Merge pull request #28344 from albers/completion-service--ports
Add bash completion for managing ports in services
2016-11-14 12:40:36 +01:00
Sebastiaan van Stijn
7ee0c3c9f8 Merge pull request #28381 from sdurrheimer/zsh-completion-secret-command
Add zsh completion for the new 'docker secret' command
2016-11-14 12:14:25 +01:00
wefine
f78f7de96a fix t.Errorf to t.Error in serveral _test.go
Signed-off-by: wefine <wang.xiaoren@zte.com.cn>
2016-11-14 17:54:43 +08:00
Vincent Demeester
28094357ed Merge pull request #28203 from shaynewang/27687-fix-tail-flag-returning-more-lines
Fixes #27687 docker logs --tails returns less lines than expected
2016-11-14 10:17:38 +01:00
Steve Durrheimer
54ebf4f74a Add zsh completion for 'docker service' DNS settings
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-14 09:45:27 +01:00
Akihiro Suda
e7769e29e0 Merge pull request #28369 from yongtang/11132016-completion-dns-option
Update bash completion `dns-options-add/rm` -> `dns-option-add/rm`
2016-11-14 16:39:28 +09:00
Steve Durrheimer
b184bdabf7 Add zsh completion for the new 'docker secret' command
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-14 08:24:19 +01:00
Steve Durrheimer
11bfa638fe Add zsh completion for 'docker image build --network'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-14 08:22:09 +01:00
yuexiao-wang
5527202e41 Remove duplicated document
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-11-14 14:43:00 +08:00
Lei Jitang
2b5f1050cc Merge pull request #28370 from yongtang/11132016-docs-typo
Fix a small typo in `docs/deprecated.md`
2016-11-14 13:34:03 +08:00
Shayne Wang
63904eb674 Change reading order of tailfile
change reading order from beginning at the end to beginning at a buffer start
added intergration tests for boundary cases
Removed whitespace
Signed-off-by: Shayne Wang <shaynexwang@gmail.com>
2016-11-13 20:08:51 -08:00
Yong Tang
45e5b2552a Fix a small typo in docs/deprecated.md
A small typo in `docs/deprecated.md`.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-13 20:04:25 -08:00
Yong Tang
fb8404a348 Update bash completion dns-options-add/rm -> dns-option-add/rm
In 28186, `dns-options-add/rm` has been changed to `dns-option-add/rm`
in `docker service create/update`, for the purpose of consistency.

This fix updates bash completion to remove extra `s`.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-13 19:12:01 -08:00
Brian Goff
d8a7b13cd6 Merge pull request #28367 from miaoyq/fix-a-comment-err
Fix a comment error
2016-11-13 21:12:59 -05:00
Yanqiang Miao
19e2c9177a Fix a comment error
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-11-14 09:55:27 +08:00
Vincent Demeester
0f20d6f5ab Merge pull request #28350 from allencloud/add-swarm-judging-in-secret-API
judge manager before getting secret
2016-11-13 22:19:07 +01:00
Akihiro Suda
f39cb08209 Merge pull request #28362 from albers/completion-service-dns
Add bash completion for DNS settings in services
2016-11-14 05:42:24 +09:00
Vincent Demeester
e649cc1476 Merge pull request #28360 from albers/completion-service-ps--all
Add bash completion for `docker service ps --all`
2016-11-13 21:39:07 +01:00
Vincent Demeester
f1dd4c5ad8 Merge pull request #28357 from sdurrheimer/zsh-completion-service-ports
Add zsh completion for 'docker service {create --port, update --port-…
2016-11-13 21:38:17 +01:00
Vincent Demeester
bf2c875cd6 Merge pull request #28355 from sdurrheimer/zsh-completion-build-cache-from
Add zsh completion for 'docker image build --cache-from'
2016-11-13 21:37:10 +01:00
Vincent Demeester
7220888b09 Merge pull request #28342 from albers/completion-build--cache-from
Add bash completion for `docker build --cache-from`
2016-11-13 21:34:55 +01:00
Vincent Demeester
1e673b9876 Merge pull request #28310 from mlaventure/docker-info-update
Docker info binaries version update
2016-11-13 21:24:51 +01:00
Harald Albers
28dc8c863a Add bash completion for DNS settings in services
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-13 11:17:18 -08:00
Harald Albers
188d2fac57 Add bash completion for docker service ps --all
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-13 09:32:53 -08:00
Doug Davis
3be885cd89 Merge pull request #28359 from allencloud/fix-typo-in-node-update-docs
fix typo in node update docs
2016-11-13 10:41:09 -06:00
allencloud
7bbbc8c7f1 fix typo in node update docs
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-14 00:07:52 +08:00
Akihiro Suda
de5d4701e3 Merge pull request #28356 from albers/completion-fix-ps--filter-is-task
Fix bash completion for `docker ps --filter is-task`
2016-11-14 00:18:14 +09:00
Steve Durrheimer
36916ae2ad Add zsh completion for 'docker service {create --port, update --port-{add,rm}}'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-13 14:21:13 +01:00
Harald Albers
279bd827fe Add bash completion for managing ports in services
Bash completion for

- `docker service create --port`
- `docker service update --port-{add,rm}`

Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-13 04:57:37 -08:00
Harald Albers
7b6a38e1b1 Fix bash completion for docker ps --filter is-task
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-13 04:54:54 -08:00
Steve Durrheimer
ac50074258 Add zsh completion for 'docker image build --cache-from'
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
2016-11-13 13:52:52 +01:00
allencloud
1addb4817b judge manager before getting secret
Signed-off-by: allencloud <allen.sun@daocloud.io>
2016-11-13 12:52:09 +08:00
Yong Tang
d725764083 Update docs for docker info for most recent changes.
This fix updates docs for `docker info` for most recent changes.
It also made several chagnes:
1. Replace 0.12.0-dev to 0.13.0 for api docs v1.24.
2. Replace 0.13.0-dev to 0.13.0 for api docs v1.25

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-12 17:30:53 -08:00
Yong Tang
9dabde5b01 Fix missing versions in example requests of api docs
It is not required to have version prefix for all the remote
APIs. Though there are still quite a few example requests
in api docs that does not have the version prefix.

This fix update the remote api docs to address this issue.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2016-11-12 13:12:02 -08:00
Harald Albers
d48e70843f Add bash completion for docker build --network
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-12 10:32:08 -08:00
Harald Albers
c6357f04b5 Add bash completion for docker build --cache-from
Signed-off-by: Harald Albers <github@albersweb.de>
2016-11-12 10:12:47 -08:00
Brian Goff
b4ab453084 Fix issue with missing fields for ps template
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-11-12 11:23:21 -05:00
Vincent Demeester
c8492ebc5d Merge pull request #28317 from tonistiigi/amd64-plugin-tests
Skip plugin tests if not in amd64
2016-11-12 13:52:42 +01:00
Vincent Demeester
4833915644 Merge pull request #28333 from chchliang/wordcode
`dont` spell error
2016-11-12 13:51:53 +01:00
Vincent Demeester
eb131c5383 Merge pull request #28330 from YuPengZTE/devCtx
context.Context should be the first parameter of a function
2016-11-12 13:18:17 +01:00
chchliang
167f2f3f1b don't spell error
Signed-off-by: chchliang <chen.chuanliang@zte.com.cn>
2016-11-12 14:57:37 +08:00
yupeng
aff5dacec1 context.Context should be the first parameter of a function
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
2016-11-12 14:14:34 +08:00
Aaron Lehmann
32b12a28fc cli: Add valid suffixes for remaining duration options
A recent PR added `(ns|us|ms|s|m|h)` to the descriptions of some
duration options, but not all. Add it to the remaining options for
consistency.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-11-11 17:44:42 -08:00
John Stephens
d67aa065ef Show experimental flags and subcommands if enabled
Signed-off-by: John Stephens <johnstep@docker.com>
2016-11-11 17:43:06 -08:00
John Howard
a66efbddb8 Planned 1.13 deprecation: email from login
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-11 17:32:46 -08:00
Tõnis Tiigi
851d9149b1 Merge pull request #28309 from LK4D4/fix_non_autogen
dockerversion: add other binaries to _lib.go
2016-11-11 15:39:00 -08:00
Brian Goff
c03900ab30 Merge pull request #28323 from Microsoft/jjh/typoinremoteapi1.25
Extra v1.25 in API docs
2016-11-11 16:39:18 -05:00
John Howard
beccd3663f Extra v1.25 in API docs
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-11 12:50:05 -08:00
Vincent Demeester
744d9dac10 Merge pull request #28306 from ehazlett/service-create-no-secrets
only check secrets for service create if requested
2016-11-11 20:58:40 +01:00
Victor Vieux
6a747fcf57 Merge pull request #28318 from vieux/bump_version
bump version to 1.14.0-dev
2016-11-11 10:29:15 -08:00
Tonis Tiigi
e23e36f25c Skip plugin tests if not in amd64
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-11-11 09:52:13 -08:00
Kenfe-Mickael Laventure
17df5593eb Remove extra binaries commit variables from windows build
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-11 08:24:17 -08:00
Kenfe-Mickael Laventure
69f0402585 Fix version detection for docker-init
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-11 08:19:32 -08:00
Alexander Morozov
e60e54c12a dockerversion: add other binaries to _lib.go
Otherwise it's impossible to build without autogen tag

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-11-11 07:56:10 -08:00
Evan Hazlett
8dfdecbd2b only check secrets for service create if requested
Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
2016-11-11 10:07:24 -05:00
Ian Campbell
3c233b13a0 pkg/jsonmessage: Encode ANSI ESC directly as \x1b rather than via fmt as %c
This seems clearer to me and avoids a miniscule amount of string formatting.

I have deliberately not changed the tests here to avoid the possibility of
changing both wrongly.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-11 11:42:38 +00:00
Ian Campbell
f02221a794 pkg/jsonmessage: Use terminfo rather than open coding ANSI escape codes
Although our use of ANSI codes here is rather simple it is generally good
practice to use terminfo in order to be portable to different terminal
emulators.

Vendor github.com/Nvveen/Gotty (actually my fork with a fix, see
https://github.com/Nvveen/Gotty/pull/1) and use that to parse the terminfo
files.

Note that "\e]2K" (clear entire line) is not covered by terminfo. We can
achieve the same end by first clearing from begining of line to cursor
(el1="\e]1K") and then clearing from cursor to end of line (el="\e]k").

Test suite has been updated and forces (either directly or by setting $TERM to
something highly unlikely to exist) the use of the non-terminfo fallbacks which
retains the same output behaviour as previously. This is preferable even to
relying on a well-known and relatively static terminfo (like vt102) since even
that in principal might have different terminfo encodings.

In case terminfo is not available at all for $TERM or doesn't expose the
specific capabilities which we use then fall back to the previous manual
escapes, with the exception that we avoid "\e]2K" as discussed above.

Tested with a manual docker pull with rxvt-unicode ($TERM=rxvt-unicode), xterm
($TERM=xterm), mlterm ($TERM=mlterm) and aterm ($TERM=kterm).

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-11 11:40:53 +00:00
Ian Campbell
2e3baa98eb pkg/jsonmessage: Wrap test failure messages so control characters align
When logging the failure of a case which involves control characters add line
feeds and spacing such that the expected and actual strings are aligned in the
same columns making comparisons easier.

Turns:
	jsonmessage_test.go:156: Expected "\x1b[2K\rstatus      1 B\r", got "\x1b[1K\x1b[K\rstatus      1 B\r"
Into:
	jsonmessage_test.go:156:
		Expected "\x1b[2K\rstatus      1 B\r"
		     got "\x1b[1K\x1b[K\rstatus      1 B\r"

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-11 11:40:11 +00:00
Ian Campbell
6582cfb1d4 pkg/jsonmessage: Format all test expected/actual strings with %q
The majority already did so, but a few used %v.

Compared with %v using %q escapes any control characters ensuring they are
visible in the logs (otherwise they can cause scrolling and overwriting etc).

The %q formatter also includes the surrounding "s making the manual use of []
to wrap/delimit the %v output unnecessary.

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-11-11 11:39:05 +00:00
Victor Vieux
869242662b bump version to 1.14.0-dev
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-11-11 02:28:13 -08:00
lixiaobing10051267
f469021f88 fix the wrong title with docker swarm
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
2016-11-11 17:44:00 +08:00
Noah Treuhaft
7ffb4ad81a Disable v1 protocol for the default registry
All images in the default registry (AKA docker.io, index.docker.io, and
registry-1.docker.io) are available via the v2 protocol, so there's no
reason to use the v1 protocol.  Disabling it prevents useless fallbacks.

Signed-off-by: Noah Treuhaft <noah.treuhaft@docker.com>
2016-11-11 00:23:25 -08:00
Harry Zhang
390fe752a2 return when error happens on listener close
Signed-off-by: Harry Zhang <harryz@hyper.sh>
2016-11-03 23:13:24 +08:00
Boaz Shuster
786a95493d Return an empty stats if the container is restarting
In case, a container is restarting indefinitely running
"docker stats --no-stream <restarting_container>" is suspended.

To fix this, the daemon makes sure the container is either not
running or restarting if `--no-stream` is set to true and if so
returns an empty stats.

Should fix #27772.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2016-11-03 13:26:24 +02:00
Muayyad Alsadi
a8180eeaed fixes #17734, clear message for host volumes not starting with /
Signed-off-by: Muayyad Alsadi <alsadi@gmail.com>
2016-11-02 12:19:10 +02:00
Erik Hollensbe
6ab57aafa6 api/types/client.go: documentation fix for ImageImportSource
Signed-off-by: Erik Hollensbe <github@hollensbe.org>
2016-10-31 21:17:55 -07:00
Sebastiaan van Stijn
29b98b6ee6 remove unsupported distros from install script
The install script currently includes some
distros that we don't actually have packages
for.

For these distros, the script currently
performs step to install Docker from
the distro's repository.

This patch removes those distros from
the install script, because we have no
control over these packages, and cannot
provide support for them.

Installing docker anyway will give the
false impression that they installed
a package from our repository (but they
didn't), and that they need to contact
us for support.

It's better to tell people that we don't
install in that case, and refer them to
the installation documentation, or the
documentation of their distro.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-10-26 10:58:17 -07:00
Vivek Goyal
885b29df09 Warn if kernel does not support overlay/overlay2 with selinux
We first added error to not allow overlay with selinux enabled. Then later
we removed it as kernel was getting close to get the support. But this 
means user does not get meaningful message on old kernels.

This patch introduces a warning (Instead of error). Difference is that it
dynamically tries to detect if underlying kernel supports overlayfs with
selinux or not. And if it does not, it warns.

It will not warn if it detects that kernel supports overlayfs with selinux.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2016-10-04 15:35:56 -04:00
2469 changed files with 199009 additions and 234016 deletions

View File

@@ -2,3 +2,6 @@ bundles
.gopath
vendor/pkg
.go-pkg-cache
.git
hack/integration-cli-on-swarm/integration-cli-on-swarm

3
.gitignore vendored
View File

@@ -16,7 +16,9 @@ autogen/
bundles/
cmd/dockerd/dockerd
cmd/docker/docker
contrib/builder/rpm/*/changelog
dockerversion/version_autogen.go
dockerversion/version_autogen_unix.go
docs/AWS_S3_BUCKET
docs/GITCOMMIT
docs/GIT_BRANCH
@@ -30,3 +32,4 @@ man/man1
man/man5
man/man8
vendor/pkg/
hack/integration-cli-on-swarm/integration-cli-on-swarm

View File

@@ -131,7 +131,8 @@ Francisco Carriedo <fcarriedo@gmail.com>
<baloo@gandi.net> <superbaloo+registrations.github@superbaloo.net>
Brian Goff <cpuguy83@gmail.com>
<cpuguy83@gmail.com> <bgoff@cpuguy83-mbp.home>
<eric@windisch.us> <ewindisch@docker.com>
Erica Windisch <erica@windisch.us> <ewindisch@docker.com>
Erica Windisch <erica@windisch.us> <eric@windisch.us>
<frank.rosquin+github@gmail.com> <frank.rosquin@gmail.com>
Hollie Teal <hollie@docker.com>
<hollie@docker.com> <hollie.teal@docker.com>
@@ -142,6 +143,7 @@ Jessica Frazelle <jessfraz@google.com> <me@jessfraz.com>
Jessica Frazelle <jessfraz@google.com> <jess@mesosphere.com>
Jessica Frazelle <jessfraz@google.com> <jfrazelle@users.noreply.github.com>
Jessica Frazelle <jessfraz@google.com> <acidburn@docker.com>
Jessica Frazelle <jessfraz@google.com> <acidburn@google.com>
Jessica Frazelle <jessfraz@google.com> <jess@docker.com>
Jessica Frazelle <jessfraz@google.com> <princess@docker.com>
<konrad.wilhelm.kleine@gmail.com> <kwk@users.noreply.github.com>
@@ -273,3 +275,47 @@ Tom Barlow <tomwbarlow@gmail.com>
Xianlu Bird <xianlubird@gmail.com>
Dan Feldman <danf@jfrog.com>
Harry Zhang <harryz@hyper.sh> <harryzhang@zju.edu.cn>
Alex Chen <alexchenunix@gmail.com> alexchen <root@localhost.localdomain>
Alex Ellis <alexellis2@gmail.com>
Alicia Lauerman <alicia@eta.im> <allydevour@me.com>
Ben Bonnefoy <frenchben@docker.com>
Bhumika Bayani <bhumikabayani@gmail.com>
Bingshen Wang <bingshen.wbs@alibaba-inc.com>
Chen Chuanliang <chen.chuanliang@zte.com.cn>
Chen Mingjie <chenmingjie0828@163.com>
CUI Wei <ghostplant@qq.com> cuiwei13 <cuiwei13@pku.edu.cn>
Dattatraya Kumbhar <dattatraya.kumbhar@gslab.com>
Diego Siqueira <dieg0@live.com>
Evelyn Xu <evelynhsu21@gmail.com>
Felix Ruess <felix.ruess@gmail.com> <felix.ruess@roboception.de>
Gabriel Nicolas Avellaneda <avellaneda.gabriel@gmail.com>
Gang Qiao <qiaohai8866@gmail.com> <1373319223@qq.com>
Helen Xie <chenjg@harmonycloud.cn>
Jacob Tomlinson <jacob@tom.linson.uk> <jacobtomlinson@users.noreply.github.com>
Jiuyue Ma <majiuyue@huawei.com>
Jose Diaz-Gonzalez <jose@seatgeek.com> <josegonzalez@users.noreply.github.com>
Josh Eveleth <joshe@opendns.com> <jeveleth@users.noreply.github.com>
Josh Wilson <josh.wilson@fivestars.com> <jcwilson@users.noreply.github.com>
Kevin Kern <kaiwentan@harmonycloud.cn>
Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp> <kunal.kushwaha@gmail.com>
Lajos Papp <lajos.papp@sequenceiq.com> <lalyos@yahoo.com>
Lyn <energylyn@zju.edu.cn>
Michael Käufl <docker@c.michael-kaeufl.de> <michael-k@users.noreply.github.com>
Michal Minář <miminar@redhat.com>
Michael Hudson-Doyle <michael.hudson@canonical.com> <michael.hudson@linaro.org>
Milind Chawre <milindchawre@gmail.com>
Ma Müller <mueller-ma@users.noreply.github.com>
Roberto Muñoz Fernández <robertomf@gmail.com> <roberto.munoz.fernandez.contractor@bbva.com>
Stefan S. <tronicum@user.github.com>
Sun Gengze <690388648@qq.com>
Tim Zju <21651152@zju.edu.cn>
Tõnis Tiigi <tonistiigi@gmail.com>
Wang Ping <present.wp@icloud.com>
Wang Yuexiao <wang.yuexiao@zte.com.cn>
Wewang Xiaorenfine <wang.xiaoren@zte.com.cn>
Wei Wu <wuwei4455@gmail.com> cizixs <cizixs@163.com>
Ying Li <ying.li@docker.com> <cyli@twistedmatrix.com>
Yu Peng <yu.peng36@zte.com.cn>
Yu Peng <yu.peng36@zte.com.cn> <yupeng36@zte.com.cn>
Zhenkun Bi <bi.zhenkun@zte.com.cn>
Zhu Kunjia <zhu.kunjia@zte.com.cn>

166
AUTHORS
View File

@@ -7,17 +7,20 @@ Aaron Feng <aaron.feng@gmail.com>
Aaron Huslage <huslage@gmail.com>
Aaron Lehmann <aaron.lehmann@docker.com>
Aaron Welch <welch@packet.net>
Aaron.L.Xu <likexu@harmonycloud.cn>
Abel Muiño <amuino@gmail.com>
Abhijeet Kasurde <akasurde@redhat.com>
Abhinav Ajgaonkar <abhinav316@gmail.com>
Abhishek Chanda <abhishek.becs@gmail.com>
Abin Shahab <ashahab@altiscale.com>
Adam Avilla <aavilla@yp.com>
Adam Eijdenberg <adam.eijdenberg@gmail.com>
Adam Kunk <adam.kunk@tiaa-cref.org>
Adam Miller <admiller@redhat.com>
Adam Mills <adam@armills.info>
Adam Singer <financeCoding@gmail.com>
Adam Walz <adam@adamwalz.net>
Addam Hardy <addam.hardy@gmail.com>
Aditi Rajagopal <arajagopal@us.ibm.com>
Aditya <aditya@netroy.in>
Adolfo Ochagavía <aochagavia92@gmail.com>
@@ -35,6 +38,8 @@ AJ Bowen <aj@gandi.net>
Ajey Charantimath <ajey.charantimath@gmail.com>
ajneu <ajneu@users.noreply.github.com>
Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
Akira Koyasu <mail@akirakoyasu.net>
Akshay Karle <akshay.a.karle@gmail.com>
Al Tobey <al@ooyala.com>
alambike <alambike@gmail.com>
Alan Scherger <flyinprogrammer@gmail.com>
@@ -47,6 +52,7 @@ Alena Prokharchyk <alena@rancher.com>
Alessandro Boch <aboch@docker.com>
Alessio Biancalana <dottorblaster@gmail.com>
Alex Chan <alex@alexwlchan.net>
Alex Chen <alexchenunix@gmail.com>
Alex Coventry <alx@empirical.com>
Alex Crawford <alex.crawford@coreos.com>
Alex Ellis <alexellis2@gmail.com>
@@ -66,7 +72,10 @@ Alexey Guskov <lexag@mail.ru>
Alexey Kotlyarov <alexey@infoxchange.net.au>
Alexey Shamrin <shamrin@gmail.com>
Alexis THOMAS <fr.alexisthomas@gmail.com>
Alfred Landrum <alfred.landrum@docker.com>
Ali Dehghani <ali.dehghani.g@gmail.com>
Alicia Lauerman <alicia@eta.im>
Alihan Demir <alihan_6153@hotmail.com>
Allen Madsen <blatyo@gmail.com>
Allen Sun <allen.sun@daocloud.io>
almoehi <almoehi@users.noreply.github.com>
@@ -74,6 +83,7 @@ Alvaro Saurin <alvaro.saurin@gmail.com>
Alvin Richards <alvin.richards@docker.com>
amangoel <amangoel@gmail.com>
Amen Belayneh <amenbelayneh@gmail.com>
Amir Goldstein <amir73il@aquasec.com>
Amit Bakshi <ambakshi@gmail.com>
Amit Krishnan <amit.krishnan@oracle.com>
Amit Shukla <amit.shukla@docker.com>
@@ -97,10 +107,12 @@ Andrew Duckworth <grillopress@gmail.com>
Andrew France <andrew@avito.co.uk>
Andrew Gerrand <adg@golang.org>
Andrew Guenther <guenther.andrew.j@gmail.com>
Andrew Hsu <andrewhsu@docker.com>
Andrew Kuklewicz <kookster@gmail.com>
Andrew Macgregor <andrew.macgregor@agworld.com.au>
Andrew Macpherson <hopscotch23@gmail.com>
Andrew Martin <sublimino@gmail.com>
Andrew McDonnell <bugs@andrewmcdonnell.net>
Andrew Munsell <andrew@wizardapps.net>
Andrew Po <absourd.noise@gmail.com>
Andrew Weiss <andrew.weiss@outlook.com>
@@ -122,10 +134,12 @@ Anil Belur <askb23@gmail.com>
Anil Madhavapeddy <anil@recoil.org>
Ankush Agarwal <ankushagarwal11@gmail.com>
Anonmily <michelle@michelleliu.io>
Anran Qiao <anran.qiao@daocloud.io>
Anthon van der Neut <anthon@mnt.org>
Anthony Baire <Anthony.Baire@irisa.fr>
Anthony Bishopric <git@anthonybishopric.com>
Anthony Dahanne <anthony.dahanne@gmail.com>
Anthony Sottile <asottile@umich.edu>
Anton Löfgren <anton.lofgren@gmail.com>
Anton Nikitin <anton.k.nikitin@gmail.com>
Anton Polonskiy <anton.polonskiy@gmail.com>
@@ -136,6 +150,7 @@ Antony Messerli <amesserl@rackspace.com>
Anuj Bahuguna <anujbahuguna.dev@gmail.com>
Anusha Ragunathan <anusha.ragunathan@docker.com>
apocas <petermdias@gmail.com>
Arash Deshmeh <adeshmeh@ca.ibm.com>
ArikaChen <eaglesora@gmail.com>
Arnaud Lefebvre <a.lefebvre@outlook.fr>
Arnaud Porterie <arnaud.porterie@docker.com>
@@ -156,6 +171,7 @@ Barry Allard <barry.allard@gmail.com>
Bartłomiej Piotrowski <b@bpiotrowski.pl>
Bastiaan Bakker <bbakker@xebia.com>
bdevloed <boris.de.vloed@gmail.com>
Ben Bonnefoy <frenchben@docker.com>
Ben Firshman <ben@firshman.co.uk>
Ben Golub <ben.golub@dotcloud.com>
Ben Hall <ben@benhall.me.uk>
@@ -169,12 +185,15 @@ Bernerd Schaefer <bj.schaefer@gmail.com>
Bert Goethals <bert@bertg.be>
Bharath Thiruveedula <bharath_ves@hotmail.com>
Bhiraj Butala <abhiraj.butala@gmail.com>
Bhumika Bayani <bhumikabayani@gmail.com>
Bilal Amarni <bilal.amarni@gmail.com>
Bill W <SydOps@users.noreply.github.com>
bin liu <liubin0329@users.noreply.github.com>
Bingshen Wang <bingshen.wbs@alibaba-inc.com>
Blake Geno <blakegeno@gmail.com>
Boaz Shuster <ripcurld.github@gmail.com>
bobby abbott <ttobbaybbob@gmail.com>
Boshi Lian <farmer1992@gmail.com>
boucher <rboucher@gmail.com>
Bouke Haarsma <bouke@webatoom.nl>
Boyd Hemphill <boyd@feedmagnet.com>
@@ -205,6 +224,7 @@ Bruno Bigras <bigras.bruno@gmail.com>
Bruno Binet <bruno.binet@gmail.com>
Bruno Gazzera <bgazzera@paginar.com>
Bruno Renié <brutasse@gmail.com>
Bruno Tavares <btavare@thoughtworks.com>
Bryan Bess <squarejaw@bsbess.com>
Bryan Boreham <bjboreham@gmail.com>
Bryan Matsuo <bryan.matsuo@gmail.com>
@@ -227,6 +247,7 @@ Carlos Sanchez <carlos@apache.org>
Carol Fager-Higgins <carol.fager-higgins@docker.com>
Cary <caryhartline@users.noreply.github.com>
Casey Bisson <casey.bisson@joyent.com>
Ce Gao <ce.gao@outlook.com>
Cedric Davies <cedricda@microsoft.com>
Cezar Sa Espinola <cezarsa@gmail.com>
Chad Swenson <chadswen@gmail.com>
@@ -239,11 +260,14 @@ Charles Lindsay <chaz@chazomatic.us>
Charles Merriam <charles.merriam@gmail.com>
Charles Sarrazin <charles@sarraz.in>
Charles Smith <charles.smith@docker.com>
Charlie Drage <charlie@charliedrage.com>
Charlie Lewis <charliel@lab41.org>
Chase Bolt <chase.bolt@gmail.com>
ChaYoung You <yousbe@gmail.com>
Chen Chao <cc272309126@gmail.com>
Chen Chuanliang <chen.chuanliang@zte.com.cn>
Chen Hanxiao <chenhanxiao@cn.fujitsu.com>
Chen Mingjie <chenmingjie0828@163.com>
cheney90 <cheney-90@hotmail.com>
Chewey <prosto-chewey@users.noreply.github.com>
Chia-liang Kao <clkao@clkao.org>
@@ -253,6 +277,7 @@ Chris Alfonso <calfonso@redhat.com>
Chris Armstrong <chris@opdemand.com>
Chris Dituri <csdituri@gmail.com>
Chris Fordham <chris@fordham-nagy.id.au>
Chris Gavin <chris@chrisgavin.me>
Chris Khoo <chris.khoo@gmail.com>
Chris McKinnel <chrismckinnel@gmail.com>
Chris Seto <chriskseto@gmail.com>
@@ -294,6 +319,8 @@ CrimsonGlory <CrimsonGlory@users.noreply.github.com>
Cristian Staretu <cristian.staretu@gmail.com>
cristiano balducci <cristiano.balducci@gmail.com>
Cruceru Calin-Cristian <crucerucalincristian@gmail.com>
CUI Wei <ghostplant@qq.com>
Cyprian Gracz <cyprian.gracz@micro-jumbo.eu>
Cyril F <cyrilf7x@gmail.com>
Daan van Berkel <daan.v.berkel.1980@gmail.com>
Daehyeok Mun <daehyeok@gmail.com>
@@ -338,6 +365,7 @@ Danny Yates <danny@codeaholics.org>
Darren Coxall <darren@darrencoxall.com>
Darren Shepherd <darren.s.shepherd@gmail.com>
Darren Stahl <darst@microsoft.com>
Dattatraya Kumbhar <dattatraya.kumbhar@gslab.com>
Davanum Srinivas <davanum@gmail.com>
Dave Barboza <dbarboza@datto.com>
Dave Henderson <dhenderson@gmail.com>
@@ -364,6 +392,7 @@ David Röthlisberger <david@rothlis.net>
David Sheets <sheets@alum.mit.edu>
David Sissitka <me@dsissitka.com>
David Trott <github@davidtrott.com>
David Williamson <davidwilliamson@users.noreply.github.com>
David Xia <dxia@spotify.com>
David Young <yangboh@cn.ibm.com>
Davide Ceretti <davide.ceretti@hogarthww.com>
@@ -376,6 +405,7 @@ Deng Guangxing <dengguangxing@huawei.com>
Deni Bertovic <deni@kset.org>
Denis Gladkikh <denis@gladkikh.email>
Denis Ollier <larchunix@users.noreply.github.com>
Dennis Chen <barracks510@gmail.com>
Dennis Docter <dennis@d23.nl>
Derek <crq@kernel.org>
Derek <crquan@gmail.com>
@@ -386,6 +416,8 @@ Deshi Xiao <dxiao@redhat.com>
devmeyster <arthurfbi@yahoo.com>
Devvyn Murphy <devvyn@devvyn.com>
Dharmit Shah <shahdharmit@gmail.com>
Diego Romero <idiegoromero@gmail.com>
Diego Siqueira <dieg0@live.com>
Dieter Reuter <dieter.reuter@me.com>
Dillon Dixon <dillondixon@gmail.com>
Dima Stopel <dima@twistlock.com>
@@ -393,6 +425,7 @@ Dimitri John Ledkov <dimitri.j.ledkov@intel.com>
Dimitris Rozakis <dimrozakis@gmail.com>
Dimitry Andric <d.andric@activevideo.com>
Dinesh Subhraveti <dineshs@altiscale.com>
Ding Fei <dingfei@stars.org.cn>
Diogo Monica <diogo@docker.com>
DiuDiugirl <sophia.wang@pku.edu.cn>
Djibril Koné <kone.djibril@gmail.com>
@@ -401,10 +434,13 @@ Dmitri Logvinenko <dmitri.logvinenko@gmail.com>
Dmitri Shuralyov <shurcooL@gmail.com>
Dmitry Demeshchuk <demeshchuk@gmail.com>
Dmitry Gusev <dmitry.gusev@gmail.com>
Dmitry Kononenko <d@dm42.ru>
Dmitry Shyshkin <dmitry@shyshkin.org.ua>
Dmitry Smirnov <onlyjob@member.fsf.org>
Dmitry V. Krivenok <krivenok.dmitry@gmail.com>
Dmitry Vorobev <dimahabr@gmail.com>
Dolph Mathews <dolph.mathews@gmail.com>
Dominik Dingel <dingel@linux.vnet.ibm.com>
Dominik Finkbeiner <finkes93@gmail.com>
Dominik Honnef <dominik@honnef.co>
Don Kirkby <donkirkby@users.noreply.github.com>
@@ -429,6 +465,7 @@ Eike Herzbach <eike@herzbach.net>
Eivin Giske Skaaren <eivinsn@axis.com>
Eivind Uggedal <eivind@uggedal.com>
Elan Ruusamäe <glen@delfi.ee>
Elena Morozova <lelenanam@gmail.com>
Elias Probst <mail@eliasprobst.eu>
Elijah Zupancic <elijah@zupancic.name>
eluck <mail@eluck.me>
@@ -439,7 +476,9 @@ Emily Rose <emily@contactvibe.com>
Emir Ozer <emirozer@yandex.com>
Enguerran <engcolson@gmail.com>
Eohyung Lee <liquidnuker@gmail.com>
epeterso <epeterson@breakpoint-labs.com>
Eric Barch <barch@tomesoftware.com>
Eric Curtin <ericcurtin17@gmail.com>
Eric Hanchrow <ehanchrow@ine.com>
Eric Lee <thenorthsecedes@gmail.com>
Eric Myhre <hash@exultant.us>
@@ -447,7 +486,7 @@ Eric Paris <eparis@redhat.com>
Eric Rafaloff <erafaloff@gmail.com>
Eric Rosenberg <ehaydenr@users.noreply.github.com>
Eric Sage <eric.david.sage@gmail.com>
Eric Windisch <eric@windisch.us>
Erica Windisch <erica@windisch.us>
Eric Yang <windfarer@gmail.com>
Eric-Olivier Lamey <eo@lamey.me>
Erik Bray <erik.m.bray@gmail.com>
@@ -455,6 +494,7 @@ Erik Dubbelboer <erik@dubbelboer.com>
Erik Hollensbe <github@hollensbe.org>
Erik Inge Bolsø <knan@redpill-linpro.com>
Erik Kristensen <erik@erikkristensen.com>
Erik St. Martin <alakriti@gmail.com>
Erik Weathers <erikdw@gmail.com>
Erno Hopearuoho <erno.hopearuoho@gmail.com>
Erwin van der Koogh <info@erronis.nl>
@@ -464,15 +504,18 @@ eugenkrizo <eugen.krizo@gmail.com>
evalle <shmarnev@gmail.com>
Evan Allrich <evan@unguku.com>
Evan Carmi <carmi@users.noreply.github.com>
Evan Hazlett <ehazlett@users.noreply.github.com>
Evan Hazlett <ejhazlett@gmail.com>
Evan Krall <krall@yelp.com>
Evan Phoenix <evan@fallingsnow.net>
Evan Wies <evan@neomantra.net>
Evelyn Xu <evelynhsu21@gmail.com>
Everett Toews <everett.toews@rackspace.com>
Evgeny Vereshchagin <evvers@ya.ru>
Ewa Czechowska <ewa@ai-traders.com>
Eystein Måløy Stenberg <eystein.maloy.stenberg@cfengine.com>
ezbercih <cem.ezberci@gmail.com>
Ezra Silvera <ezra@il.ibm.com>
Fabiano Rosas <farosas@br.ibm.com>
Fabio Falci <fabiofalci@gmail.com>
Fabio Rapposelli <fabio@vmware.com>
@@ -485,10 +528,12 @@ Fangyuan Gao <21551127@zju.edu.cn>
Fareed Dudhia <fareeddudhia@googlemail.com>
Fathi Boudra <fathi.boudra@linaro.org>
Federico Gimenez <fgimenez@coit.es>
Felipe Oliveira <felipeweb.programador@gmail.com>
Felix Abecassis <fabecassis@nvidia.com>
Felix Geisendörfer <felix@debuggable.com>
Felix Hupfeld <quofelix@users.noreply.github.com>
Felix Rabe <felix@rabe.io>
Felix Ruess <felix.ruess@roboception.de>
Felix Ruess <felix.ruess@gmail.com>
Felix Schindler <fschindler@weluse.de>
Ferenc Szabo <pragmaticfrank@gmail.com>
Fernando <fermayo@gmail.com>
@@ -525,13 +570,17 @@ Félix Baylac-Jacqué <baylac.felix@gmail.com>
Félix Cantournet <felix.cantournet@cloudwatt.com>
Gabe Rosenhouse <gabe@missionst.com>
Gabor Nagy <mail@aigeruth.hu>
Gabriel Linder <linder.gabriel@gmail.com>
Gabriel Monroy <gabriel@opdemand.com>
GabrielNicolasAvellaneda <avellaneda.gabriel@gmail.com>
Gabriel Nicolas Avellaneda <avellaneda.gabriel@gmail.com>
Gaetan de Villele <gdevillele@gmail.com>
Galen Sampson <galen.sampson@gmail.com>
Gang Qiao <qiaohai8866@gmail.com>
Gareth Rushgrove <gareth@morethanseven.net>
Garrett Barboza <garrett@garrettbarboza.com>
Gaurav <gaurav.gosec@gmail.com>
gautam, prasanna <prasannagautam@gmail.com>
Gaël PORTAY <gael.portay@savoirfairelinux.com>
GennadySpb <lipenkov@gmail.com>
Geoffrey Bachelet <grosfrais@gmail.com>
George MacRorie <gmacr31@gmail.com>
@@ -540,6 +589,7 @@ Georgi Hristozov <georgi@forkbomb.nl>
Gereon Frey <gereon.frey@dynport.de>
German DZ <germ@ndz.com.ar>
Gert van Valkenhoef <g.h.m.van.valkenhoef@rug.nl>
Gerwim <gerwim@gmail.com>
Gianluca Borello <g.borello@gmail.com>
Gildas Cuisinier <gildas.cuisinier@gcuisinier.net>
gissehel <public-devgit-dantus@gissehel.org>
@@ -576,13 +626,17 @@ Harald Albers <github@albersweb.de>
Harley Laue <losinggeneration@gmail.com>
Harold Cooper <hrldcpr@gmail.com>
Harry Zhang <harryz@hyper.sh>
Harshal Patil <harshalp@linux.vnet.ibm.com>
He Simei <hesimei@zju.edu.cn>
He Xin <he_xinworld@126.com>
heartlock <21521209@zju.edu.cn>
Hector Castro <hectcastro@gmail.com>
Helen Xie <chenjg@harmonycloud.cn>
Henning Sprang <henning.sprang@gmail.com>
Hobofan <goisser94@gmail.com>
Hollie Teal <hollie@docker.com>
Hong Xu <hong@topbug.net>
Hongbin Lu <hongbin034@gmail.com>
hsinko <21551195@zju.edu.cn>
Hu Keping <hukeping@huawei.com>
Hu Tao <hutao@cn.fujitsu.com>
@@ -600,12 +654,14 @@ Ian Babrou <ibobrik@gmail.com>
Ian Bishop <ianbishop@pace7.com>
Ian Bull <irbull@gmail.com>
Ian Calvert <ianjcalvert@gmail.com>
Ian Campbell <ian.campbell@docker.com>
Ian Lee <IanLee1521@gmail.com>
Ian Main <imain@redhat.com>
Ian Truslove <ian.truslove@gmail.com>
Iavael <iavaelooeyt@gmail.com>
Icaro Seara <icaro.seara@gmail.com>
Igor Dolzhikov <bluesriverz@gmail.com>
Iliana Weller <iweller@amazon.com>
Ilkka Laukkanen <ilkka@ilkka.io>
Ilya Dmitrichenko <errordeveloper@gmail.com>
Ilya Gusev <mail@igusev.ru>
@@ -624,8 +680,10 @@ J. Nunn <jbnunn@gmail.com>
Jack Danger Canty <jackdanger@squareup.com>
Jacob Atzen <jacob@jacobatzen.dk>
Jacob Edelman <edelman.jd@gmail.com>
Jacob Tomlinson <jacob@tom.linson.uk>
Jake Champlin <jake.champlin.27@gmail.com>
Jake Moshenko <jake@devtable.com>
Jake Sanders <jsand@google.com>
jakedt <jake@devtable.com>
James Allen <jamesallen0108@gmail.com>
James Carey <jecarey@us.ibm.com>
@@ -648,6 +706,7 @@ Jan-Gerd Tenberge <janten@gmail.com>
Jan-Jaap Driessen <janjaapdriessen@gmail.com>
Jana Radhakrishnan <mrjana@docker.com>
Jannick Fahlbusch <git@jf-projects.de>
Janonymous <janonymous.codevulture@gmail.com>
Januar Wayong <januar@gmail.com>
Jared Biel <jared.biel@bolderthinking.com>
Jared Hocutt <jaredh@netapp.com>
@@ -672,7 +731,9 @@ Jay <teguhwpurwanto@gmail.com>
Jay Kamat <github@jgkamat.33mail.com>
Jean-Baptiste Barth <jeanbaptiste.barth@gmail.com>
Jean-Baptiste Dalido <jeanbaptiste@appgratis.com>
Jean-Christophe Berthon <huygens@berthon.eu>
Jean-Paul Calderone <exarkun@twistedmatrix.com>
Jean-Pierre Huynh <jean-pierre.huynh@ounet.fr>
Jean-Tiare Le Bigot <jt@yadutaf.fr>
Jeff Anderson <jeff@docker.com>
Jeff Johnston <jeff.johnston.mn@gmail.com>
@@ -700,14 +761,17 @@ Jhon Honce <jhonce@redhat.com>
Ji.Zhilong <zhilongji@gmail.com>
Jian Zhang <zhangjian.fnst@cn.fujitsu.com>
jianbosun <wonderflow.sun@gmail.com>
Jie Luo <luo612@zju.edu.cn>
Jilles Oldenbeuving <ojilles@gmail.com>
Jim Alateras <jima@comware.com.au>
Jim Minter <jminter@redhat.com>
Jim Perrin <jperrin@centos.org>
Jimmy Cuadra <jimmy@jimmycuadra.com>
Jimmy Puckett <jimmy.puckett@spinen.com>
jimmyxian <jimmyxian2004@yahoo.com.cn>
Jinsoo Park <cellpjs@gmail.com>
Jiri Popelka <jpopelka@redhat.com>
Jiuyue Ma <majiuyue@huawei.com>
Jiří Župka <jzupka@redhat.com>
jjy <jiangjinyang@outlook.com>
jmzwcn <jmzwcn@gmail.com>
@@ -734,8 +798,10 @@ John Feminella <jxf@jxf.me>
John Gardiner Myers <jgmyers@proofpoint.com>
John Gossman <johngos@microsoft.com>
John Howard (VM) <John.Howard@microsoft.com>
John Mulhausen <john@docker.com>
John OBrien III <jobrieniii@yahoo.com>
John Starks <jostarks@microsoft.com>
John Stephens <johnstep@docker.com>
John Tims <john.k.tims@gmail.com>
John Warwick <jwarwick@gmail.com>
John Willis <john.willis@docker.com>
@@ -753,24 +819,29 @@ Jonathan Mueller <j.mueller@apoveda.ch>
Jonathan Pares <jonathanpa@users.noreply.github.com>
Jonathan Rudenberg <jonathan@titanous.com>
Jonathan Stoppani <jonathan.stoppani@divio.com>
Jonh Wendell <jonh.wendell@redhat.com>
Joost Cassee <joost@cassee.net>
Jordan <jjn2009@users.noreply.github.com>
Jordan Arentsen <blissdev@gmail.com>
Jordan Sissel <jls@semicomplete.com>
Jose Diaz-Gonzalez <josegonzalez@users.noreply.github.com>
Jorge Marin <chipironcin@users.noreply.github.com>
Jose Diaz-Gonzalez <jose@seatgeek.com>
Joseph Anthony Pasquale Holsten <joseph@josephholsten.com>
Joseph Hager <ajhager@gmail.com>
Joseph Kern <jkern@semafour.net>
Josh <jokajak@gmail.com>
Josh Bodah <jb3689@yahoo.com>
Josh Chorlton <jchorlton@gmail.com>
Josh Eveleth <joshe@opendns.com>
Josh Hawn <josh.hawn@docker.com>
Josh Horwitz <horwitz@addthis.com>
Josh Poimboeuf <jpoimboe@redhat.com>
Josh Wilson <josh.wilson@fivestars.com>
Josiah Kiehl <jkiehl@riotgames.com>
José Tomás Albornoz <jojo@eljojo.net>
JP <jpellerin@leapfrogonline.com>
jrabbit <jackjrabbit@gmail.com>
jroenf <jeroenfranse@gmail.com>
Julian Taylor <jtaylor.debian@googlemail.com>
Julien Barbier <write0@gmail.com>
Julien Bisconti <veggiemonk@users.noreply.github.com>
@@ -805,8 +876,11 @@ Katie McLaughlin <katie@glasnt.com>
Kato Kazuyoshi <kato.kazuyoshi@gmail.com>
Katrina Owen <katrina.owen@gmail.com>
Kawsar Saiyeed <kawsar.saiyeed@projiris.com>
Kay Yan <kay.yan@daocloud.io>
kayrus <kay.diam@gmail.com>
Ke Li <kel@splunk.com>
Ke Xu <leonhartx.k@gmail.com>
Kei Ohmura <ohmura.kei@gmail.com>
Keith Hudgins <greenman@greenman.org>
Keli Hu <dev@keli.hu>
Ken Cochrane <kencochrane@gmail.com>
@@ -820,6 +894,7 @@ Kevin Burke <kev@inburke.com>
Kevin Clark <kevin.clark@gmail.com>
Kevin J. Lynagh <kevin@keminglabs.com>
Kevin Jing Qiu <kevin@idempotent.ca>
Kevin Kern <kaiwentan@harmonycloud.cn>
Kevin Menard <kevin@nirvdrum.com>
Kevin P. Kucharczyk <kevinkucharczyk@gmail.com>
Kevin Richardson <kevin@kevinrichardson.co>
@@ -842,13 +917,14 @@ Koichi Shiraishi <k@zchee.io>
Konrad Kleine <konrad.wilhelm.kleine@gmail.com>
Konstantin L <sw.double@gmail.com>
Konstantin Pelykh <kpelykh@zettaset.com>
Krasi Georgiev <krasi@vip-consult.solutions>
Krasimir Georgiev <support@vip-consult.co.uk>
Kris-Mikael Krister <krismikael@protonmail.com>
Kristian Haugene <kristian.haugene@capgemini.com>
Kristina Zabunova <triara.xiii@gmail.com>
krrg <krrgithub@gmail.com>
Kun Zhang <zkazure@gmail.com>
Kunal Kushwaha <kunal.kushwaha@gmail.com>
Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp>
Kyle Conroy <kyle.j.conroy@gmail.com>
Kyle Linden <linden.kyle@gmail.com>
kyu <leehk1227@gmail.com>
@@ -857,13 +933,14 @@ Lai Jiangshan <jiangshanlai@gmail.com>
Lajos Papp <lajos.papp@sequenceiq.com>
Lakshan Perera <lakshan@laktek.com>
Lalatendu Mohanty <lmohanty@redhat.com>
lalyos <lalyos@yahoo.com>
Lance Chen <cyen0312@gmail.com>
Lance Kinley <lkinley@loyaltymethods.com>
Lars Butler <Lars.Butler@gmail.com>
Lars Kellogg-Stedman <lars@redhat.com>
Lars R. Damerow <lars@pixar.com>
Lars-Magnus Skog <ralphtheninja@riseup.net>
Laszlo Meszaros <lacienator@gmail.com>
Laura Frank <ljfrank@gmail.com>
Laurent Erignoux <lerignoux@gmail.com>
Laurie Voss <github@seldo.com>
Leandro Siqueira <leandro.siqueira@gmail.com>
@@ -873,9 +950,11 @@ leeplay <hyeongkyu.lee@navercorp.com>
Lei Jitang <leijitang@huawei.com>
Len Weincier <len@cloudafrica.net>
Lennie <github@consolejunkie.net>
Leo Gallucci <elgalu3@gmail.com>
Leszek Kowalski <github@leszekkowalski.pl>
Levi Blackstone <levi.blackstone@rackspace.com>
Levi Gross <levi@levigross.com>
Lewis Daly <lewisdaly@me.com>
Lewis Marshall <lewis@lmars.net>
Lewis Peckover <lew+github@lew.io>
Liam Macgillavry <liam@kumina.nl>
@@ -883,6 +962,7 @@ Liana Lo <liana.lixia@gmail.com>
Liang Mingqiang <mqliang.zju@gmail.com>
Liang-Chi Hsieh <viirya@gmail.com>
liaoqingwei <liaoqingwei@huawei.com>
Lily Guo <lily.guo@docker.com>
limsy <seongyeol37@gmail.com>
Lin Lu <doraalin@163.com>
LingFaKe <lingfake@huawei.com>
@@ -891,14 +971,18 @@ Liran Tal <liran.tal@gmail.com>
Liron Levin <liron@twistlock.com>
Liu Bo <bo.li.liu@oracle.com>
Liu Hua <sdu.liu@huawei.com>
liwenqi <vikilwq@zju.edu.cn>
lixiaobing10051267 <li.xiaobing1@zte.com.cn>
Liz Zhang <lizzha@microsoft.com>
LIZAO LI <lzlarryli@gmail.com>
Lizzie Dixon <_@lizzie.io>
Lloyd Dewolf <foolswisdom@gmail.com>
Lokesh Mandvekar <lsm5@fedoraproject.org>
longliqiang88 <394564827@qq.com>
Lorenz Leutgeb <lorenz.leutgeb@gmail.com>
Lorenzo Fontana <fontanalorenzo@me.com>
Louis Opter <kalessin@kalessin.fr>
Luca Favatella <lucafavatella@users.noreply.github.com>
Luca Marturana <lucamarturana@gmail.com>
Luca Orlandi <luca.orlandi@gmail.com>
Luca-Bogdan Grigorescu <Luca-Bogdan Grigorescu>
@@ -906,12 +990,15 @@ Lucas Chan <lucas-github@lucaschan.com>
Lucas Chi <lucas@teacherspayteachers.com>
Luciano Mores <leslau@gmail.com>
Luis Martínez de Bartolomé Izquierdo <lmartinez@biicode.com>
Luiz Svoboda <luizek@gmail.com>
Lukas Waslowski <cr7pt0gr4ph7@gmail.com>
lukaspustina <lukas.pustina@centerdevice.com>
Lukasz Zajaczkowski <Lukasz.Zajaczkowski@ts.fujitsu.com>
lukemarsden <luke@digital-crocus.com>
Lyn <energylyn@zju.edu.cn>
Lynda O'Leary <lyndaoleary29@gmail.com>
Lénaïc Huard <lhuard@amadeus.com>
Ma Müller <mueller-ma@users.noreply.github.com>
Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Mabin <bin.ma@huawei.com>
Madhav Puri <madhav.puri@gmail.com>
@@ -933,6 +1020,7 @@ Marc Kuo <kuomarc2@gmail.com>
Marc Tamsky <mtamsky@gmail.com>
Marcelo Salazar <chelosalazar@gmail.com>
Marco Hennings <marco.hennings@freiheit.com>
Marcus Cobden <mcobden@cisco.com>
Marcus Farkas <toothlessgear@finitebox.com>
Marcus Linke <marcus.linke@gmx.de>
Marcus Ramberg <marcus@nordaaker.com>
@@ -946,6 +1034,8 @@ Marius Voila <marius.voila@gmail.com>
Mark Allen <mrallen1@yahoo.com>
Mark McGranaghan <mmcgrana@gmail.com>
Mark McKinstry <mmckinst@umich.edu>
Mark Milstein <mark@epiloque.com>
Mark Parker <godefroi@users.noreply.github.com>
Mark West <markewest@gmail.com>
Marko Mikulicic <mmikulicic@gmail.com>
Marko Tibold <marko@tibold.nl>
@@ -958,10 +1048,12 @@ Martin Mosegaard Amdisen <martin.amdisen@praqma.com>
Martin Redmond <redmond.martin@gmail.com>
Mary Anthony <mary.anthony@docker.com>
Masahito Zembutsu <zembutsu@users.noreply.github.com>
Masayuki Morita <minamijoyo@gmail.com>
Mason Malone <mason.malone@gmail.com>
Mateusz Sulima <sulima.mateusz@gmail.com>
Mathias Monnerville <mathias@monnerville.com>
Mathieu Le Marec - Pasquet <kiorky@cryptelium.net>
Mathieu Parent <math.parent@gmail.com>
Matt Apperson <me@mattapperson.com>
Matt Bachmann <bachmann.matt@gmail.com>
Matt Bentley <matt.bentley@docker.com>
@@ -972,6 +1064,7 @@ Matt Moore <mattmoor@google.com>
Matt Richardson <matt@redgumtech.com.au>
Matt Robenolt <matt@ydekproductions.com>
Matthew Heon <mheon@redhat.com>
Matthew Lapworth <matthewl@bit-shift.net>
Matthew Mayer <matthewkmayer@gmail.com>
Matthew Mueller <mattmuelle@gmail.com>
Matthew Riley <mattdr@google.com>
@@ -1008,8 +1101,9 @@ Michael Friis <friism@gmail.com>
Michael Gorsuch <gorsuch@github.com>
Michael Grauer <michael.grauer@kitware.com>
Michael Holzheu <holzheu@linux.vnet.ibm.com>
Michael Hudson-Doyle <michael.hudson@linaro.org>
Michael Hudson-Doyle <michael.hudson@canonical.com>
Michael Huettermann <michael@huettermann.net>
Michael Irwin <mikesir87@gmail.com>
Michael Käufl <docker@c.michael-kaeufl.de>
Michael Neale <michael.neale@gmail.com>
Michael Prokop <github@michael-prokop.at>
@@ -1021,7 +1115,7 @@ Michael West <mwest@mdsol.com>
Michal Fojtik <mfojtik@redhat.com>
Michal Gebauer <mishak@mishak.net>
Michal Jemala <michal.jemala@gmail.com>
Michal Minar <miminar@redhat.com>
Michal Minář <miminar@redhat.com>
Michal Wieczorek <wieczorek-michal@wp.pl>
Michaël Pailloncy <mpapo.dev@gmail.com>
Michał Czeraszkiewicz <czerasz@gmail.com>
@@ -1044,6 +1138,7 @@ Mike Naberezny <mike@naberezny.com>
Mike Snitzer <snitzer@redhat.com>
mikelinjie <294893458@qq.com>
Mikhail Sobolev <mss@mawhrin.net>
Milind Chawre <milindchawre@gmail.com>
Miloslav Trmač <mitr@redhat.com>
mingqing <limingqing@cyou-inc.com>
Mingzhen Feng <fmzhen@zju.edu.cn>
@@ -1063,6 +1158,7 @@ mqliang <mqliang.zju@gmail.com>
Mrunal Patel <mrunalp@gmail.com>
msabansal <sabansal@microsoft.com>
mschurenko <matt.schurenko@gmail.com>
Muayyad Alsadi <alsadi@gmail.com>
muge <stevezhang2014@gmail.com>
Mustafa Akın <mustafa91@gmail.com>
Muthukumar R <muthur@gmail.com>
@@ -1097,6 +1193,7 @@ Nick Parker <nikaios@gmail.com>
Nick Payne <nick@kurai.co.uk>
Nick Stenning <nick.stenning@digital.cabinet-office.gov.uk>
Nick Stinemates <nick@stinemates.org>
NickrenREN <yuquan.ren@easystack.cn>
Nicola Kabar <nicolaka@gmail.com>
Nicolas Borboën <ponsfrilus@users.noreply.github.com>
Nicolas De loof <nicolas.deloof@gmail.com>
@@ -1107,9 +1204,11 @@ Nicolás Hock Isaza <nhocki@gmail.com>
Nigel Poulton <nigelpoulton@hotmail.com>
NikolaMandic <mn080202@gmail.com>
nikolas <nnyby@columbia.edu>
Nikolay Milovanov <nmil@itransformers.net>
Nirmal Mehta <nirmalkmehta@gmail.com>
Nishant Totla <nishanttotla@gmail.com>
NIWA Hideyuki <niwa.niwa@nifty.ne.jp>
Noah Treuhaft <noah.treuhaft@docker.com>
noducks <onemannoducks@gmail.com>
Nolan Darilek <nolan@thewordnerd.info>
nponeccop <andy.melnikov@gmail.com>
@@ -1131,6 +1230,7 @@ Oriol Francès <oriolfa@gmail.com>
orkaa <orkica@gmail.com>
Oskar Niburski <oskarniburski@gmail.com>
Otto Kekäläinen <otto@seravo.fi>
Ovidio Mallo <ovidio.mallo@gmail.com>
oyld <oyld0210@163.com>
ozlerhakan <hakan.ozler@kodcu.com>
paetling <paetling@gmail.com>
@@ -1152,6 +1252,7 @@ Paul Bowsher <pbowsher@globalpersonals.co.uk>
Paul Furtado <pfurtado@hubspot.com>
Paul Hammond <paul@paulhammond.org>
Paul Jimenez <pj@place.org>
Paul Kehrer <paul.l.kehrer@gmail.com>
Paul Lietar <paul@lietar.net>
Paul Liljenberg <liljenberg.paul@gmail.com>
Paul Morie <pmorie@gmail.com>
@@ -1205,10 +1306,10 @@ Prasanna Gautam <prasannagautam@gmail.com>
Prayag Verma <prayag.verma@gmail.com>
Przemek Hejman <przemyslaw.hejman@gmail.com>
pysqz <randomq@126.com>
qg <1373319223@qq.com>
qhuang <h.huangqiang@huawei.com>
Qiang Huang <h.huangqiang@huawei.com>
qq690388648 <690388648@qq.com>
Qinglan Peng <qinglanpeng@zju.edu.cn>
qudongfang <qudongfang@gmail.com>
Quentin Brossard <qbrossard@gmail.com>
Quentin Perez <qperez@ocs.online.net>
Quentin Tayssier <qtayssier@gmail.com>
@@ -1228,6 +1329,7 @@ Ramon van Alteren <ramon@vanalteren.nl>
Ray Tsang <saturnism@users.noreply.github.com>
ReadmeCritic <frankensteinbot@gmail.com>
Recursive Madman <recursive.madman@gmx.de>
Reficul <xuzhenglun@gmail.com>
Regan McCooey <rmccooey27@aol.com>
Remi Rampin <remirampin@gmail.com>
Renato Riccieri Santos Zannon <renato.riccieri@gmail.com>
@@ -1259,6 +1361,7 @@ Robert Stern <lexandro2000@gmail.com>
Robert Terhaar <robbyt@users.noreply.github.com>
Robert Wallis <smilingrob@gmail.com>
Roberto G. Hashioka <roberto.hashioka@docker.com>
Roberto Muñoz Fernández <robertomf@gmail.com>
Robin Naundorf <r.naundorf@fh-muenster.de>
Robin Schneider <ypid@riseup.net>
Robin Speekenbrink <robin@kingsquare.nl>
@@ -1269,6 +1372,7 @@ Roel Van Nyen <roel.vannyen@gmail.com>
Roger Peppe <rogpeppe@gmail.com>
Rohit Jnagal <jnagal@google.com>
Rohit Kadam <rohit.d.kadam@gmail.com>
Rojin George <rojingeorge@huawei.com>
Roland Huß <roland@jolokia.org>
Roland Kammerer <roland.kammerer@linbit.com>
Roland Moriz <rmoriz@users.noreply.github.com>
@@ -1290,6 +1394,7 @@ rsmoorthy <rsmoorthy@users.noreply.github.com>
Rudolph Gottesheim <r.gottesheim@loot.at>
Rui Lopes <rgl@ruilopes.com>
Runshen Zhu <runshen.zhu@gmail.com>
Ryan Abrams <rdabrams@gmail.com>
Ryan Anderson <anderson.ryanc@gmail.com>
Ryan Aslett <github@mixologic.com>
Ryan Belgrave <rmb1993@gmail.com>
@@ -1301,6 +1406,7 @@ Ryan Seto <ryanseto@yak.net>
Ryan Thomas <rthomas@atlassian.com>
Ryan Trauntvein <rtrauntvein@novacoast.com>
Ryan Wallner <ryan.wallner@clusterhq.com>
Ryan Zhang <ryan.zhang@docker.com>
RyanDeng <sheldon.d1018@gmail.com>
Rémy Greinhofer <remy.greinhofer@livelovely.com>
s. rannou <mxs@sbrk.org>
@@ -1324,6 +1430,7 @@ Samuel Andaya <samuel@andaya.net>
Samuel Dion-Girardeau <samuel.diongirardeau@gmail.com>
Samuel Karp <skarp@amazon.com>
Samuel PHAN <samuel-phan@users.noreply.github.com>
Sandeep Bansal <msabansal@microsoft.com>
Sankar சங்கர் <sankar.curiosity@gmail.com>
Sanket Saurav <sanketsaurav@gmail.com>
Santhosh Manohar <santhosh@docker.com>
@@ -1341,8 +1448,10 @@ Scott Walls <sawalls@umich.edu>
sdreyesg <sdreyesg@gmail.com>
Sean Christopherson <sean.j.christopherson@intel.com>
Sean Cronin <seancron@gmail.com>
Sean McIntyre <s.mcintyre@xverba.ca>
Sean OMeara <sean@chef.io>
Sean P. Kane <skane@newrelic.com>
Sean Rodman <srodman7689@gmail.com>
Sebastiaan van Steenis <mail@superseb.nl>
Sebastiaan van Stijn <github@gone.nl>
Senthil Kumar Selvaraj <senthil.thecoder@gmail.com>
@@ -1352,6 +1461,7 @@ Seongyeol Lim <seongyeol37@gmail.com>
Serge Hallyn <serge.hallyn@ubuntu.com>
Sergey Alekseev <sergey.alekseev.minsk@gmail.com>
Sergey Evstifeev <sergey.evstifeev@gmail.com>
Sergii Kabashniuk <skabashnyuk@codenvy.com>
Serhat Gülçiçek <serhat25@gmail.com>
Sevki Hasirci <s@sevki.org>
Shane Canon <scanon@lbl.gov>
@@ -1360,6 +1470,7 @@ shaunol <shaunol@gmail.com>
Shawn Landden <shawn@churchofgit.com>
Shawn Siefkas <shawn.siefkas@meredith.com>
shawnhe <shawnhe@shawnhedeMacBook-Pro.local>
Shayne Wang <shaynexwang@gmail.com>
Shekhar Gulati <shekhargulati84@gmail.com>
Sheng Yang <sheng@yasker.org>
Shengbo Song <thomassong@tencent.com>
@@ -1375,6 +1486,7 @@ Shuwei Hao <haosw@cn.ibm.com>
Sian Lerk Lau <kiawin@gmail.com>
sidharthamani <sid@rancher.com>
Silas Sewell <silas@sewell.org>
Silvan Jegen <s.jegen@gmail.com>
Simei He <hesimei@zju.edu.cn>
Simon Eskildsen <sirup@sirupsen.com>
Simon Leinen <simon.leinen@gmail.com>
@@ -1397,6 +1509,7 @@ Steeve Morin <steeve.morin@gmail.com>
Stefan Berger <stefanb@linux.vnet.ibm.com>
Stefan J. Wernli <swernli@microsoft.com>
Stefan Praszalowicz <stefan@greplin.com>
Stefan S. <tronicum@user.github.com>
Stefan Scherer <scherer_stefan@icloud.com>
Stefan Staudenmeyer <doerte@instana.com>
Stefan Weil <sw@weilnetz.de>
@@ -1404,17 +1517,20 @@ Stephen Crosby <stevecrozz@gmail.com>
Stephen Day <stephen.day@docker.com>
Stephen Drake <stephen@xenolith.net>
Stephen Rust <srust@blockbridge.com>
Steve Dougherty <steve@asksteved.com>
Steve Durrheimer <s.durrheimer@gmail.com>
Steve Francia <steve.francia@gmail.com>
Steve Koch <stevekochscience@gmail.com>
Steven Burgess <steven.a.burgess@hotmail.com>
Steven Erenst <stevenerenst@gmail.com>
Steven Hartland <steven.hartland@multiplay.co.uk>
Steven Iveson <sjiveson@outlook.com>
Steven Merrill <steven.merrill@gmail.com>
Steven Richards <steven@axiomzen.co>
Steven Taylor <steven.taylor@me.com>
Subhajit Ghosh <isubuz.g@gmail.com>
Sujith Haridasan <sujith.h@gmail.com>
Sun Gengze <690388648@qq.com>
Suryakumar Sudar <surya.trunks@gmail.com>
Sven Dowideit <SvenDowideit@home.org.au>
Swapnil Daingade <swapnil.daingade@gmail.com>
@@ -1470,6 +1586,7 @@ Tim Terhorst <mynamewastaken+git@gmail.com>
Tim Wang <timwangdev@gmail.com>
Tim Waugh <twaugh@redhat.com>
Tim Wraight <tim.wraight@tangentlabs.co.uk>
Tim Zju <21651152@zju.edu.cn>
timfeirg <kkcocogogo@gmail.com>
Timothy Hobbs <timothyhobbs@seznam.cz>
tjwebb123 <tjwebb123@users.noreply.github.com>
@@ -1486,11 +1603,13 @@ Todd Lunter <tlunter@gmail.com>
Todd Whiteman <todd.whiteman@joyent.com>
Toli Kuznets <toli@docker.com>
Tom Barlow <tomwbarlow@gmail.com>
Tom Booth <tombooth@gmail.com>
Tom Denham <tom@tomdee.co.uk>
Tom Fotherby <tom+github@peopleperhour.com>
Tom Howe <tom.howe@enstratius.com>
Tom Hulihan <hulihan.tom159@gmail.com>
Tom Maaswinkel <tom.maaswinkel@12wiki.eu>
Tom Wilkie <tom.wilkie@gmail.com>
Tom X. Tobin <tomxtobin@tomxtobin.com>
Tomas Tomecek <ttomecek@redhat.com>
Tomasz Kopczynski <tomek@kopczynski.net.pl>
@@ -1498,25 +1617,27 @@ Tomasz Lipinski <tlipinski@users.noreply.github.com>
Tomasz Nurkiewicz <nurkiewicz@gmail.com>
Tommaso Visconti <tommaso.visconti@gmail.com>
Tomáš Hrčka <thrcka@redhat.com>
Tonis Tiigi <tonistiigi@gmail.com>
Tonny Xu <tonny.xu@gmail.com>
Tony Abboud <tdabboud@hotmail.com>
Tony Daws <tony@daws.ca>
Tony Miller <mcfiredrill@gmail.com>
toogley <toogley@mailbox.org>
Torstein Husebø <torstein@huseboe.net>
Tõnis Tiigi <tonistiigi@gmail.com>
tpng <benny.tpng@gmail.com>
tracylihui <793912329@qq.com>
Trapier Marshall <trapier.marshall@docker.com>
Travis Cline <travis.cline@gmail.com>
Travis Thieman <travis.thieman@gmail.com>
Trent Ogren <tedwardo2@gmail.com>
Trevor <trevinwoodstock@gmail.com>
Trevor Pounds <trevor.pounds@gmail.com>
Trevor Sullivan <pcgeek86@gmail.com>
trishnaguha <trishnaguha17@gmail.com>
Tristan Carel <tristan@cogniteev.com>
Troy Denton <trdenton@gmail.com>
Tyler Brock <tyler.brock@gmail.com>
Tzu-Jung Lee <roylee17@gmail.com>
Tõnis Tiigi <tonistiigi@gmail.com>
Ulysse Carion <ulyssecarion@gmail.com>
unknown <sebastiaan@ws-key-sebas3.dpi1.dpi>
vagrant <vagrant@ubuntu-14.04-amd64-vbox>
@@ -1561,19 +1682,26 @@ waitingkuo <waitingkuo0527@gmail.com>
Walter Leibbrandt <github@wrl.co.za>
Walter Stanish <walter@pratyeka.org>
WANG Chao <wcwxyz@gmail.com>
Wang Long <long.wanglong@huawei.com>
Wang Ping <present.wp@icloud.com>
Wang Xing <hzwangxing@corp.netease.com>
Wang Yuexiao <wang.yuexiao@zte.com.cn>
Ward Vandewege <ward@jhvc.com>
WarheadsSE <max@warheads.net>
Wayne Chang <wayne@neverfear.org>
Wei Wu <wuwei4455@gmail.com>
Wei-Ting Kuo <waitingkuo0527@gmail.com>
weiyan <weiyan3@huawei.com>
Weiyang Zhu <cnresonant@gmail.com>
Wen Cheng Ma <wenchma@cn.ibm.com>
Wendel Fleming <wfleming@usc.edu>
Wenkai Yin <yinw@vmware.com>
Wentao Zhang <zhangwentao234@huawei.com>
Wenxuan Zhao <viz@linux.com>
Wenyu You <21551128@zju.edu.cn>
Wenzhi Liang <wenzhi.liang@gmail.com>
Wes Morgan <cap10morgan@gmail.com>
Wewang Xiaorenfine <wang.xiaoren@zte.com.cn>
Will Dietz <w@wdtz.org>
Will Rouesnel <w.rouesnel@gmail.com>
Will Weaver <monkey@buildingbananas.com>
@@ -1581,6 +1709,7 @@ willhf <willhf@gmail.com>
William Delanoue <william.delanoue@gmail.com>
William Henry <whenry@redhat.com>
William Hubbs <w.d.hubbs@gmail.com>
William Martin <wmartin@pivotal.io>
William Riancho <wr.wllm@gmail.com>
William Thurston <thurstw@amazon.com>
WiseTrem <shepelyov.g@gmail.com>
@@ -1589,10 +1718,12 @@ Wolfgang Powisch <powo@powo.priv.at>
wonderflow <wonderflow.sun@gmail.com>
Wonjun Kim <wonjun.kim@navercorp.com>
xamyzhao <x.amy.zhao@gmail.com>
Xianglin Gao <xlgao@zju.edu.cn>
Xianlu Bird <xianlubird@gmail.com>
XiaoBing Jiang <s7v7nislands@gmail.com>
Xiaoxu Chen <chenxiaoxu14@otcaix.iscas.ac.cn>
xiekeyang <xiekeyang@huawei.com>
Xinbo Weng <xihuanbo_0521@zju.edu.cn>
Xinzi Zhou <imdreamrunner@gmail.com>
Xiuming Chen <cc@cxm.cc>
xlgao-zju <xlgao@zju.edu.cn>
@@ -1608,17 +1739,18 @@ Yestin Sun <sunyi0804@gmail.com>
Yi EungJun <eungjun.yi@navercorp.com>
Yibai Zhang <xm1994@gmail.com>
Yihang Ho <hoyihang5@gmail.com>
Ying Li <cyli@twistedmatrix.com>
Ying Li <ying.li@docker.com>
Yohei Ueda <yohei@jp.ibm.com>
Yong Tang <yong.tang.github@outlook.com>
Yongzhi Pan <panyongzhi@gmail.com>
yorkie <yorkiefixer@gmail.com>
You-Sheng Yang (楊有勝) <vicamo@gmail.com>
Youcef YEKHLEF <yyekhlef@gmail.com>
Yu Peng <yu.peng36@zte.com.cn>
Yuan Sun <sunyuan3@huawei.com>
yuchangchun <yuchangchun1@huawei.com>
yuchengxia <yuchengxia@huawei.com>
yuexiao-wang <wang.yuexiao@zte.com.cn>
YuPengZTE <yu.peng36@zte.com.cn>
Yunxiang Huang <hyxqshk@vip.qq.com>
Yurii Rashkovskii <yrashk@gmail.com>
yuzou <zouyu7@huawei.com>
Zac Dover <zdover@redhat.com>
@@ -1632,9 +1764,13 @@ Zen Lin(Zhinan Lin) <linzhinan@huawei.com>
Zhang Kun <zkazure@gmail.com>
Zhang Wei <zhangwei555@huawei.com>
Zhang Wentao <zhangwentao234@huawei.com>
zhangxianwei <xianwei.zw@alibaba-inc.com>
Zhenan Ye <21551168@zju.edu.cn>
zhenghenghuo <zhenghenghuo@zju.edu.cn>
Zhenkun Bi <bi.zhenkun@zte.com.cn>
zhouhao <zhouhao@cn.fujitsu.com>
Zhu Guihua <zhugh.fnst@cn.fujitsu.com>
Zhu Kunjia <zhu.kunjia@zte.com.cn>
Zhuoyun Wei <wzyboy@wzyboy.org>
Zilin Du <zilin.du@gmail.com>
zimbatm <zimbatm@zimbatm.com>

View File

@@ -5,9 +5,331 @@ information on the list of deprecated flags and APIs please have a look at
https://docs.docker.com/engine/deprecated/ where target removal dates can also
be found.
## 1.13.0 (2016-12-08)
## 17.05.0-ce (2017-05-04)
### Builder
+ Add multi-stage build support [#31257](https://github.com/docker/docker/pull/31257) [#32063](https://github.com/docker/docker/pull/32063)
+ Allow using build-time args (`ARG`) in `FROM` [#31352](https://github.com/docker/docker/pull/31352)
+ Add an option for specifying build target [#32496](https://github.com/docker/docker/pull/32496)
* Accept `-f -` to read Dockerfile from `stdin`, but use local context for building [#31236](https://github.com/docker/docker/pull/31236)
* The values of default build time arguments (e.g `HTTP_PROXY`) are no longer displayed in docker image history unless a corresponding `ARG` instruction is written in the Dockerfile. [#31584](https://github.com/docker/docker/pull/31584)
- Fix setting command if a custom shell is used in a parent image [#32236](https://github.com/docker/docker/pull/32236)
- Fix `docker build --label` when the label includes single quotes and a space [#31750](https://github.com/docker/docker/pull/31750)
### Client
* Add `--mount` flag to `docker run` and `docker create` [#32251](https://github.com/docker/docker/pull/32251)
* Add `--type=secret` to `docker inspect` [#32124](https://github.com/docker/docker/pull/32124)
* Add `--format` option to `docker secret ls` [#31552](https://github.com/docker/docker/pull/31552)
* Add `--filter` option to `docker secret ls` [#30810](https://github.com/docker/docker/pull/30810)
* Add `--filter scope=<swarm|local>` to `docker network ls` [#31529](https://github.com/docker/docker/pull/31529)
* Add `--cpus` support to `docker update` [#31148](https://github.com/docker/docker/pull/31148)
* Add label filter to `docker system prune` and other `prune` commands [#30740](https://github.com/docker/docker/pull/30740)
* `docker stack rm` now accepts multiple stacks as input [#32110](https://github.com/docker/docker/pull/32110)
* Improve `docker version --format` option when the client has downgraded the API version [#31022](https://github.com/docker/docker/pull/31022)
* Prompt when using an encrypted client certificate to connect to a docker daemon [#31364](https://github.com/docker/docker/pull/31364)
* Display created tags on successful `docker build` [#32077](https://github.com/docker/docker/pull/32077)
* Cleanup compose convert error messages [#32087](https://github.com/moby/moby/pull/32087)
### Contrib
+ Add support for building docker debs for Ubuntu 17.04 Zesty on amd64 [#32435](https://github.com/docker/docker/pull/32435)
### Daemon
- Fix `--api-cors-header` being ignored if `--api-enable-cors` is not set [#32174](https://github.com/docker/docker/pull/32174)
- Cleanup docker tmp dir on start [#31741](https://github.com/docker/docker/pull/31741)
- Deprecate `--graph` flag in favor or `--data-root` [#28696](https://github.com/docker/docker/pull/28696)
### Logging
+ Add support for logging driver plugins [#28403](https://github.com/docker/docker/pull/28403)
* Add support for showing logs of individual tasks to `docker service logs`, and add `/task/{id}/logs` REST endpoint [#32015](https://github.com/docker/docker/pull/32015)
* Add `--log-opt env-regex` option to match environment variables using a regular expression [#27565](https://github.com/docker/docker/pull/27565)
### Networking
+ Allow user to replace, and customize the ingress network [#31714](https://github.com/docker/docker/pull/31714)
- Fix UDP traffic in containers not working after the container is restarted [#32505](https://github.com/docker/docker/pull/32505)
- Fix files being written to `/var/lib/docker` if a different data-root is set [#32505](https://github.com/docker/docker/pull/32505)
### Runtime
- Ensure health probe is stopped when a container exits [#32274](https://github.com/docker/docker/pull/32274)
### Swarm Mode
+ Add update/rollback order for services (`--update-order` / `--rollback-order`) [#30261](https://github.com/docker/docker/pull/30261)
+ Add support for synchronous `service create` and `service update` [#31144](https://github.com/docker/docker/pull/31144)
+ Add support for "grace periods" on healthchecks through the `HEALTHCHECK --start-period` and `--health-start-period` flag to
`docker service create`, `docker service update`, `docker create`, and `docker run` to support containers with an initial startup
time [#28938](https://github.com/docker/docker/pull/28938)
* `docker service create` now omits fields that are not specified by the user, when possible. This will allow defaults to be applied inside the manager [#32284](https://github.com/docker/docker/pull/32284)
* `docker service inspect` now shows default values for fields that are not specified by the user [#32284](https://github.com/docker/docker/pull/32284)
* Move `docker service logs` out of experimental [#32462](https://github.com/docker/docker/pull/32462)
* Add support for Credential Spec and SELinux to services to the API [#32339](https://github.com/docker/docker/pull/32339)
* Add `--entrypoint` flag to `docker service create` and `docker service update` [#29228](https://github.com/docker/docker/pull/29228)
* Add `--network-add` and `--network-rm` to `docker service update` [#32062](https://github.com/docker/docker/pull/32062)
* Add `--credential-spec` flag to `docker service create` and `docker service update` [#32339](https://github.com/docker/docker/pull/32339)
* Add `--filter mode=<global|replicated>` to `docker service ls` [#31538](https://github.com/docker/docker/pull/31538)
* Resolve network IDs on the client side, instead of in the daemon when creating services [#32062](https://github.com/docker/docker/pull/32062)
* Add `--format` option to `docker node ls` [#30424](https://github.com/docker/docker/pull/30424)
* Add `--prune` option to `docker stack deploy` to remove services that are no longer defined in the docker-compose file [#31302](https://github.com/docker/docker/pull/31302)
* Add `PORTS` column for `docker service ls` when using `ingress` mode [#30813](https://github.com/docker/docker/pull/30813)
- Fix unnescessary re-deploying of tasks when environment-variables are used [#32364](https://github.com/docker/docker/pull/32364)
- Fix `docker stack deploy` not supporting `endpoint_mode` when deploying from a docker compose file [#32333](https://github.com/docker/docker/pull/32333)
- Proceed with startup if cluster component cannot be created to allow recovering from a broken swarm setup [#31631](https://github.com/docker/docker/pull/31631)
### Security
* Allow setting SELinux type or MCS labels when using `--ipc=container:` or `--ipc=host` [#30652](https://github.com/docker/docker/pull/30652)
### Deprecation
- Deprecate `--api-enable-cors` daemon flag. This flag was marked deprecated in Docker 1.6.0 but not listed in deprecated features [#32352](https://github.com/docker/docker/pull/32352)
- Remove Ubuntu 12.04 (Precise Pangolin) as supported platform. Ubuntu 12.04 is EOL, and no longer receives updates [#32520](https://github.com/docker/docker/pull/32520)
## 17.04.0-ce (2017-04-05)
### Builder
* Disable container logging for build containers [#29552](https://github.com/docker/docker/pull/29552)
* Fix use of `**/` in `.dockerignore` [#29043](https://github.com/docker/docker/pull/29043)
### Client
+ Sort `docker stack ls` by name [#31085](https://github.com/docker/docker/pull/31085)
+ Flags for specifying bind mount consistency [#31047](https://github.com/docker/docker/pull/31047)
* Output of docker CLI --help is now wrapped to the terminal width [#28751](https://github.com/docker/docker/pull/28751)
* Suppress image digest in docker ps [#30848](https://github.com/docker/docker/pull/30848)
* Hide command options that are related to Windows [#30788](https://github.com/docker/docker/pull/30788)
* Fix `docker plugin install` prompt to accept "enter" for the "N" default [#30769](https://github.com/docker/docker/pull/30769)
+ Add `truncate` function for Go templates [#30484](https://github.com/docker/docker/pull/30484)
* Support expanded syntax of ports in `stack deploy` [#30476](https://github.com/docker/docker/pull/30476)
* Support expanded syntax of mounts in `stack deploy` [#30597](https://github.com/docker/docker/pull/30597) [#31795](https://github.com/docker/docker/pull/31795)
+ Add `--add-host` for docker build [#30383](https://github.com/docker/docker/pull/30383)
+ Add `.CreatedAt` placeholder for `docker network ls --format` [#29900](https://github.com/docker/docker/pull/29900)
* Update order of `--secret-rm` and `--secret-add` [#29802](https://github.com/docker/docker/pull/29802)
+ Add `--filter enabled=true` for `docker plugin ls` [#28627](https://github.com/docker/docker/pull/28627)
+ Add `--format` to `docker service ls` [#28199](https://github.com/docker/docker/pull/28199)
+ Add `publish` and `expose` filter for `docker ps --filter` [#27557](https://github.com/docker/docker/pull/27557)
* Support multiple service IDs on `docker service ps` [#25234](https://github.com/docker/docker/pull/25234)
+ Allow swarm join with `--availability=drain` [#24993](https://github.com/docker/docker/pull/24993)
* Docker inspect now shows "docker-default" when AppArmor is enabled and no other profile was defined [#27083](https://github.com/docker/docker/pull/27083)
### Logging
+ Implement optional ring buffer for container logs [#28762](https://github.com/docker/docker/pull/28762)
+ Add `--log-opt awslogs-create-group=<true|false>` for awslogs (CloudWatch) to support creation of log groups as needed [#29504](https://github.com/docker/docker/pull/29504)
- Fix segfault when using the gcplogs logging driver with a "static" binary [#29478](https://github.com/docker/docker/pull/29478)
### Networking
* Check parameter `--ip`, `--ip6` and `--link-local-ip` in `docker network connect` [#30807](https://github.com/docker/docker/pull/30807)
+ Added support for `dns-search` [#30117](https://github.com/docker/docker/pull/30117)
+ Added --verbose option for docker network inspect to show task details from all swarm nodes [#31710](https://github.com/docker/docker/pull/31710)
* Clear stale datapath encryption states when joining the cluster [docker/libnetwork#1354](https://github.com/docker/libnetwork/pull/1354)
+ Ensure iptables initialization only happens once [docker/libnetwork#1676](https://github.com/docker/libnetwork/pull/1676)
* Fix bad order of iptables filter rules [docker/libnetwork#961](https://github.com/docker/libnetwork/pull/961)
+ Add anonymous container alias to service record on attachable network [docker/libnetwork#1651](https://github.com/docker/libnetwork/pull/1651)
+ Support for `com.docker.network.container_interface_prefix` driver label [docker/libnetwork#1667](https://github.com/docker/libnetwork/pull/1667)
+ Improve network list performance by omitting network details that are not used [#30673](https://github.com/docker/docker/pull/30673)
### Runtime
* Handle paused container when restoring without live-restore set [#31704](https://github.com/docker/docker/pull/31704)
- Do not allow sub second in healthcheck options in Dockerfile [#31177](https://github.com/docker/docker/pull/31177)
* Support name and id prefix in `secret update` [#30856](https://github.com/docker/docker/pull/30856)
* Use binary frame for websocket attach endpoint [#30460](https://github.com/docker/docker/pull/30460)
* Fix linux mount calls not applying propagation type changes [#30416](https://github.com/docker/docker/pull/30416)
* Fix ExecIds leak on failed `exec -i` [#30340](https://github.com/docker/docker/pull/30340)
* Prune named but untagged images if `danglingOnly=true` [#30330](https://github.com/docker/docker/pull/30330)
+ Add daemon flag to set `no_new_priv` as default for unprivileged containers [#29984](https://github.com/docker/docker/pull/29984)
+ Add daemon option `--default-shm-size` [#29692](https://github.com/docker/docker/pull/29692)
+ Support registry mirror config reload [#29650](https://github.com/docker/docker/pull/29650)
- Ignore the daemon log config when building images [#29552](https://github.com/docker/docker/pull/29552)
* Move secret name or ID prefix resolving from client to daemon [#29218](https://github.com/docker/docker/pull/29218)
+ Allow adding rules to `cgroup devices.allow` on container create/run [#22563](https://github.com/docker/docker/pull/22563)
- Fix `cpu.cfs_quota_us` being reset when running `systemd daemon-reload` [#31736](https://github.com/docker/docker/pull/31736)
### Swarm Mode
+ Topology-aware scheduling [#30725](https://github.com/docker/docker/pull/30725)
+ Automatic service rollback on failure [#31108](https://github.com/docker/docker/pull/31108)
+ Worker and manager on the same node are now connected through a UNIX socket [docker/swarmkit#1828](https://github.com/docker/swarmkit/pull/1828), [docker/swarmkit#1850](https://github.com/docker/swarmkit/pull/1850), [docker/swarmkit#1851](https://github.com/docker/swarmkit/pull/1851)
* Improve raft transport package [docker/swarmkit#1748](https://github.com/docker/swarmkit/pull/1748)
* No automatic manager shutdown on demotion/removal [docker/swarmkit#1829](https://github.com/docker/swarmkit/pull/1829)
* Use TransferLeadership to make leader demotion safer [docker/swarmkit#1939](https://github.com/docker/swarmkit/pull/1939)
* Decrease default monitoring period [docker/swarmkit#1967](https://github.com/docker/swarmkit/pull/1967)
+ Add Service logs formatting [#31672](https://github.com/docker/docker/pull/31672)
* Fix service logs API to be able to specify stream [#31313](https://github.com/docker/docker/pull/31313)
+ Add `--stop-signal` for `service create` and `service update` [#30754](https://github.com/docker/docker/pull/30754)
+ Add `--read-only` for `service create` and `service update` [#30162](https://github.com/docker/docker/pull/30162)
+ Renew the context after communicating with the registry [#31586](https://github.com/docker/docker/pull/31586)
+ (experimental) Add `--tail` and `--since` options to `docker service logs` [#31500](https://github.com/docker/docker/pull/31500)
+ (experimental) Add `--no-task-ids` and `--no-trunc` options to `docker service logs` [#31672](https://github.com/docker/docker/pull/31672)
### Windows
* Block pulling Windows images on non-Windows daemons [#29001](https://github.com/docker/docker/pull/29001)
## 17.03.1-ce (2017-03-27)
### Remote API (v1.27) & Client
* Fix autoremove on older api [#31692](https://github.com/docker/docker/pull/31692)
* Fix default network customization for a stack [#31258](https://github.com/docker/docker/pull/31258/)
* Correct CPU usage calculation in presence of offline CPUs and newer Linux [#31802](https://github.com/docker/docker/pull/31802)
* Fix issue where service healthcheck is `{}` in remote API [#30197](https://github.com/docker/docker/pull/30197)
### Runtime
* Update runc to 54296cf40ad8143b62dbcaa1d90e520a2136ddfe [#31666](https://github.com/docker/docker/pull/31666)
* Ignore cgroup2 mountpoints [opencontainers/runc#1266](https://github.com/opencontainers/runc/pull/1266)
* Update containerd to 4ab9917febca54791c5f071a9d1f404867857fcc [#31662](https://github.com/docker/docker/pull/31662) [#31852](https://github.com/docker/docker/pull/31852)
* Register healtcheck service before calling restore() [docker/containerd#609](https://github.com/docker/containerd/pull/609)
* Fix `docker exec` not working after unattended upgrades that reload apparmor profiles [#31773](https://github.com/docker/docker/pull/31773)
* Fix unmounting layer without merge dir with Overlay2 [#31069](https://github.com/docker/docker/pull/31069)
* Do not ignore "volume in use" errors when force-delete [#31450](https://github.com/docker/docker/pull/31450)
### Swarm Mode
* Update swarmkit to 17756457ad6dc4d8a639a1f0b7a85d1b65a617bb [#31807](https://github.com/docker/docker/pull/31807)
* Scheduler now correctly considers tasks which have been assigned to a node but aren't yet running [docker/swarmkit#1980](https://github.com/docker/swarmkit/pull/1980)
* Allow removal of a network when only dead tasks reference it [docker/swarmkit#2018](https://github.com/docker/swarmkit/pull/2018)
* Retry failed network allocations less aggressively [docker/swarmkit#2021](https://github.com/docker/swarmkit/pull/2021)
* Avoid network allocation for tasks that are no longer running [docker/swarmkit#2017](https://github.com/docker/swarmkit/pull/2017)
* Bookkeeping fixes inside network allocator allocator [docker/swarmkit#2019](https://github.com/docker/swarmkit/pull/2019) [docker/swarmkit#2020](https://github.com/docker/swarmkit/pull/2020)
### Windows
* Cleanup HCS on restore [#31503](https://github.com/docker/docker/pull/31503)
## 17.03.0-ce (2017-03-01)
**IMPORTANT**: Starting with this release, Docker is on a monthly release cycle and uses a
new YY.MM versioning scheme to reflect this. Two channels are available: monthly and quarterly.
Any given monthly release will only receive security and bugfixes until the next monthly
release is available. Quarterly releases receive security and bugfixes for 4 months after
initial release. This release includes bugfixes for 1.13.1 but
there are no major feature additions and the API version stays the same.
Upgrading from Docker 1.13.1 to 17.03.0 is expected to be simple and low-risk.
### Client
* Fix panic in `docker stats --format` [#30776](https://github.com/docker/docker/pull/30776)
### Contrib
* Update various `bash` and `zsh` completion scripts [#30823](https://github.com/docker/docker/pull/30823), [#30945](https://github.com/docker/docker/pull/30945) and more...
* Block obsolete socket families in default seccomp profile - mitigates unpatched kernels' CVE-2017-6074 [#29076](https://github.com/docker/docker/pull/29076)
### Networking
* Fix bug on overlay encryption keys rotation in cross-datacenter swarm [#30727](https://github.com/docker/docker/pull/30727)
* Fix side effect panic in overlay encryption and network control plane communication failure ("No installed keys could decrypt the message") on frequent swarm leader re-election [#25608](https://github.com/docker/docker/pull/25608)
* Several fixes around system responsiveness and datapath programming when using overlay network with external kv-store [docker/libnetwork#1639](https://github.com/docker/libnetwork/pull/1639), [docker/libnetwork#1632](https://github.com/docker/libnetwork/pull/1632) and more...
* Discard incoming plain vxlan packets for encrypted overlay network [#31170](https://github.com/docker/docker/pull/31170)
* Release the network attachment on allocation failure [#31073](https://github.com/docker/docker/pull/31073)
* Fix port allocation when multiple published ports map to the same target port [docker/swarmkit#1835](https://github.com/docker/swarmkit/pull/1835)
### Runtime
* Fix a deadlock in docker logs [#30223](https://github.com/docker/docker/pull/30223)
* Fix cpu spin waiting for log write events [#31070](https://github.com/docker/docker/pull/31070)
* Fix a possible crash when using journald [#31231](https://github.com/docker/docker/pull/31231) [#31263](https://github.com/docker/docker/pull/31263)
* Fix a panic on close of nil channel [#31274](https://github.com/docker/docker/pull/31274)
* Fix duplicate mount point for `--volumes-from` in `docker run` [#29563](https://github.com/docker/docker/pull/29563)
* Fix `--cache-from` does not cache last step [#31189](https://github.com/docker/docker/pull/31189)
### Swarm Mode
* Shutdown leaks an error when the container was never started [#31279](https://github.com/docker/docker/pull/31279)
* Fix possibility of tasks getting stuck in the "NEW" state during a leader failover [docker/swarmkit#1938](https://github.com/docker/swarmkit/pull/1938)
* Fix extraneous task creations for global services that led to confusing replica counts in `docker service ls` [docker/swarmkit#1957](https://github.com/docker/swarmkit/pull/1957)
* Fix problem that made rolling updates slow when `task-history-limit` was set to 1 [docker/swarmkit#1948](https://github.com/docker/swarmkit/pull/1948)
* Restart tasks elsewhere, if appropriate, when they are shut down as a result of nodes no longer satisfying constraints [docker/swarmkit#1958](https://github.com/docker/swarmkit/pull/1958)
* (experimental)
## 1.13.1 (2017-02-08)
**IMPORTANT**: On Linux distributions where `devicemapper` was the default storage driver,
the `overlay2`, or `overlay` is now used by default (if the kernel supports it).
To use devicemapper, you can manually configure the storage driver to use through
the `--storage-driver` daemon option, or by setting "storage-driver" in the `daemon.json`
configuration file.
**IMPORTANT**: In Docker 1.13, the managed plugin api changed, as compared to the experimental
version introduced in Docker 1.12. You must **uninstall** plugins which you installed with Docker 1.12
_before_ upgrading to Docker 1.13. You can uninstall plugins using the `docker plugin rm` command.
If you have already upgraded to Docker 1.13 without uninstalling
previously-installed plugins, you may see this message when the Docker daemon
starts:
Error starting daemon: json: cannot unmarshal string into Go value of type types.PluginEnv
To manually remove all plugins and resolve this problem, take the following steps:
1. Remove plugins.json from: `/var/lib/docker/plugins/`.
2. Restart Docker. Verify that the Docker daemon starts with no errors.
3. Reinstall your plugins.
### Contrib
* Do not require a custom build of tini [#28454](https://github.com/docker/docker/pull/28454)
* Upgrade to Go 1.7.5 [#30489](https://github.com/docker/docker/pull/30489)
### Remote API (v1.26) & Client
+ Support secrets in docker stack deploy with compose file [#30144](https://github.com/docker/docker/pull/30144)
### Runtime
* Fix size issue in `docker system df` [#30378](https://github.com/docker/docker/pull/30378)
* Fix error on `docker inspect` when Swarm certificates were expired. [#29246](https://github.com/docker/docker/pull/29246)
* Fix deadlock on v1 plugin with activate error [#30408](https://github.com/docker/docker/pull/30408)
* Fix SELinux regression [#30649](https://github.com/docker/docker/pull/30649)
### Plugins
* Support global scoped network plugins (v2) in swarm mode [#30332](https://github.com/docker/docker/pull/30332)
+ Add `docker plugin upgrade` [#29414](https://github.com/docker/docker/pull/29414)
### Windows
* Fix small regression with old plugins in Windows [#30150](https://github.com/docker/docker/pull/30150)
* Fix warning on Windows [#30730](https://github.com/docker/docker/pull/30730)
## 1.13.0 (2017-01-18)
**IMPORTANT**: On Linux distributions where `devicemapper` was the default storage driver,
the `overlay2`, or `overlay` is now used by default (if the kernel supports it).
To use devicemapper, you can manually configure the storage driver to use through
the `--storage-driver` daemon option, or by setting "storage-driver" in the `daemon.json`
configuration file.
**IMPORTANT**: In Docker 1.13, the managed plugin api changed, as compared to the experimental
version introduced in Docker 1.12. You must **uninstall** plugins which you installed with Docker 1.12
_before_ upgrading to Docker 1.13. You can uninstall plugins using the `docker plugin rm` command.
If you have already upgraded to Docker 1.13 without uninstalling
previously-installed plugins, you may see this message when the Docker daemon
starts:
Error starting daemon: json: cannot unmarshal string into Go value of type types.PluginEnv
To manually remove all plugins and resolve this problem, take the following steps:
1. Remove plugins.json from: `/var/lib/docker/plugins/`.
2. Restart Docker. Verify that the Docker daemon starts with no errors.
3. Reinstall your plugins.
### Builder
+ Add capability to specify images used as a cache source on build. These images do not need to have local parent chain and can be pulled from other registries [#26839](https://github.com/docker/docker/pull/26839)
+ (experimental) Add option to squash image layers to the FROM image after successful builds [#22641](https://github.com/docker/docker/pull/22641)
* Fix dockerfile parser with empty line after escape [#24725](https://github.com/docker/docker/pull/24725)
@@ -18,15 +340,20 @@ be found.
- Fix image layer inconsistencies when using the overlay storage driver [#27209](https://github.com/docker/docker/pull/27209)
* Unused build-args are now allowed. A warning is presented instead of an error and failed build [#27412](https://github.com/docker/docker/pull/27412)
- Fix builder cache issue on Windows [#27805](https://github.com/docker/docker/pull/27805)
+ Allow `USER` in builder on Windows [#28415](https://github.com/docker/docker/pull/28415)
+ Handle env case-insensitive on Windows [#28725](https://github.com/docker/docker/pull/28725)
### Contrib
+ Add support for building docker debs for Ubuntu Xenial on PPC64 [#23438](https://github.com/docker/docker/pull/23438)
+ Add support for building docker debs for Ubuntu Xenial on s390x [#26104](https://github.com/docker/docker/pull/26104)
+ Add support for building docker debs for Ubuntu 16.04 Xenial on PPC64LE [#23438](https://github.com/docker/docker/pull/23438)
+ Add support for building docker debs for Ubuntu 16.04 Xenial on s390x [#26104](https://github.com/docker/docker/pull/26104)
+ Add support for building docker debs for Ubuntu 16.10 Yakkety Yak on PPC64LE [#28046](https://github.com/docker/docker/pull/28046)
- Add RPM builder for VMWare Photon OS [#24116](https://github.com/docker/docker/pull/24116)
+ Add shell completions to tgz [#27735](https://github.com/docker/docker/pull/27735)
* Update the install script to allow using the mirror in China [#27005](https://github.com/docker/docker/pull/27005)
+ Add DEB builder for Ubuntu 16.10 Yakkety Yak [#27993](https://github.com/docker/docker/pull/27993)
+ Add RPM builder for Fedora 25 [#28222](https://github.com/docker/docker/pull/28222)
+ Add `make deb` support for aarch64 [#27625](https://github.com/docker/docker/pull/27625)
### Distribution
@@ -52,11 +379,14 @@ be found.
+ Unix socket support for fluentd [#26088](https://github.com/docker/docker/pull/26088)
* Enable fluentd logging driver on Windows [#28189](https://github.com/docker/docker/pull/28189)
- Sanitize docker labels when used as journald field names [#23725](https://github.com/docker/docker/pull/23725)
- Fix an issue where `docker logs --tail` returned less lines than expected [#28203](https://github.com/docker/docker/pull/28203)
- Splunk Logging Driver: performance and reliability improvements [#26207](https://github.com/docker/docker/pull/26207)
- Splunk Logging Driver: configurable formats and skip for verifying connection [#25786](https://github.com/docker/docker/pull/25786)
### Networking
+ Add `--attachable` network support to enable `docker run` to work in swarm-mode overlay network [#25962](https://github.com/docker/docker/pull/25962)
+ Add support for host port PublishMode in services using the `--port` option in `docker service create` [#27917](https://github.com/docker/docker/pull/27917)
+ Add support for host port PublishMode in services using the `--publish` option in `docker service create` [#27917](https://github.com/docker/docker/pull/27917) and [#28943](https://github.com/docker/docker/pull/28943)
+ Add support for Windows server 2016 overlay network driver (requires upcoming ws2016 update) [#28182](https://github.com/docker/docker/pull/28182)
* Change the default `FORWARD` policy to `DROP` [#28257](https://github.com/docker/docker/pull/28257)
+ Add support for specifying static IP addresses for predefined network on windows [#22208](https://github.com/docker/docker/pull/22208)
@@ -77,6 +407,7 @@ be found.
+ Add `docker plugin create` command [#28164](https://github.com/docker/docker/pull/28164)
* Send request's TLS peer certificates to authorization plugins [#27383](https://github.com/docker/docker/pull/27383)
* Support for global-scoped network and ipam plugins in swarm-mode [#27287](https://github.com/docker/docker/pull/27287)
* Split `docker plugin install` into two API call `/privileges` and `/pull` [#28963](https://github.com/docker/docker/pull/28963)
### Remote API (v1.25) & Client
@@ -86,21 +417,21 @@ be found.
* Remove `--name` from `docker volume create` [#23830](https://github.com/docker/docker/pull/23830)
+ Add `docker stack ls` [#23886](https://github.com/docker/docker/pull/23886)
+ Add a new `is-task` ps filter [#24411](https://github.com/docker/docker/pull/24411)
+ Add `--env-file` flag to `docker create service` [#24844](https://github.com/docker/docker/pull/24844)
+ Add `--env-file` flag to `docker service create` [#24844](https://github.com/docker/docker/pull/24844)
+ Add `--format` on `docker stats` [#24987](https://github.com/docker/docker/pull/24987)
+ Make `docker node ps` default to `self` in swarm node [#25214](https://github.com/docker/docker/pull/25214)
+ Add `--group` in `docker service create` [#25317](https://github.com/docker/docker/pull/25317)
+ Add `--no-trunc` to service/node/stack ps output [#25337(https://github.com/docker/docker/pull/25337)
+ Add `--no-trunc` to service/node/stack ps output [#25337](https://github.com/docker/docker/pull/25337)
+ Add Logs to `ContainerAttachOptions` so go clients can request to retrieve container logs as part of the attach process [#26718](https://github.com/docker/docker/pull/26718)
+ Allow client to talk to an older server [#27745](https://github.com/docker/docker/pull/27745)
* Inform user client-side that a container removal is in progress [#26074](https://github.com/docker/docker/pull/26074)
+ Add `Isolation` to the /info endpoint [#26255](https://github.com/docker/docker/pull/26255)
+ Add `userns` to the /info endpoint [#27840](https://github.com/docker/docker/pull/27840)
- Do not allow more than one mode be requested at once in the services endpoint [#26643](https://github.com/docker/docker/pull/26643)
+ Add `--mount` flag to `docker create` and `docker run` [#26825](https://github.com/docker/docker/pull/26825)[#28150](https://github.com/docker/docker/pull/28150)
+ Add capability to /containers/create API to specify mounts in a more granular and safer way [#22373](https://github.com/docker/docker/pull/22373)
+ Add `--format` flag to `network ls` and `volume ls` [#23475](https://github.com/docker/docker/pull/23475)
* Allow the top-level `docker inspect` command to inspect any kind of resource [#23614](https://github.com/docker/docker/pull/23614)
+ Add --cpus flag to control cpu resources for `docker run` and `docker create`, and add `NanoCPUs` to `HostConfig` [#27958](https://github.com/docker/docker/pull/27958)
- Allow unsetting the `--entrypoint` in `docker run` or `docker create` [#23718](https://github.com/docker/docker/pull/23718)
* Restructure CLI commands by adding `docker image` and `docker container` commands for more consistency [#26025](https://github.com/docker/docker/pull/26025)
- Remove `COMMAND` column from `service ls` output [#28029](https://github.com/docker/docker/pull/28029)
@@ -132,7 +463,7 @@ be found.
- Fix a race condition between device deferred removal and resume device, when using the devicemapper graphdriver [#23497](https://github.com/docker/docker/pull/23497)
- Add `docker stats` support in Windows [#25737](https://github.com/docker/docker/pull/25737)
- Allow using `--pid=host` and `--net=host` when `--userns=host` [#25771](https://github.com/docker/docker/pull/25771)
+ (experimental) Add metrics output [#25820](https://github.com/docker/docker/pull/25820)
+ (experimental) Add metrics (Prometheus) output for basic `container`, `image`, and `daemon` operations [#25820](https://github.com/docker/docker/pull/25820)
- Fix issue in `docker stats` with `NetworkDisabled=true` [#25905](https://github.com/docker/docker/pull/25905)
+ Add `docker top` support in Windows [#25891](https://github.com/docker/docker/pull/25891)
+ Record pid of exec'd process [#27470](https://github.com/docker/docker/pull/27470)
@@ -150,32 +481,38 @@ be found.
### Swarm Mode
+ Add secret management [#27794](https://github.com/docker/docker/pull/27794)
+ Add support for templating service options (hostname, mounts, and environment variables) [#28025](https://github.com/docker/docker/pull/28025)
* Display the endpoint mode in the output of `docker service inspect --pretty` [#26906](https://github.com/docker/docker/pull/26906)
* Make `docker service ps` output more bearable by shortening service IDs in task names [#28088](https://github.com/docker/docker/pull/28088)
* `docker node ps` now defaults to the current node [#25214](https://github.com/docker/docker/pull/25214)
+ Add `-a`/`--all` flags to `docker service ps` and `docker node ps` to show all results [#25983](https://github.com/docker/docker/pull/25983)
* Make `docker node ps` default to the current node [#25214](https://github.com/docker/docker/pull/25214)
+ Add `--dns`, -`-dns-opt`, and `--dns-search` to service create. [#27567](https://github.com/docker/docker/pull/27567)
+ Add `--force` to `docker service update` [#27596](https://github.com/docker/docker/pull/27596)
+ Add `--health-*` and `--no-healthcheck` flags to `docker service create` and `docker service update` [#27369](https://github.com/docker/docker/pull/27369)
+ Add `-q` to `docker service ps` [#27654](https://github.com/docker/docker/pull/27654)
* Display number of global services in `docker service ls` [#27710](https://github.com/docker/docker/pull/27710)
- Remove `--name` flag from `docker service update`. This flag is only functional on `docker service create`, so was removed from the `update` command [#26988](https://github.com/docker/docker/pull/26988)
- Fix worker nodes failing to recover because of transient networking issues [#26646](https://github.com/docker/docker/issues/26646)
* Add support for health aware load balancing and DNS records [#27279](https://github.com/docker/docker/pull/27279)
* Add `--hostname` to `docker service create` [#27857](https://github.com/docker/docker/pull/27857)
- Add `--tty` flag to `docker service create`/`update` [#28076](https://github.com/docker/docker/pull/28076)
+ Add `--hostname` to `docker service create` [#27857](https://github.com/docker/docker/pull/27857)
+ Add `--host` to `docker service create`, and `--host-add`, `--host-rm` to `docker service update` [#28031](https://github.com/docker/docker/pull/28031)
+ Add `--tty` flag to `docker service create`/`update` [#28076](https://github.com/docker/docker/pull/28076)
* Autodetect, store, and expose node IP address as seen by the manager [#27910](https://github.com/docker/docker/pull/27910)
* Encryption at rest of manager keys and raft data [#27967](https://github.com/docker/docker/pull/27967)
+ Add `--update-max-failure-ratio`, `--update-monitor` and `--rollback` flags to `docker service update` [#26421](https://github.com/docker/docker/pull/26421)
- Fix an issue with address autodiscovery on `docker swarm init` running inside a container [#26457](https://github.com/docker/docker/pull/26457)
+ (experimental) Add `docker service logs` command to view logs for a service [#28089](https://github.com/docker/docker/pull/28089)
- Pin images by digest for `docker service create` and `update` [#28173](https://github.com/docker/docker/pull/28173)
- Add short (`-f`) flag for `docker node rm --force` and `docker swarm leave --force` [#28196](https://github.com/docker/docker/pull/28196)
+ Don't repull image if pinned by digest [#28265](https://github.com/docker/docker/pull/28265)
+ swarm-mode support for indows [#27838](https://github.com/docker/docker/pull/27838)
+ Pin images by digest for `docker service create` and `update` [#28173](https://github.com/docker/docker/pull/28173)
* Add short (`-f`) flag for `docker node rm --force` and `docker swarm leave --force` [#28196](https://github.com/docker/docker/pull/28196)
+ Add options to customize Raft snapshots (`--max-snapshots`, `--snapshot-interval`) [#27997](https://github.com/docker/docker/pull/27997)
- Don't repull image if pinned by digest [#28265](https://github.com/docker/docker/pull/28265)
+ Swarm-mode support for Windows [#27838](https://github.com/docker/docker/pull/27838)
+ Allow hostname to be updated on service [#28771](https://github.com/docker/docker/pull/28771)
+ Support v2 plugins [#29433](https://github.com/docker/docker/pull/29433)
+ Add content trust for services [#29469](https://github.com/docker/docker/pull/29469)
### Volume
+ Add support for labels on volumes [#25628](https://github.com/docker/docker/pull/21567)
+ Add support for labels on volumes [#21270](https://github.com/docker/docker/pull/21270)
+ Add support for filtering volumes by label [#25628](https://github.com/docker/docker/pull/25628)
* Add a `--force` flag in `docker volume rm` to forcefully purge the data of the volume that has already been deleted [#23436](https://github.com/docker/docker/pull/23436)
* Enhance `docker volume inspect` to show all options used when creating the volume [#26671](https://github.com/docker/docker/pull/26671)
@@ -186,16 +523,242 @@ be found.
- Fix selinux labeling of volumes shared in a container [#23024](https://github.com/docker/docker/pull/23024)
- Prohibit `/sys/firmware/**` from being accessed with apparmor [#26618](https://github.com/docker/docker/pull/26618)
### DEPRECATION
### Deprecation
- Marked the `docker daemon` command as deprecated. The daemon is moved to a separate binary (`dockerd`), and should be used instead [#26834](https://github.com/docker/docker/pull/26834)
- Deprecate unversioned API endpoints [#28208](https://github.com/docker/docker/pull/28208)
- Remove Ubuntu 15.10 (Wily Werewolf) as supported platform. Ubuntu 15.10 is EOL, and no longer receives updates [#27042](https://github.com/docker/docker/pull/27042)
- Remove Fedora 22 as supported platform. Fedora 22 is EOL, and no longer receives updates [#27432](https://github.com/docker/docker/pull/27432)
- Remove Fedora 23 as supported platform. Fedora 23 is EOL, and no longer receives updates [#29455](https://github.com/docker/docker/pull/29455)
- Deprecate the `repo:shortid` syntax on `docker pull` [#27207](https://github.com/docker/docker/pull/27207)
- Deprecate backing filesystem without d_type for overlay/overlay2 storage drivers [#27433](https://github.com/docker/docker/pull/27433)
- Deprecate MAINTAINER in Dockerfile [#25466](https://github.com/docker/docker/pull/25466)
- Deprecated filter param for endpoint `/images/json` [#27872](https://github.com/docker/docker/pull/27872)
- Deprecate backing filesystem without `d_type` for overlay and overlay2 storage drivers [#27433](https://github.com/docker/docker/pull/27433)
- Deprecate `MAINTAINER` in Dockerfile [#25466](https://github.com/docker/docker/pull/25466)
- Deprecate `filter` param for endpoint `/images/json` [#27872](https://github.com/docker/docker/pull/27872)
- Deprecate setting duplicate engine labels [#24533](https://github.com/docker/docker/pull/24533)
- Deprecate "top-level" network information in `NetworkSettings` [#28437](https://github.com/docker/docker/pull/28437)
## 1.12.6 (2017-01-10)
**IMPORTANT**: Docker 1.12 ships with an updated systemd unit file for rpm
based installs (which includes RHEL, Fedora, CentOS, and Oracle Linux 7). When
upgrading from an older version of docker, the upgrade process may not
automatically install the updated version of the unit file, or fail to start
the docker service if;
- the systemd unit file (`/usr/lib/systemd/system/docker.service`) contains local changes, or
- a systemd drop-in file is present, and contains `-H fd://` in the `ExecStart` directive
Starting the docker service will produce an error:
Failed to start docker.service: Unit docker.socket failed to load: No such file or directory.
or
no sockets found via socket activation: make sure the service was started by systemd.
To resolve this:
- Backup the current version of the unit file, and replace the file with the
[version that ships with docker 1.12](https://raw.githubusercontent.com/docker/docker/v1.12.0/contrib/init/systemd/docker.service.rpm)
- Remove the `Requires=docker.socket` directive from the `/usr/lib/systemd/system/docker.service` file if present
- Remove `-H fd://` from the `ExecStart` directive (both in the main unit file, and in any drop-in files present).
After making those changes, run `sudo systemctl daemon-reload`, and `sudo
systemctl restart docker` to reload changes and (re)start the docker daemon.
**NOTE**: Docker 1.12.5 will correctly validate that either an IPv6 subnet is provided or
that the IPAM driver can provide one when you specify the `--ipv6` option.
If you are currently using the `--ipv6` option _without_ specifying the
`--fixed-cidr-v6` option, the Docker daemon will refuse to start with the
following message:
```none
Error starting daemon: Error initializing network controller: Error creating
default "bridge" network: failed to parse pool request
for address space "LocalDefault" pool " subpool ":
could not find an available, non-overlapping IPv6 address
pool among the defaults to assign to the network
```
To resolve this error, either remove the `--ipv6` flag (to preserve the same
behavior as in Docker 1.12.3 and earlier), or provide an IPv6 subnet as the
value of the `--fixed-cidr-v6` flag.
In a similar way, if you specify the `--ipv6` flag when creating a network
with the default IPAM driver, without providing an IPv6 `--subnet`, network
creation will fail with the following message:
```none
Error response from daemon: failed to parse pool request for address space
"LocalDefault" pool "" subpool "": could not find an
available, non-overlapping IPv6 address pool among
the defaults to assign to the network
```
To resolve this, either remove the `--ipv6` flag (to preserve the same behavior
as in Docker 1.12.3 and earlier), or provide an IPv6 subnet as the value of the
`--subnet` flag.
The network network creation will instead succeed if you use an external IPAM driver
which supports automatic allocation of IPv6 subnets.
### Runtime
- Fix runC privilege escalation (CVE-2016-9962)
## 1.12.5 (2016-12-15)
**IMPORTANT**: Docker 1.12 ships with an updated systemd unit file for rpm
based installs (which includes RHEL, Fedora, CentOS, and Oracle Linux 7). When
upgrading from an older version of docker, the upgrade process may not
automatically install the updated version of the unit file, or fail to start
the docker service if;
- the systemd unit file (`/usr/lib/systemd/system/docker.service`) contains local changes, or
- a systemd drop-in file is present, and contains `-H fd://` in the `ExecStart` directive
Starting the docker service will produce an error:
Failed to start docker.service: Unit docker.socket failed to load: No such file or directory.
or
no sockets found via socket activation: make sure the service was started by systemd.
To resolve this:
- Backup the current version of the unit file, and replace the file with the
[version that ships with docker 1.12](https://raw.githubusercontent.com/docker/docker/v1.12.0/contrib/init/systemd/docker.service.rpm)
- Remove the `Requires=docker.socket` directive from the `/usr/lib/systemd/system/docker.service` file if present
- Remove `-H fd://` from the `ExecStart` directive (both in the main unit file, and in any drop-in files present).
After making those changes, run `sudo systemctl daemon-reload`, and `sudo
systemctl restart docker` to reload changes and (re)start the docker daemon.
**NOTE**: Docker 1.12.5 will correctly validate that either an IPv6 subnet is provided or
that the IPAM driver can provide one when you specify the `--ipv6` option.
If you are currently using the `--ipv6` option _without_ specifying the
`--fixed-cidr-v6` option, the Docker daemon will refuse to start with the
following message:
```none
Error starting daemon: Error initializing network controller: Error creating
default "bridge" network: failed to parse pool request
for address space "LocalDefault" pool " subpool ":
could not find an available, non-overlapping IPv6 address
pool among the defaults to assign to the network
```
To resolve this error, either remove the `--ipv6` flag (to preserve the same
behavior as in Docker 1.12.3 and earlier), or provide an IPv6 subnet as the
value of the `--fixed-cidr-v6` flag.
In a similar way, if you specify the `--ipv6` flag when creating a network
with the default IPAM driver, without providing an IPv6 `--subnet`, network
creation will fail with the following message:
```none
Error response from daemon: failed to parse pool request for address space
"LocalDefault" pool "" subpool "": could not find an
available, non-overlapping IPv6 address pool among
the defaults to assign to the network
```
To resolve this, either remove the `--ipv6` flag (to preserve the same behavior
as in Docker 1.12.3 and earlier), or provide an IPv6 subnet as the value of the
`--subnet` flag.
The network network creation will instead succeed if you use an external IPAM driver
which supports automatic allocation of IPv6 subnets.
### Runtime
- Fix race on sending stdin close event [#29424](https://github.com/docker/docker/pull/29424)
### Networking
- Fix panic in docker network ls when a network was created with `--ipv6` and no ipv6 `--subnet` in older docker versions [#29416](https://github.com/docker/docker/pull/29416)
### Contrib
- Fix compilation on Darwin [#29370](https://github.com/docker/docker/pull/29370)
## 1.12.4 (2016-12-12)
**IMPORTANT**: Docker 1.12 ships with an updated systemd unit file for rpm
based installs (which includes RHEL, Fedora, CentOS, and Oracle Linux 7). When
upgrading from an older version of docker, the upgrade process may not
automatically install the updated version of the unit file, or fail to start
the docker service if;
- the systemd unit file (`/usr/lib/systemd/system/docker.service`) contains local changes, or
- a systemd drop-in file is present, and contains `-H fd://` in the `ExecStart` directive
Starting the docker service will produce an error:
Failed to start docker.service: Unit docker.socket failed to load: No such file or directory.
or
no sockets found via socket activation: make sure the service was started by systemd.
To resolve this:
- Backup the current version of the unit file, and replace the file with the
[version that ships with docker 1.12](https://raw.githubusercontent.com/docker/docker/v1.12.0/contrib/init/systemd/docker.service.rpm)
- Remove the `Requires=docker.socket` directive from the `/usr/lib/systemd/system/docker.service` file if present
- Remove `-H fd://` from the `ExecStart` directive (both in the main unit file, and in any drop-in files present).
After making those changes, run `sudo systemctl daemon-reload`, and `sudo
systemctl restart docker` to reload changes and (re)start the docker daemon.
### Runtime
- Fix issue where volume metadata was not removed [#29083](https://github.com/docker/docker/pull/29083)
- Asynchronously close streams to prevent holding container lock [#29050](https://github.com/docker/docker/pull/29050)
- Fix selinux labels for newly created container volumes [#29050](https://github.com/docker/docker/pull/29050)
- Remove hostname validation [#28990](https://github.com/docker/docker/pull/28990)
- Fix deadlocks caused by IO races [#29095](https://github.com/docker/docker/pull/29095) [#29141](https://github.com/docker/docker/pull/29141)
- Return an empty stats if the container is restarting [#29150](https://github.com/docker/docker/pull/29150)
- Fix volume store locking [#29151](https://github.com/docker/docker/pull/29151)
- Ensure consistent status code in API [#29150](https://github.com/docker/docker/pull/29150)
- Fix incorrect opaque directory permission in overlay2 [#29093](https://github.com/docker/docker/pull/29093)
- Detect plugin content and error out on `docker pull` [#29297](https://github.com/docker/docker/pull/29297)
### Swarm Mode
* Update Swarmkit [#29047](https://github.com/docker/docker/pull/29047)
- orchestrator/global: Fix deadlock on updates [docker/swarmkit#1760](https://github.com/docker/swarmkit/pull/1760)
- on leader switchover preserve the vxlan id for existing networks [docker/swarmkit#1773](https://github.com/docker/swarmkit/pull/1773)
- Refuse swarm spec not named "default" [#29152](https://github.com/docker/docker/pull/29152)
### Networking
* Update libnetwork [#29004](https://github.com/docker/docker/pull/29004) [#29146](https://github.com/docker/docker/pull/29146)
- Fix panic in embedded DNS [docker/libnetwork#1561](https://github.com/docker/libnetwork/pull/1561)
- Fix unmarhalling panic when passing --link-local-ip on global scope network [docker/libnetwork#1564](https://github.com/docker/libnetwork/pull/1564)
- Fix panic when network plugin returns nil StaticRoutes [docker/libnetwork#1563](https://github.com/docker/libnetwork/pull/1563)
- Fix panic in osl.(*networkNamespace).DeleteNeighbor [docker/libnetwork#1555](https://github.com/docker/libnetwork/pull/1555)
- Fix panic in swarm networking concurrent map read/write [docker/libnetwork#1570](https://github.com/docker/libnetwork/pull/1570)
* Allow encrypted networks when running docker inside a container [docker/libnetwork#1502](https://github.com/docker/libnetwork/pull/1502)
- Do not block autoallocation of IPv6 pool [docker/libnetwork#1538](https://github.com/docker/libnetwork/pull/1538)
- Set timeout for netlink calls [docker/libnetwork#1557](https://github.com/docker/libnetwork/pull/1557)
- Increase networking local store timeout to one minute [docker/libkv#140](https://github.com/docker/libkv/pull/140)
- Fix a panic in libnetwork.(*sandbox).execFunc [docker/libnetwork#1556](https://github.com/docker/libnetwork/pull/1556)
- Honor icc=false for internal networks [docker/libnetwork#1525](https://github.com/docker/libnetwork/pull/1525)
### Logging
* Update syslog log driver [#29150](https://github.com/docker/docker/pull/29150)
### Contrib
- Run "dnf upgrade" before installing in fedora [#29150](https://github.com/docker/docker/pull/29150)
- Add build-date back to RPM packages [#29150](https://github.com/docker/docker/pull/29150)
- deb package filename changed to include distro to distinguish between distro code names [#27829](https://github.com/docker/docker/pull/27829)
## 1.12.3 (2016-10-26)
@@ -583,8 +1146,9 @@ installing docker, please make sure to update them accordingly.
- Windows: Enable auto-creation of host-path to match Linux [#22094](https://github.com/docker/docker/pull/22094)
### DEPRECATION
* Environment variables `DOCKER_CONTENT_TRUST_OFFLINE_PASSPHRASE` and `DOCKER_CONTENT_TRUST_TAGGING_PASSPHRASE` have been renamed
### Deprecation
* Environment variables `DOCKER_CONTENT_TRUST_OFFLINE_PASSPHRASE` and `DOCKER_CONTENT_TRUST_TAGGING_PASSPHRASE` have been renamed
to `DOCKER_CONTENT_TRUST_ROOT_PASSPHRASE` and `DOCKER_CONTENT_TRUST_REPOSITORY_PASSPHRASE` respectively [#22574](https://github.com/docker/docker/pull/22574)
* Remove deprecated `syslog-tag`, `gelf-tag`, `fluentd-tag` log option in favor of the more generic `tag` one [#22620](https://github.com/docker/docker/pull/22620)
* Remove deprecated feature of passing HostConfig at API container start [#22570](https://github.com/docker/docker/pull/22570)
@@ -755,7 +1319,7 @@ installing docker, please make sure to update them accordingly.
- Fix a panic that could occur when cleanup after a container started with invalid parameters ([#21716](https://github.com/docker/docker/pull/21716))
- Fix a race with event timers stopping early ([#21692](https://github.com/docker/docker/pull/21692))
- Fix race conditions in the layer store, potentially corrupting the map and crashing the process ([#21677](https://github.com/docker/docker/pull/21677))
- Un-deprecate auto-creation of host directories for mounts. This feature was marked deprecated in ([#21666](https://github.com/docker/docker/pull/21666))
- Un-deprecate auto-creation of host directories for mounts. This feature was marked deprecated in ([#21666](https://github.com/docker/docker/pull/21666))
Docker 1.9, but was decided to be too much of a backward-incompatible change, so it was decided to keep the feature.
+ It is now possible for containers to share the NET and IPC namespaces when `userns` is enabled ([#21383](https://github.com/docker/docker/pull/21383))
+ `docker inspect <image-id>` will now expose the rootfs layers ([#21370](https://github.com/docker/docker/pull/21370))
@@ -1120,7 +1684,7 @@ that allows to add build-time environment variables (#15182)
- devicemapper: Implement deferred deletion capability (#16381)
## Networking
### Networking
+ `docker network` exits experimental and is part of standard release (#16645)
+ New network top-level concept, with associated subcommands and API (#16645)

View File

@@ -137,7 +137,7 @@ However, there might be a way to implement that feature *on top of* Docker.
<tr>
<td>Stack Overflow</td>
<td>
Stack Overflow has over 17000 Docker questions listed. We regularly
Stack Overflow has thousands of Docker questions listed. We regularly
monitor <a href="https://stackoverflow.com/search?tab=newest&q=docker" target="_blank">Docker questions</a>
and so do many other knowledgeable Docker users.
</td>
@@ -173,10 +173,64 @@ committing your changes. Most editors have plug-ins that do this automatically.
Pull request descriptions should be as clear as possible and include a reference
to all the issues that they address.
### Successful Changes
Before contributing large or high impact changes, make the effort to coordinate
with the maintainers of the project before submitting a pull request. This
prevents you from doing extra work that may or may not be merged.
Large PRs that are just submitted without any prior communication are unlikely
to be successful.
While pull requests are the methodology for submitting changes to code, changes
are much more likely to be accepted if they are accompanied by additional
engineering work. While we don't define this explicitly, most of these goals
are accomplished through communication of the design goals and subsequent
solutions. Often times, it helps to first state the problem before presenting
solutions.
Typically, the best methods of accomplishing this are to submit an issue,
stating the problem. This issue can include a problem statement and a
checklist with requirements. If solutions are proposed, alternatives should be
listed and eliminated. Even if the criteria for elimination of a solution is
frivolous, say so.
Larger changes typically work best with design documents. These are focused on
providing context to the design at the time the feature was conceived and can
inform future documentation contributions.
### Commit Messages
Commit messages must start with a capitalized and short summary (max. 50 chars)
written in the imperative, followed by an optional, more detailed explanatory
text which is separated from the summary by an empty line.
Commit messages should follow best practices, including explaining the context
of the problem and how it was solved, including in caveats or follow up changes
required. They should tell the story of the change and provide readers
understanding of what led to it.
If you're lost about what this even means, please see [How to Write a Git
Commit Message](http://chris.beams.io/posts/git-commit/) for a start.
In practice, the best approach to maintaining a nice commit message is to
leverage a `git add -p` and `git commit --amend` to formulate a solid
changeset. This allows one to piece together a change, as information becomes
available.
If you squash a series of commits, don't just submit that. Re-write the commit
message, as if the series of commits was a single stroke of brilliance.
That said, there is no requirement to have a single commit for a PR, as long as
each commit tells the story. For example, if there is a feature that requires a
package, it might make sense to have the package in a separate commit then have
a subsequent commit that uses it.
Remember, you're telling part of the story with the commit message. Don't make
your chapter weird.
### Review
Code review comments may be added to your pull request. Discuss, then make the
suggested modifications and push additional commits to your feature branch. Post
a comment after pushing. New commits show up in the pull request automatically,

View File

@@ -25,16 +25,15 @@
FROM debian:jessie
# allow replacing httpredir or deb mirror
ARG APT_MIRROR=deb.debian.org
RUN sed -ri "s/(httpredir|deb).debian.org/$APT_MIRROR/g" /etc/apt/sources.list
# Add zfs ppa
RUN apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys E871F18B51E0147C77796AC81196BA81F6B0FC61 \
|| apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys E871F18B51E0147C77796AC81196BA81F6B0FC61
COPY keys/launchpad-ppa-zfs.asc /go/src/github.com/docker/docker/keys/
RUN apt-key add /go/src/github.com/docker/docker/keys/launchpad-ppa-zfs.asc
RUN echo deb http://ppa.launchpad.net/zfs-native/stable/ubuntu trusty main > /etc/apt/sources.list.d/zfs.list
# Allow replacing httpredir mirror
ARG APT_MIRROR=httpredir.debian.org
RUN sed -i s/httpredir.debian.org/$APT_MIRROR/g /etc/apt/sources.list
# Packaged dependencies
RUN apt-get update && apt-get install -y \
apparmor \
@@ -55,15 +54,16 @@ RUN apt-get update && apt-get install -y \
git \
iptables \
jq \
less \
libapparmor-dev \
libcap-dev \
libltdl-dev \
libnl-3-dev \
libprotobuf-c0-dev \
libprotobuf-dev \
libsqlite3-dev \
libsystemd-journal-dev \
libtool \
libzfs-dev \
mercurial \
net-tools \
pkg-config \
@@ -73,11 +73,11 @@ RUN apt-get update && apt-get install -y \
python-mock \
python-pip \
python-websocket \
ubuntu-zfs \
xfsprogs \
vim-common \
libzfs-dev \
tar \
ubuntu-zfs \
vim \
vim-common \
xfsprogs \
zip \
--no-install-recommends \
&& pip install awscli==1.10.15
@@ -108,8 +108,8 @@ RUN set -x \
&& UNATTENDED=yes OSX_VERSION_MIN=10.6 ${OSXCROSS_PATH}/build.sh
ENV PATH /osxcross/target/bin:$PATH
# Install seccomp: the version shipped in trusty is too old
ENV SECCOMP_VERSION 2.3.1
# Install seccomp: the version shipped upstream is too old
ENV SECCOMP_VERSION 2.3.2
RUN set -x \
&& export SECCOMP_PATH="$(mktemp -d)" \
&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
@@ -127,7 +127,7 @@ RUN set -x \
# IMPORTANT: If the version of Go is updated, the Windows to Linux CI machines
# will need updating, to avoid errors. Ping #docker-maintainers on IRC
# with a heads-up.
ENV GO_VERSION 1.7.3
ENV GO_VERSION 1.7.5
RUN curl -fsSL "https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz" \
| tar -xzC /usr/local
@@ -154,8 +154,10 @@ RUN git clone https://github.com/golang/lint.git /go/src/github.com/golang/lint
&& go install -v github.com/golang/lint/golint
# Install CRIU for checkpoint/restore support
ENV CRIU_VERSION 2.2
RUN mkdir -p /usr/src/criu \
ENV CRIU_VERSION 2.12.1
# Install dependancy packages specific to criu
RUN apt-get install libnet-dev -y && \
mkdir -p /usr/src/criu \
&& curl -sSL https://github.com/xemul/criu/archive/v${CRIU_VERSION}.tar.gz | tar -v -C /usr/src/criu/ -xz --strip-components=1 \
&& cd /usr/src/criu \
&& make \
@@ -179,7 +181,7 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Install notary and notary-server
ENV NOTARY_VERSION v0.4.2
ENV NOTARY_VERSION v0.5.0
RUN set -x \
&& export GOPATH="$(mktemp -d)" \
&& git clone https://github.com/docker/notary.git "$GOPATH/src/github.com/docker/notary" \
@@ -191,10 +193,15 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Get the "docker-py" source so we can run their integration tests
ENV DOCKER_PY_COMMIT e2655f658408f9ad1f62abdef3eb6ed43c0cf324
ENV DOCKER_PY_COMMIT 4a08d04aef0595322e1b5ac7c52f28a931da85a5
# To run integration tests docker-pycreds is required.
# Before running the integration tests conftest.py is
# loaded which results in loads auth.py that
# imports the docker-pycreds module.
RUN git clone https://github.com/docker/docker-py.git /docker-py \
&& cd /docker-py \
&& git checkout -q $DOCKER_PY_COMMIT \
&& pip install docker-pycreds==0.2.1 \
&& pip install -r test-requirements.txt
# Install yamllint for validating swagger.yaml
@@ -238,7 +245,7 @@ RUN ./contrib/download-frozen-image-v2.sh /docker-frozen-images \
# Please edit hack/dockerfile/install-binaries.sh to update them.
COPY hack/dockerfile/binaries-commits /tmp/binaries-commits
COPY hack/dockerfile/install-binaries.sh /tmp/install-binaries.sh
RUN /tmp/install-binaries.sh tomlv vndr runc containerd tini proxy
RUN /tmp/install-binaries.sh tomlv vndr runc containerd tini proxy bindata
# Wrap all commands in the "docker-in-docker" script to allow nested containers
ENTRYPOINT ["hack/dind"]

View File

@@ -15,7 +15,7 @@
# the case. Therefore, you don't have to disable it anymore.
#
FROM aarch64/ubuntu:wily
FROM aarch64/ubuntu:xenial
# Packaged dependencies
RUN apt-get update && apt-get install -y \
@@ -38,8 +38,8 @@ RUN apt-get update && apt-get install -y \
libc6-dev \
libcap-dev \
libltdl-dev \
libsqlite3-dev \
libsystemd-dev \
libyaml-dev \
mercurial \
net-tools \
parallel \
@@ -47,8 +47,9 @@ RUN apt-get update && apt-get install -y \
python-dev \
python-mock \
python-pip \
python-setuptools \
python-websocket \
gccgo \
golang-go \
iproute2 \
iputils-ping \
vim-common \
@@ -77,8 +78,8 @@ RUN cd /usr/local/lvm2 \
&& make install_device-mapper
# See https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
# Install seccomp: the version shipped in trusty is too old
ENV SECCOMP_VERSION 2.3.1
# Install seccomp: the version shipped upstream is too old
ENV SECCOMP_VERSION 2.3.2
RUN set -x \
&& export SECCOMP_PATH="$(mktemp -d)" \
&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
@@ -93,18 +94,29 @@ RUN set -x \
&& rm -rf "$SECCOMP_PATH"
# Install Go
# We don't have official binary tarballs for ARM64, eigher for Go or bootstrap,
# so we use gccgo as bootstrap to build Go from source code.
# We don't have official binary golang 1.7.5 tarballs for ARM64, eigher for Go or
# bootstrap, so we use golang-go (1.6) as bootstrap to build Go from source code.
# We don't use the official ARMv6 released binaries as a GOROOT_BOOTSTRAP, because
# not all ARM64 platforms support 32-bit mode. 32-bit mode is optional for ARMv8.
ENV GO_VERSION 1.7.3
ENV GO_VERSION 1.7.5
RUN mkdir /usr/src/go && curl -fsSL https://golang.org/dl/go${GO_VERSION}.src.tar.gz | tar -v -C /usr/src/go -xz --strip-components=1 \
&& cd /usr/src/go/src \
&& GOOS=linux GOARCH=arm64 GOROOT_BOOTSTRAP="$(go env GOROOT)" ./make.bash
ENV PATH /usr/src/go/bin:$PATH
ENV PATH /go/bin:/usr/src/go/bin:$PATH
ENV GOPATH /go
# Dependency for golint
ENV GO_TOOLS_COMMIT 823804e1ae08dbb14eb807afc7db9993bc9e3cc3
RUN git clone https://github.com/golang/tools.git /go/src/golang.org/x/tools \
&& (cd /go/src/golang.org/x/tools && git checkout -q $GO_TOOLS_COMMIT)
# Grab Go's lint tool
ENV GO_LINT_COMMIT 32a87160691b3c96046c0c678fe57c5bef761456
RUN git clone https://github.com/golang/lint.git /go/src/github.com/golang/lint \
&& (cd /go/src/github.com/golang/lint && git checkout -q $GO_LINT_COMMIT) \
&& go install -v github.com/golang/lint/golint
# Only install one version of the registry, because old version which support
# schema1 manifests is not working on ARM64, we should skip integration-cli
# tests for schema1 manifests on ARM64.
@@ -118,7 +130,7 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Install notary and notary-server
ENV NOTARY_VERSION v0.4.2
ENV NOTARY_VERSION v0.5.0
RUN set -x \
&& export GOPATH="$(mktemp -d)" \
&& git clone https://github.com/docker/notary.git "$GOPATH/src/github.com/docker/notary" \
@@ -130,12 +142,26 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Get the "docker-py" source so we can run their integration tests
ENV DOCKER_PY_COMMIT e2655f658408f9ad1f62abdef3eb6ed43c0cf324
ENV DOCKER_PY_COMMIT 4a08d04aef0595322e1b5ac7c52f28a931da85a5
# Before running the integration tests conftest.py is
# loaded which results in loads auth.py that
# imports the docker-pycreds module.
RUN git clone https://github.com/docker/docker-py.git /docker-py \
&& cd /docker-py \
&& git checkout -q $DOCKER_PY_COMMIT \
&& pip install wheel \
&& pip install docker-pycreds==0.2.1 \
&& pip install -r test-requirements.txt
# Install yamllint for validating swagger.yaml
RUN pip install yamllint==1.5.0
# Install go-swagger for validating swagger.yaml
ENV GO_SWAGGER_COMMIT c28258affb0b6251755d92489ef685af8d4ff3eb
RUN git clone https://github.com/go-swagger/go-swagger.git /go/src/github.com/go-swagger/go-swagger \
&& (cd /go/src/github.com/go-swagger/go-swagger && git checkout -q $GO_SWAGGER_COMMIT) \
&& go install -v github.com/go-swagger/go-swagger/cmd/swagger
# Set user.email so crosbymichael's in-container merge commits go smoothly
RUN git config --global user.email 'docker-dummy@example.com'

View File

@@ -17,6 +17,10 @@
FROM armhf/debian:jessie
# allow replacing httpredir or deb mirror
ARG APT_MIRROR=deb.debian.org
RUN sed -ri "s/(httpredir|deb).debian.org/$APT_MIRROR/g" /etc/apt/sources.list
# Packaged dependencies
RUN apt-get update && apt-get install -y \
apparmor \
@@ -36,7 +40,6 @@ RUN apt-get update && apt-get install -y \
libapparmor-dev \
libcap-dev \
libltdl-dev \
libsqlite3-dev \
libsystemd-journal-dev \
libtool \
mercurial \
@@ -68,7 +71,7 @@ RUN cd /usr/local/lvm2 \
# See https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
# Install Go
ENV GO_VERSION 1.7.3
ENV GO_VERSION 1.7.5
RUN curl -fsSL "https://golang.org/dl/go${GO_VERSION}.linux-armv6l.tar.gz" \
| tar -xzC /usr/local
ENV PATH /go/bin:/usr/local/go/bin:$PATH
@@ -89,8 +92,8 @@ RUN git clone https://github.com/golang/lint.git /go/src/github.com/golang/lint
&& (cd /go/src/github.com/golang/lint && git checkout -q $GO_LINT_COMMIT) \
&& go install -v github.com/golang/lint/golint
# Install seccomp: the version shipped in trusty is too old
ENV SECCOMP_VERSION 2.3.1
# Install seccomp: the version shipped upstream is too old
ENV SECCOMP_VERSION 2.3.2
RUN set -x \
&& export SECCOMP_PATH="$(mktemp -d)" \
&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
@@ -122,7 +125,7 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Install notary and notary-server
ENV NOTARY_VERSION v0.4.2
ENV NOTARY_VERSION v0.5.0
RUN set -x \
&& export GOPATH="$(mktemp -d)" \
&& git clone https://github.com/docker/notary.git "$GOPATH/src/github.com/docker/notary" \

View File

@@ -15,12 +15,16 @@
# the case. Therefore, you don't have to disable it anymore.
#
# ppc64le/golang is a debian:jessie based image with golang installed
FROM ppc64le/golang:1.6.3
FROM ppc64le/debian:jessie
# allow replacing httpredir or deb mirror
ARG APT_MIRROR=deb.debian.org
RUN sed -ri "s/(httpredir|deb).debian.org/$APT_MIRROR/g" /etc/apt/sources.list
# Packaged dependencies
RUN apt-get update && apt-get install -y \
apparmor \
apt-utils \
aufs-tools \
automake \
bash-completion \
@@ -37,7 +41,6 @@ RUN apt-get update && apt-get install -y \
libapparmor-dev \
libcap-dev \
libltdl-dev \
libsqlite3-dev \
libsystemd-journal-dev \
libtool \
mercurial \
@@ -74,8 +77,8 @@ RUN cd /usr/local/lvm2 \
&& make install_device-mapper
# See https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
# Install seccomp: the version shipped in jessie is too old
ENV SECCOMP_VERSION 2.3.1
# Install seccomp: the version shipped upstream is too old
ENV SECCOMP_VERSION 2.3.2
RUN set -x \
&& export SECCOMP_PATH="$(mktemp -d)" \
&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
@@ -91,25 +94,12 @@ RUN set -x \
# Install Go
# ppc64le doesn't have official go binaries, so use the version of go installed from the image
# to build go from source.
# NOTE: ppc64le has compatibility issues with older versions of go, so make sure the version >= 1.6
ENV GO_VERSION 1.7.3
ENV GO_DOWNLOAD_URL https://golang.org/dl/go${GO_VERSION}.src.tar.gz
# NOTE: official ppc64le go binaries weren't available until go 1.6.4 and 1.7.4
ENV GO_VERSION 1.7.5
RUN curl -fsSL "https://golang.org/dl/go${GO_VERSION}.linux-ppc64le.tar.gz" \
| tar -xzC /usr/local
RUN set -x \
&& TEMPDIR="$(mktemp -d)" \
&& mv /usr/local/go $TEMPDIR \
&& GOROOT_BOOTSTRAP=$TEMPDIR/go \
&& cd /usr/local \
&& curl -fsSL "$GO_DOWNLOAD_URL" -o golang.tar.gz \
&& tar -C /usr/local -xzf golang.tar.gz \
&& rm golang.tar.gz \
&& cd go/src && ./make.bash 2>&1 \
&& rm -rf $TEMPDIR
ENV GOROOT_BOOTSTRAP /usr/local/go
ENV PATH /usr/local/go/bin/:$PATH
ENV PATH /go/bin:/usr/local/go/bin:$PATH
ENV GOPATH /go
# Dependency for golint
@@ -141,14 +131,14 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Install notary and notary-server
ENV NOTARY_VERSION v0.4.2
ENV NOTARY_VERSION v0.5.0
RUN set -x \
&& export GOPATH="$(mktemp -d)" \
&& git clone https://github.com/docker/notary.git "$GOPATH/src/github.com/docker/notary" \
&& (cd "$GOPATH/src/github.com/docker/notary" && git checkout -q "$NOTARY_VERSION") \
&& GOPATH="$GOPATH/src/github.com/docker/notary/Godeps/_workspace:$GOPATH" \
&& GOPATH="$GOPATH/src/github.com/docker/notary/vendor:$GOPATH" \
go build -o /usr/local/bin/notary-server github.com/docker/notary/cmd/notary-server \
&& GOPATH="$GOPATH/src/github.com/docker/notary/Godeps/_workspace:$GOPATH" \
&& GOPATH="$GOPATH/src/github.com/docker/notary/vendor:$GOPATH" \
go build -o /usr/local/bin/notary github.com/docker/notary/cmd/notary \
&& rm -rf "$GOPATH"

View File

@@ -15,11 +15,12 @@
# the case. Therefore, you don't have to disable it anymore.
#
FROM s390x/gcc:6.1
FROM s390x/debian:jessie
# Packaged dependencies
RUN apt-get update && apt-get install -y \
apparmor \
apt-utils \
aufs-tools \
automake \
bash-completion \
@@ -36,7 +37,6 @@ RUN apt-get update && apt-get install -y \
libapparmor-dev \
libcap-dev \
libltdl-dev \
libsqlite3-dev \
libsystemd-journal-dev \
libtool \
mercurial \
@@ -50,17 +50,8 @@ RUN apt-get update && apt-get install -y \
vim-common \
--no-install-recommends
# glibc in Debian has a bug specific to s390x that won't be fixed until Debian 8.6 is released
# - https://github.com/docker/docker/issues/24748
# - https://sourceware.org/git/?p=glibc.git;a=commit;h=890b7a4b33d482b5c768ab47d70758b80227e9bc
# - https://sourceware.org/git/?p=glibc.git;a=commit;h=2e807f29595eb5b1e5d0decc6e356a3562ecc58e
RUN echo 'deb http://httpredir.debian.org/debian jessie-proposed-updates main' >> /etc/apt/sources.list.d/pu.list \
&& apt-get update \
&& apt-get install -y libc6 \
&& rm -rf /var/lib/apt/lists/*
# Install seccomp: the version shipped in jessie is too old
ENV SECCOMP_VERSION 2.3.1
# Install seccomp: the version shipped upstream is too old
ENV SECCOMP_VERSION 2.3.2
RUN set -x \
&& export SECCOMP_PATH="$(mktemp -d)" \
&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
@@ -97,7 +88,7 @@ RUN cd /usr/local/lvm2 \
&& make install_device-mapper
# See https://git.fedorahosted.org/cgit/lvm2.git/tree/INSTALL
ENV GO_VERSION 1.7.3
ENV GO_VERSION 1.7.5
RUN curl -fsSL "https://golang.org/dl/go${GO_VERSION}.linux-s390x.tar.gz" \
| tar -xzC /usr/local
@@ -133,7 +124,7 @@ RUN set -x \
&& rm -rf "$GOPATH"
# Install notary and notary-server
ENV NOTARY_VERSION v0.4.2
ENV NOTARY_VERSION v0.5.0
RUN set -x \
&& export GOPATH="$(mktemp -d)" \
&& git clone https://github.com/docker/notary.git "$GOPATH/src/github.com/docker/notary" \

View File

@@ -7,6 +7,10 @@
FROM debian:jessie
# allow replacing httpredir or deb mirror
ARG APT_MIRROR=deb.debian.org
RUN sed -ri "s/(httpredir|deb).debian.org/$APT_MIRROR/g" /etc/apt/sources.list
# Compile and runtime deps
# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#build-dependencies
# https://github.com/docker/docker/blob/master/project/PACKAGERS.md#runtime-dependencies
@@ -19,8 +23,6 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
git \
libapparmor-dev \
libdevmapper-dev \
libsqlite3-dev \
\
ca-certificates \
e2fsprogs \
iptables \
@@ -32,8 +34,8 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
vim-common \
&& rm -rf /var/lib/apt/lists/*
# Install seccomp: the version shipped in trusty is too old
ENV SECCOMP_VERSION 2.3.1
# Install seccomp: the version shipped upstream is too old
ENV SECCOMP_VERSION 2.3.2
RUN set -x \
&& export SECCOMP_PATH="$(mktemp -d)" \
&& curl -fsSL "https://github.com/seccomp/libseccomp/releases/download/v${SECCOMP_VERSION}/libseccomp-${SECCOMP_VERSION}.tar.gz" \
@@ -51,7 +53,7 @@ RUN set -x \
# IMPORTANT: If the version of Go is updated, the Windows to Linux CI machines
# will need updating, to avoid errors. Ping #docker-maintainers on IRC
# with a heads-up.
ENV GO_VERSION 1.7.3
ENV GO_VERSION 1.7.5
RUN curl -fsSL "https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz" \
| tar -xzC /usr/local
ENV PATH /go/bin:/usr/local/go/bin:$PATH

View File

@@ -2,7 +2,7 @@
# -----------------------------------------------------------------------------------------
# This file describes the standard way to build Docker in a container on Windows
# Server 2016.
# Server 2016 or Windows 10.
#
# Maintainer: @jhowardmsft
# -----------------------------------------------------------------------------------------
@@ -11,21 +11,25 @@
# Prerequisites:
# --------------
#
# 1. Windows Server 2016 with all Windows updates applied. Pre-release versions
# of Windows are not supported (eg Windows Server 2016 TP5). The build number
# must be at least 14393. This can be confirmed, for example, by running the
# following from an elevated PowerShell prompt - this sample output is from a
# fully up to date machine as at late October 2016:
# 1. Windows Server 2016 or Windows 10 with all Windows updates applied. The major
# build number must be at least 14393. This can be confirmed, for example, by
# running the following from an elevated PowerShell prompt - this sample output
# is from a fully up to date machine as at mid-November 2016:
#
# >> PS C:\> $(gin).WindowsBuildLabEx
# >> 14393.321.amd64fre.rs1_release_inmarket.161004-2338
# >> 14393.447.amd64fre.rs1_release_inmarket.161102-0100
#
# 2. Git for Windows (or another git client) must be installed. https://git-scm.com/download/win.
#
# 3. The machine must be configured to run containers. For example, by following
# the quick start guidance at https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start or
# https://github.com/docker/labs/blob/master/windows/windows-containers/Setup.md
#
# 4. If building in a Hyper-V VM: For Windows Server 2016 using Windows Server
# containers as the default option, it is recommended you have at least 1GB
# of memory assigned; For Windows 10 where Hyper-V Containers are employed, you
# should have at least 4GB of memory assigned. Note also, to run Hyper-V
# containers in a VM, it is necessary to configure the VM for nested virtualization.
# -----------------------------------------------------------------------------------------
@@ -58,23 +62,25 @@
# >> cd C:\go\src\github.com\docker\docker
#
#
# 3. Build a docker image with the components required to build the docker binaries from source:
# 3. Build a docker image with the components required to build the docker binaries from source
# by running one of the following:
#
# >> docker build -t nativebuildimage -f Dockerfile.windows .
# >> docker build -t nativebuildimage -f Dockerfile.windows .
# >> docker build -t nativebuildimage -f Dockerfile.windows -m 2GB . (if using Hyper-V containers)
#
#
# 4. Build the docker executable binaries in a container:
# 4. Build the docker executable binaries by running one of the following:
#
# >> docker run --name binaries nativebuildimage sh -c 'cd /c/go/src/github.com/docker/docker; hack/make.sh binary'
# >> $DOCKER_GITCOMMIT=(git rev-parse --short HEAD)
# >> docker run --name binaries -e DOCKER_GITCOMMIT=$DOCKER_GITCOMMIT nativebuildimage hack\make.ps1 -Binary
# >> docker run --name binaries -e DOCKER_GITCOMMIT=$DOCKER_GITCOMMIT -m 2GB nativebuildimage hack\make.ps1 -Binary (if using Hyper-V containers)
#
#
# 5. Copy the binaries out of the above container, replacing HostPath with an appropriate destination
# 5. Copy the binaries out of the container, replacing HostPath with an appropriate destination
# folder on the host system where you want the binaries to be located.
#
# >> $v=$(Get-Content ".\VERSION" -raw).ToString().Replace("`n","").Trim()
# >> docker cp binaries:C:\go\src\github.com\docker\docker\bundles\$v\binary-client\docker-$v.exe C:\HostPath\docker.exe
# >> docker cp binaries:C:\go\src\github.com\docker\docker\bundles\$v\binary-daemon\dockerd.exe C:\HostPath\dockerd.exe
# >> docker cp binaries:C:\go\src\github.com\docker\docker\bundles\$v\binary-daemon\docker-proxy-$v.exe C:\HostPath\docker-proxy.exe
# >> docker cp binaries:C:\go\src\github.com\docker\docker\bundles\docker.exe C:\HostPath\docker.exe
# >> docker cp binaries:C:\go\src\github.com\docker\docker\bundles\dockerd.exe C:\HostPath\dockerd.exe
#
#
# 6. (Optional) Remove the interim container holding the built executable binaries:
@@ -88,7 +94,37 @@
# image which has all the components required to build the binaries already installed.
#
# >> docker rmi nativebuildimage
#
# -----------------------------------------------------------------------------------------
# The validation tests can only run directly on the host. This is because they calculate
# information from the git repo, but the .git directory is not passed into the image as
# it is excluded via .dockerignore. Run the following from a Windows PowerShell prompt
# (elevation is not required): (Note Go must be installed to run these tests)
#
# >> hack\make.ps1 -DCO -PkgImports -GoFormat
# -----------------------------------------------------------------------------------------
# To run unit tests, ensure you have created the nativebuildimage above. Then run one of
# the following from an (elevated) Windows PowerShell prompt:
#
# >> docker run --rm nativebuildimage hack\make.ps1 -TestUnit
# >> docker run --rm -m 2GB nativebuildimage hack\make.ps1 -TestUnit (if using Hyper-V containers)
# -----------------------------------------------------------------------------------------
# To run unit tests and binary build, ensure you have created the nativebuildimage above. Then
# run one of the following from an (elevated) Windows PowerShell prompt:
#
# >> docker run nativebuildimage hack\make.ps1 -All
# >> docker run -m 2GB nativebuildimage hack\make.ps1 -All (if using Hyper-V containers)
# -----------------------------------------------------------------------------------------
@@ -96,87 +132,125 @@
# Important notes:
# ---------------
#
# The posix utilities from git aren't usable interactively as at October 2016. This
# is because they require a console window which isn't present in a container in Windows.
# See the example at the top of this file. Do NOT use -it in that docker run. It will not work.
# Don't attempt to use a bind-mount to pass a local directory as the bundles target
# directory. It does not work (golang attempts for follow a mapped folder incorrectly).
# Instead, use docker cp as per the example.
#
# Don't attempt to use a volume for passing the source through to the container. The posix utilities will
# balk at reparse points.
# go.zip is not removed from the image as it is used by the Windows CI servers
# to ensure the host and image are running consistent versions of go.
#
# The downloaded files are not cleared from the image. go.zip is used by the Windows
# CI servers to ensure the host and image are running consistent versions of go.
# Nanoserver support is a work in progress. Although the image will build if the
# FROM statement is updated, it will not work when running autogen through hack\make.ps1.
# It is suspected that the required GCC utilities (eg gcc, windres, windmc) silently
# quit due to the use of console hooks which are not available.
#
# The GIT installer isn't very good at unattended install. We use techniques described
# at the links below to force it to set the path and other options accordingly.
# >> http://superuser.com/questions/944576/git-for-windows-silent-install-silent-arguments
# and follow through to installer at
# >> https://github.com/ferventcoder/chocolatey-packages/blob/master/automatic/git.install/tools/chocolateyInstall.ps1
# The docker integration tests do not currently run in a container on Windows, predominantly
# due to Windows not supporting privileged mode, so anything using a volume would fail.
# They (along with the rest of the docker CI suite) can be run using
# https://github.com/jhowardmsft/docker-w2wCIScripts/blob/master/runCI/Invoke-DockerCI.ps1.
#
# As of October 2016, this does not work on Windows 10 client, just Windows Server 2016,
# and only with the default isolation mode (process). It does not work with isolation mode
# set to Hyper-V containers (hyperv).
# -----------------------------------------------------------------------------------------
# The number of build steps below are explicitly minimised to improve performance.
FROM microsoft/windowsservercore
# Use PowerShell as the default shell
SHELL ["powershell", "-command"]
SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]
# Environment variable notes:
# - GO_VERSION must be consistent with 'Dockerfile' used by Linux.
# - FROM_DOCKERFILE is used for detection of building within a container.
ENV GO_VERSION=1.7.3 `
GIT_LOCATION=https://github.com/git-for-windows/git/releases/download/v2.10.1.windows.1/Git-2.10.1-64-bit.exe `
ENV GO_VERSION=1.7.5 `
GIT_VERSION=2.11.1 `
GOPATH=C:\go `
FROM_DOCKERFILE=1
WORKDIR C:\
RUN `
setx /M Path $($Env:PATH+';C:\gcc\bin;C:\go\bin'); `
Function Test-Nano() { `
$EditionId = (Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion' -Name 'EditionID').EditionId; `
return (($EditionId -eq 'ServerStandardNano') -or ($EditionId -eq 'ServerDataCenterNano') -or ($EditionId -eq 'NanoServer')); `
}`
`
$ErrorActionPreference = 'Stop'; `
Function Download-File([string] $source, [string] $target) { `
$wc = New-Object net.webclient; $wc.Downloadfile($source, $target) `
if (Test-Nano) { `
$handler = New-Object System.Net.Http.HttpClientHandler; `
$client = New-Object System.Net.Http.HttpClient($handler); `
$client.Timeout = New-Object System.TimeSpan(0, 30, 0); `
$cancelTokenSource = [System.Threading.CancellationTokenSource]::new(); `
$responseMsg = $client.GetAsync([System.Uri]::new($source), $cancelTokenSource.Token); `
$responseMsg.Wait(); `
if (!$responseMsg.IsCanceled) { `
$response = $responseMsg.Result; `
if ($response.IsSuccessStatusCode) { `
$downloadedFileStream = [System.IO.FileStream]::new($target, [System.IO.FileMode]::Create, [System.IO.FileAccess]::Write); `
$copyStreamOp = $response.Content.CopyToAsync($downloadedFileStream); `
$copyStreamOp.Wait(); `
$downloadedFileStream.Close(); `
if ($copyStreamOp.Exception -ne $null) { throw $copyStreamOp.Exception } `
} `
} else { `
Throw ("Failed to download " + $source) `
}`
} else { `
$webClient = New-Object System.Net.WebClient; `
$webClient.DownloadFile($source, $target); `
} `
} `
`
setx /M PATH $('C:\git\cmd;C:\git\usr\bin;'+$Env:PATH+';C:\gcc\bin;C:\go\bin'); `
`
Write-Host INFO: Downloading git...; `
Download-File $Env:GIT_LOCATION gitsetup.exe; `
$location='https://www.nuget.org/api/v2/package/GitForWindows/'+$Env:GIT_VERSION; `
Download-File $location C:\gitsetup.zip; `
`
Write-Host INFO: Downloading go...; `
Download-File $('https://golang.org/dl/go'+$Env:GO_VERSION+'.windows-amd64.zip') go.zip; `
Download-File $('https://golang.org/dl/go'+$Env:GO_VERSION+'.windows-amd64.zip') C:\go.zip; `
`
Write-Host INFO: Downloading compiler 1 of 3...; `
Download-File https://raw.githubusercontent.com/jhowardmsft/docker-tdmgcc/master/gcc.zip gcc.zip; `
Download-File https://raw.githubusercontent.com/jhowardmsft/docker-tdmgcc/master/gcc.zip C:\gcc.zip; `
`
Write-Host INFO: Downloading compiler 2 of 3...; `
Download-File https://raw.githubusercontent.com/jhowardmsft/docker-tdmgcc/master/runtime.zip runtime.zip; `
Download-File https://raw.githubusercontent.com/jhowardmsft/docker-tdmgcc/master/runtime.zip C:\runtime.zip; `
`
Write-Host INFO: Downloading compiler 3 of 3...; `
Download-File https://raw.githubusercontent.com/jhowardmsft/docker-tdmgcc/master/binutils.zip binutils.zip; `
Download-File https://raw.githubusercontent.com/jhowardmsft/docker-tdmgcc/master/binutils.zip C:\binutils.zip; `
`
Write-Host INFO: Installing git...; `
$installPath = 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall'; `
$installItem = 'Git_is1'; `
New-Item -Path $installPath -Name $installItem -Force; `
$installKey = $installPath+'\'+$installItem; `
New-ItemProperty $installKey -Name 'Inno Setup CodeFile: Path Option' -Value 'CmdTools' -PropertyType 'String' -Force; `
New-ItemProperty $installKey -Name 'Inno Setup CodeFile: Bash Terminal Option' -Value 'ConHost' -PropertyType 'String' -Force; `
New-ItemProperty $installKey -Name 'Inno Setup CodeFile: CRLF Option' -Value 'CRLFCommitAsIs' -PropertyType 'String' -Force; `
Start-Process gitsetup.exe -ArgumentList '/VERYSILENT /SUPPRESSMSGBOXES /CLOSEAPPLICATIONS /DIR=C:\git\' -Wait; `
Write-Host INFO: Extracting git...; `
Expand-Archive C:\gitsetup.zip C:\git-tmp; `
New-Item -Type Directory C:\git | Out-Null; `
Move-Item C:\git-tmp\tools\* C:\git\.; `
Remove-Item -Recurse -Force C:\git-tmp; `
`
Write-Host INFO: Expanding go...; `
Expand-Archive C:\go.zip -DestinationPath C:\; `
`
Write-Host INFO: Expanding compiler...; `
Write-Host INFO: Expanding compiler 1 of 3...; `
Expand-Archive C:\gcc.zip -DestinationPath C:\gcc -Force; `
Write-Host INFO: Expanding compiler 2 of 3...; `
Expand-Archive C:\runtime.zip -DestinationPath C:\gcc -Force; `
Write-Host INFO: Expanding compiler 3 of 3...; `
Expand-Archive C:\binutils.zip -DestinationPath C:\gcc -Force; `
`
Write-Host INFO: Removing downloaded files...; `
Remove-Item C:\gcc.zip; `
Remove-Item C:\runtime.zip; `
Remove-Item C:\binutils.zip; `
Remove-Item C:\gitsetup.zip; `
`
Write-Host INFO: Creating source directory...; `
New-Item -ItemType Directory -Path C:\go\src\github.com\docker\docker | Out-Null; `
`
Write-Host INFO: Configuring git core.autocrlf...; `
C:\git\cmd\git config --global core.autocrlf true; `
`
Write-Host INFO: Completed
# Prepare for building
COPY . C:\go\src\github.com\docker\docker
# Make PowerShell the default entrypoint
ENTRYPOINT ["powershell.exe"]
# Set the working directory to the location of the sources
WORKDIR C:\go\src\github.com\docker\docker
# Copy the sources into the container
COPY . .

View File

@@ -176,7 +176,7 @@
END OF TERMS AND CONDITIONS
Copyright 2013-2016 Docker, Inc.
Copyright 2013-2017 Docker, Inc.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.

View File

@@ -28,6 +28,7 @@
people = [
"aaronlehmann",
"akihirosuda",
"albers",
"aluzzardi",
"anusha",
"coolljt0725",
@@ -35,15 +36,16 @@
"crosbymichael",
"dnephin",
"duglin",
"ehazlett",
"estesp",
"icecrime",
"jhowardmsft",
"johnstep",
"justincormack",
"lk4d4",
"mavenugo",
"mhbauer",
"mlaventure",
"mrjana",
"runcom",
"stevvooe",
"tianon",
@@ -51,7 +53,8 @@
"tonistiigi",
"unclejack",
"vdemeester",
"vieux"
"vieux",
"yongtang"
]
[Org."Docs maintainers"]
@@ -59,9 +62,7 @@
# TODO Describe the docs maintainers role.
people = [
"jamtur01",
"misty",
"sven",
"thajeztah"
]
@@ -79,10 +80,16 @@
people = [
"aboch",
"alexellis",
"andrewhsu",
"anonymuse",
"chanwit",
"ehazlett",
"fntlnz",
"gianarb",
"mgoelzer",
"programmerq",
"rheinwein",
"thajeztah"
]
@@ -110,6 +117,15 @@
# still stumble into him in our issue tracker, or on IRC.
"erikh",
# After a false start with his first PR being rejected, James Turnbull became a frequent
# contributor to the documentation, and became a docs maintainer on December 5, 2013. As
# a maintainer, James lifted the docs to a higher standard, and introduced the community
# guidelines ("three strikes"). James is currently changing the world as CTO of https://www.empatico.org,
# meanwhile authoring various books that are worth checking out. You can find him on Twitter,
# rambling as @kartar, and although no longer active as a maintainer, he's always "game" to
# help out reviewing docs PRs, so you may still see him around in the repository.
"jamtur01",
# Jessica Frazelle, also known as the "Keyser Söze of containers",
# runs *everything* in containers. She started contributing to
# Docker with a (fun fun) change involving both iptables and regular
@@ -136,6 +152,30 @@
# maryatdocker/docker-whale back in May 2015.
"moxiegirl",
# Jana Radhakrishnan was part of the SocketPlane team that joined Docker.
# As a maintainer, he was the lead architect for the Container Network
# Model (CNM) implemented through libnetwork, and the "routing mesh" powering
# Swarm mode networking.
#
# Jana started new adventures in networking, but you can find him tweeting as @mrjana,
# coding on GitHub https://github.com/mrjana, and he may be hiding on the Docker Community
# slack channel :-)
"mrjana",
# Sven Dowideit became a well known person in the Docker ecosphere, building
# boot2docker, and became a regular contributor to the project, starting as
# early as October 2013 (https://github.com/docker/docker/pull/2119), to become
# a maintainer less than two months later (https://github.com/docker/docker/pull/3061).
#
# As a maintainer, Sven took on the task to convert the documentation from
# ReStructuredText to Markdown, migrate to Hugo for generating the docs, and
# writing tooling for building, testing, and publishing them.
#
# If you're not in the occasion to visit "the Australian office", you
# can keep up with Sven on Twitter (@SvenDowideit), his blog http://fosiki.com,
# and of course on GitHub.
"sven",
# Vincent "vbatts!" Batts made his first contribution to the project
# in November 2013, to become a maintainer a few months later, on
# May 10, 2014 (https://github.com/docker/docker/commit/d6e666a87a01a5634c250358a94c814bf26cb778).
@@ -175,6 +215,11 @@
Email = "aboch@docker.com"
GitHub = "aboch"
[people.alexellis]
Name = "Alex Ellis"
Email = "alexellis2@gmail.com"
GitHub = "alexellis"
[people.akihirosuda]
Name = "Akihiro Suda"
Email = "suda.akihiro@lab.ntt.co.jp"
@@ -185,11 +230,21 @@
Email = "al@docker.com"
GitHub = "aluzzardi"
[people.albers]
Name = "Harald Albers"
Email = "github@albersweb.de"
GitHub = "albers"
[people.andrewhsu]
Name = "Andrew Hsu"
Email = "andrewhsu@docker.com"
GitHub = "andrewhsu"
[people.anonymuse]
Name = "Jesse White"
Email = "anonymuse@gmail.com"
GitHub = "anonymuse"
[people.anusha]
Name = "Anusha Ragunathan"
Email = "anusha@docker.com"
@@ -210,6 +265,11 @@
Email = "cpuguy83@gmail.com"
Github = "cpuguy83"
[people.chanwit]
Name = "Chanwit Kaewkasi"
Email = "chanwit@gmail.com"
GitHub = "chanwit"
[people.crosbymichael]
Name = "Michael Crosby"
Email = "crosbymichael@gmail.com"
@@ -240,6 +300,16 @@
Email = "estesp@linux.vnet.ibm.com"
GitHub = "estesp"
[people.fntlnz]
Name = "Lorenzo Fontana"
Email = "fontanalorenz@gmail.com"
GitHub = "fntlnz"
[people.gianarb]
Name = "Gianluca Arbezzano"
Email = "ga@thumpflow.com"
GitHub = "gianarb"
[people.icecrime]
Name = "Arnaud Porterie"
Email = "arnaud@docker.com"
@@ -260,6 +330,11 @@
Email = "jess@linux.com"
GitHub = "jessfraz"
[people.johnstep]
Name = "John Stephens"
Email = "johnstep@docker.com"
GitHub = "johnstep"
[people.justincormack]
Name = "Justin Cormack"
Email = "justin.cormack@docker.com"
@@ -310,6 +385,11 @@
Email = "jeff@docker.com"
GitHub = "programmerq"
[people.rheinwein]
Name = "Laura Frank"
Email = "laura@codeship.com"
GitHub = "rheinwein"
[people.runcom]
Name = "Antonio Murdaca"
Email = "runcom@redhat.com"
@@ -374,3 +454,9 @@
Name = "Vishnu Kannan"
Email = "vishnuk@google.com"
GitHub = "vishh"
[people.yongtang]
Name = "Yong Tang"
Email = "yong.tang.github@outlook.com"
GitHub = "yongtang"

View File

@@ -2,11 +2,17 @@
# set the graph driver as the current graphdriver if not set
DOCKER_GRAPHDRIVER := $(if $(DOCKER_GRAPHDRIVER),$(DOCKER_GRAPHDRIVER),$(shell docker info 2>&1 | grep "Storage Driver" | sed 's/.*: //'))
export DOCKER_GRAPHDRIVER
DOCKER_INCREMENTAL_BINARY := $(if $(DOCKER_INCREMENTAL_BINARY),$(DOCKER_INCREMENTAL_BINARY),1)
export DOCKER_INCREMENTAL_BINARY
# get OS/Arch of docker engine
DOCKER_OSARCH := $(shell bash -c 'source hack/make/.detect-daemon-osarch && echo $${DOCKER_ENGINE_OSARCH:-$$DOCKER_CLIENT_OSARCH}')
DOCKERFILE := $(shell bash -c 'source hack/make/.detect-daemon-osarch && echo $${DOCKERFILE}')
DOCKER_GITCOMMIT := $(shell git rev-parse --short HEAD || echo unsupported)
export DOCKER_GITCOMMIT
# env vars passed through directly to Docker's build scripts
# to allow things like `make KEEPBUNDLE=1 binary` easily
# `project/PACKAGERS.md` have some limited documentation of some of these
@@ -17,10 +23,11 @@ DOCKER_ENVS := \
-e DOCKER_BUILD_ARGS \
-e DOCKER_BUILD_GOGC \
-e DOCKER_BUILD_PKGS \
-e DOCKER_CROSSPLATFORMS \
-e DOCKER_DEBUG \
-e DOCKER_EXPERIMENTAL \
-e DOCKER_GITCOMMIT \
-e DOCKER_GRAPHDRIVER=$(DOCKER_GRAPHDRIVER) \
-e DOCKER_GRAPHDRIVER \
-e DOCKER_INCREMENTAL_BINARY \
-e DOCKER_PORT \
-e DOCKER_REMAP_ROOT \
@@ -46,22 +53,32 @@ DOCKER_MOUNT := $(if $(BIND_DIR),-v "$(CURDIR)/$(BIND_DIR):/go/src/github.com/do
# This allows the test suite to be able to run without worrying about the underlying fs used by the container running the daemon (e.g. aufs-on-aufs), so long as the host running the container is running a supported fs.
# The volume will be cleaned up when the container is removed due to `--rm`.
# Note that `BIND_DIR` will already be set to `bundles` if `DOCKER_HOST` is not set (see above BIND_DIR line), in such case this will do nothing since `DOCKER_MOUNT` will already be set.
DOCKER_MOUNT := $(if $(DOCKER_MOUNT),$(DOCKER_MOUNT),-v /go/src/github.com/docker/docker/bundles)
DOCKER_MOUNT := $(if $(DOCKER_MOUNT),$(DOCKER_MOUNT),-v /go/src/github.com/docker/docker/bundles) -v $(CURDIR)/.git:/go/src/github.com/docker/docker/.git
# enable .go-pkg-cache if DOCKER_INCREMENTAL_BINARY and DOCKER_MOUNT (i.e.DOCKER_HOST) are set
PKGCACHE_DIR := $(if $(PKGCACHE_DIR),$(PKGCACHE_DIR),.go-pkg-cache)
PKGCACHE_MAP := gopath:/go/pkg goroot-linux_amd64_netgo:/usr/local/go/pkg/linux_amd64_netgo
DOCKER_MOUNT := $(if $(DOCKER_INCREMENTAL_BINARY),$(DOCKER_MOUNT) $(shell echo $(PKGCACHE_MAP) | sed -E 's@([^ ]*)@-v "$(CURDIR)/$(PKGCACHE_DIR)/\1"@g'),$(DOCKER_MOUNT))
# This allows to set the docker-dev container name
DOCKER_CONTAINER_NAME := $(if $(CONTAINER_NAME),--name $(CONTAINER_NAME),)
# enable package cache if DOCKER_INCREMENTAL_BINARY and DOCKER_MOUNT (i.e.DOCKER_HOST) are set
PKGCACHE_MAP := gopath:/go/pkg goroot-linux_amd64:/usr/local/go/pkg/linux_amd64 goroot-linux_amd64_netgo:/usr/local/go/pkg/linux_amd64_netgo
PKGCACHE_VOLROOT := dockerdev-go-pkg-cache
PKGCACHE_VOL := $(if $(PKGCACHE_DIR),$(CURDIR)/$(PKGCACHE_DIR)/,$(PKGCACHE_VOLROOT)-)
DOCKER_MOUNT_PKGCACHE := $(if $(DOCKER_INCREMENTAL_BINARY),$(shell echo $(PKGCACHE_MAP) | sed -E 's@([^ ]*)@-v "$(PKGCACHE_VOL)\1"@g'),)
DOCKER_MOUNT := $(DOCKER_MOUNT) $(DOCKER_MOUNT_PKGCACHE)
GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD 2>/dev/null)
GIT_BRANCH_CLEAN := $(shell echo $(GIT_BRANCH) | sed -e "s/[^[:alnum:]]/-/g")
DOCKER_IMAGE := docker-dev$(if $(GIT_BRANCH_CLEAN),:$(GIT_BRANCH_CLEAN))
DOCKER_PORT_FORWARD := $(if $(DOCKER_PORT),-p "$(DOCKER_PORT)",)
DOCKER_FLAGS := docker run --rm -i --privileged $(DOCKER_ENVS) $(DOCKER_MOUNT) $(DOCKER_PORT_FORWARD)
DOCKER_FLAGS := docker run --rm -i --privileged $(DOCKER_CONTAINER_NAME) $(DOCKER_ENVS) $(DOCKER_MOUNT) $(DOCKER_PORT_FORWARD)
BUILD_APT_MIRROR := $(if $(DOCKER_BUILD_APT_MIRROR),--build-arg APT_MIRROR=$(DOCKER_BUILD_APT_MIRROR))
export BUILD_APT_MIRROR
SWAGGER_DOCS_PORT ?= 9000
INTEGRATION_CLI_MASTER_IMAGE := $(if $(INTEGRATION_CLI_MASTER_IMAGE), $(INTEGRATION_CLI_MASTER_IMAGE), integration-cli-master)
INTEGRATION_CLI_WORKER_IMAGE := $(if $(INTEGRATION_CLI_WORKER_IMAGE), $(INTEGRATION_CLI_WORKER_IMAGE), integration-cli-worker)
# if this session isn't interactive, then we don't want to allocate a
# TTY, which would fail, but if it is interactive, we do want to attach
# so that the user can send e.g. ^C through.
@@ -86,6 +103,13 @@ build: bundles init-go-pkg-cache
bundles:
mkdir bundles
clean: clean-pkg-cache-vol ## clean up cached resources
clean-pkg-cache-vol:
@- $(foreach mapping,$(PKGCACHE_MAP), \
$(shell docker volume rm $(PKGCACHE_VOLROOT)-$(shell echo $(mapping) | awk -F':/' '{ print $$1 }') > /dev/null 2>&1) \
)
cross: build ## cross build the binaries for darwin, freebsd and\nwindows
$(DOCKER_RUN_DOCKER) hack/make.sh dynbinary binary cross
@@ -97,13 +121,13 @@ help: ## this help
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {sub("\\\\n",sprintf("\n%22c"," "), $$2);printf "\033[36m%-20s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
init-go-pkg-cache:
mkdir -p $(shell echo $(PKGCACHE_MAP) | sed -E 's@([^: ]*):[^ ]*@$(PKGCACHE_DIR)/\1@g')
$(if $(PKGCACHE_DIR), mkdir -p $(shell echo $(PKGCACHE_MAP) | sed -E 's@([^: ]*):[^ ]*@$(PKGCACHE_DIR)/\1@g'))
install: ## install the linux binaries
KEEPBUNDLE=1 hack/make.sh install-binary
manpages: ## Generate man pages from go source and markdown
docker build -t docker-manpage-dev -f "man/$(DOCKERFILE)" ./man
docker build ${DOCKER_BUILD_ARGS} -t docker-manpage-dev -f "man/$(DOCKERFILE)" ./man
docker run --rm \
-v $(PWD):/go/src/github.com/docker/docker/ \
docker-manpage-dev
@@ -117,6 +141,9 @@ run: build ## run the docker daemon in a container
shell: build ## start a shell inside the build env
$(DOCKER_RUN_DOCKER) bash
yaml-docs-gen: build ## generate documentation YAML files consumed by docs repo
$(DOCKER_RUN_DOCKER) sh -c 'hack/make.sh yaml-docs-generator && ( root=$$(pwd); cd bundles/latest/yaml-docs-generator; mkdir docs; ./yaml-docs-generator --root $${root} --target $$(pwd)/docs )'
test: build ## run the unit, integration and docker-py tests
$(DOCKER_RUN_DOCKER) hack/make.sh dynbinary cross test-unit test-integration-cli test-docker-py
@@ -144,4 +171,28 @@ swagger-gen:
-w /go/src/github.com/docker/docker \
--entrypoint hack/generate-swagger-api.sh \
-e GOPATH=/go \
quay.io/goswagger/swagger
quay.io/goswagger/swagger:0.7.4
.PHONY: swagger-docs
swagger-docs: ## preview the API documentation
@echo "API docs preview will be running at http://localhost:$(SWAGGER_DOCS_PORT)"
@docker run --rm -v $(PWD)/api/swagger.yaml:/usr/share/nginx/html/swagger.yaml \
-e 'REDOC_OPTIONS=hide-hostname="true" lazy-rendering' \
-p $(SWAGGER_DOCS_PORT):80 \
bfirsh/redoc:1.6.2
build-integration-cli-on-swarm: build ## build images and binary for running integration-cli on Swarm in parallel
@echo "Building hack/integration-cli-on-swarm"
go build -o ./hack/integration-cli-on-swarm/integration-cli-on-swarm ./hack/integration-cli-on-swarm/host
@echo "Building $(INTEGRATION_CLI_MASTER_IMAGE)"
docker build -t $(INTEGRATION_CLI_MASTER_IMAGE) hack/integration-cli-on-swarm/agent
# For worker, we don't use `docker build` so as to enable DOCKER_INCREMENTAL_BINARY and so on
@echo "Building $(INTEGRATION_CLI_WORKER_IMAGE) from $(DOCKER_IMAGE)"
$(eval tmp := integration-cli-worker-tmp)
# We mount pkgcache, but not bundle (bundle needs to be baked into the image)
# For avoiding bakings DOCKER_GRAPHDRIVER and so on to image, we cannot use $(DOCKER_ENVS) here
docker run -t -d --name $(tmp) -e DOCKER_GITCOMMIT -e BUILDFLAGS -e DOCKER_INCREMENTAL_BINARY --privileged $(DOCKER_MOUNT_PKGCACHE) $(DOCKER_IMAGE) top
docker exec $(tmp) hack/make.sh build-integration-test-binary dynbinary
docker exec $(tmp) go build -o /worker github.com/docker/docker/hack/integration-cli-on-swarm/agent/worker
docker commit -c 'ENTRYPOINT ["/worker"]' $(tmp) $(INTEGRATION_CLI_WORKER_IMAGE)
docker rm -f $(tmp)

2
NOTICE
View File

@@ -1,5 +1,5 @@
Docker
Copyright 2012-2016 Docker, Inc.
Copyright 2012-2017 Docker, Inc.
This product includes software developed at Docker, Inc. (https://www.docker.com).

View File

@@ -112,7 +112,7 @@ This is usually difficult for several reasons:
of them handle it differently.
Docker solves the problem of dependency hell by giving the developer a simple
Docker solves the problem of dependency hell by giving developers a simple
way to express *all* their application's dependencies in one place, while
streamlining the process of assembling them. If this makes you think of
[XKCD 927](https://xkcd.com/927/), don't worry. Docker doesn't
@@ -252,7 +252,7 @@ We are always open to suggestions on process improvements, and are always lookin
<tr>
<td>Stack Overflow</td>
<td>
Stack Overflow has over 7000 Docker questions listed. We regularly
Stack Overflow has thousands of Docker questions listed. We regularly
monitor <a href="https://stackoverflow.com/search?tab=newest&q=docker" target="_blank">Docker questions</a>
and so do many other knowledgeable Docker users.
</td>

View File

@@ -85,7 +85,7 @@ their container to communicate, the next step is for a given Engine to gain abil
to another node in the cluster. This will be introduced in a backward compatible way, such that a
`docker run` invocation on a particular node remains fully deterministic.
# 2 Frozen features
# 2. Frozen features
## 2.1 Docker exec

View File

@@ -26,13 +26,14 @@ dependency on a package of a specific version or greater up to the next major
release, without encountering breaking changes.
## Semantic Versioning
Annotated version tags should follow Schema Versioning policies.
According to http://semver.org:
Annotated version tags should follow [Semantic Versioning](http://semver.org) policies:
"Given a version number MAJOR.MINOR.PATCH, increment the:
MAJOR version when you make incompatible API changes,
MINOR version when you add functionality in a backwards-compatible manner, and
PATCH version when you make backwards-compatible bug fixes.
1. MAJOR version when you make incompatible API changes,
2. MINOR version when you add functionality in a backwards-compatible manner, and
3. PATCH version when you make backwards-compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions
to the MAJOR.MINOR.PATCH format."

View File

@@ -1 +1 @@
1.13.0-dev
17.05.0-ce

View File

@@ -1,5 +1,42 @@
This directory contains code pertaining to the Docker API:
# Working on the Engine API
- Used by the docker client when communicating with the docker daemon
The Engine API is an HTTP API used by the command-line client to communicate with the daemon. It can also be used by third-party software to control the daemon.
- Used by third party tools wishing to interface with the docker daemon
It consists of various components in this repository:
- `api/swagger.yaml` A Swagger definition of the API.
- `api/types/` Types shared by both the client and server, representing various objects, options, responses, etc. Most are written manually, but some are automatically generated from the Swagger definition. See [#27919](https://github.com/docker/docker/issues/27919) for progress on this.
- `cli/` The command-line client.
- `client/` The Go client used by the command-line client. It can also be used by third-party Go programs.
- `daemon/` The daemon, which serves the API.
## Swagger definition
The API is defined by the [Swagger](http://swagger.io/specification/) definition in `api/swagger.yaml`. This definition can be used to:
1. To automatically generate documentation.
2. To automatically generate the Go server and client. (A work-in-progress.)
3. Provide a machine readable version of the API for introspecting what it can do, automatically generating clients for other languages, etc.
## Updating the API documentation
The API documentation is generated entirely from `api/swagger.yaml`. If you make updates to the API, you'll need to edit this file to represent the change in the documentation.
The file is split into two main sections:
- `definitions`, which defines re-usable objects used in requests and responses
- `paths`, which defines the API endpoints (and some inline objects which don't need to be reusable)
To make an edit, first look for the endpoint you want to edit under `paths`, then make the required edits. Endpoints may reference reusable objects with `$ref`, which can be found in the `definitions` section.
There is hopefully enough example material in the file for you to copy a similar pattern from elsewhere in the file (e.g. adding new fields or endpoints), but for the full reference, see the [Swagger specification](https://github.com/docker/docker/issues/27919)
`swagger.yaml` is validated by `hack/validate/swagger` to ensure it is a valid Swagger definition. This is useful for when you are making edits to ensure you are doing the right thing.
## Viewing the API documentation
When you make edits to `swagger.yaml`, you may want to check the generated API documentation to ensure it renders correctly.
Run `make swagger-docs` and a preview will be running at `http://localhost`. Some of the styling may be incorrect, but you'll be able to ensure that it is generating the correct documentation.
The production documentation is generated by vendoring `swagger.yaml` into [docker/docker.github.io](https://github.com/docker/docker.github.io).

View File

@@ -21,7 +21,7 @@ import (
// Common constants for daemon and client.
const (
// DefaultVersion of Current REST API
DefaultVersion string = "1.25"
DefaultVersion string = "1.29"
// NoBaseImageSpecifier is the symbol used by the FROM
// command to specify that no base image is to be used.

View File

@@ -286,7 +286,7 @@ func TestLoadOrCreateTrustKeyInvalidKeyFile(t *testing.T) {
}
if _, err := LoadOrCreateTrustKey(tmpKeyFile.Name()); err == nil {
t.Fatalf("expected an error, got nothing.")
t.Fatal("expected an error, got nothing.")
}
}

View File

@@ -3,6 +3,6 @@ package api
// MinVersion represents Minimum REST API version supported
// Technically the first daemon API version released on Windows is v1.25 in
// engine version 1.13. However, some clients are explicitly using downlevel
// APIs (eg docker-compose v2.1 file format) and that is just too restrictive.
// APIs (e.g. docker-compose v2.1 file format) and that is just too restrictive.
// Hence also allowing 1.24 on Windows.
const MinVersion string = "1.24"

View File

@@ -16,7 +16,7 @@ func (e apiError) HTTPErrorStatusCode() int {
// NewErrorWithStatusCode allows you to associate
// a specific HTTP Status Code to an error.
// The Server will take that code and set
// The server will take that code and set
// it as the response status.
func NewErrorWithStatusCode(err error, code int) error {
return apiError{err, code}

View File

@@ -1,4 +1,4 @@
package utils
package api
import "regexp"
@@ -6,7 +6,4 @@ import "regexp"
const RestrictedNameChars = `[a-zA-Z0-9][a-zA-Z0-9_.-]`
// RestrictedNamePattern is a regular expression to validate names against the collection of restricted characters.
var RestrictedNamePattern = regexp.MustCompile(`^/?` + RestrictedNameChars + `+$`)
// RestrictedVolumeNamePattern is a regular expression to validate volume names against the collection of restricted characters.
var RestrictedVolumeNamePattern = regexp.MustCompile(`^` + RestrictedNameChars + `+$`)
var RestrictedNamePattern = regexp.MustCompile(`^` + RestrictedNameChars + `+$`)

View File

@@ -28,7 +28,7 @@ type inputValidationError interface {
IsValidationError() bool
}
// GetHTTPErrorStatusCode retrieve status code from error message
// GetHTTPErrorStatusCode retrieves status code from error message.
func GetHTTPErrorStatusCode(err error) int {
if err == nil {
logrus.WithFields(logrus.Fields{"error": err}).Error("unexpected HTTP error handling")
@@ -49,20 +49,26 @@ func GetHTTPErrorStatusCode(err error) int {
// If we need to differentiate between different possible error types,
// we should create appropriate error types that implement the httpStatusError interface.
errStr := strings.ToLower(errMsg)
for keyword, status := range map[string]int{
"not found": http.StatusNotFound,
"no such": http.StatusNotFound,
"bad parameter": http.StatusBadRequest,
"no command": http.StatusBadRequest,
"conflict": http.StatusConflict,
"impossible": http.StatusNotAcceptable,
"wrong login/password": http.StatusUnauthorized,
"unauthorized": http.StatusUnauthorized,
"hasn't been activated": http.StatusForbidden,
"this node": http.StatusNotAcceptable,
for _, status := range []struct {
keyword string
code int
}{
{"not found", http.StatusNotFound},
{"cannot find", http.StatusNotFound},
{"no such", http.StatusNotFound},
{"bad parameter", http.StatusBadRequest},
{"no command", http.StatusBadRequest},
{"conflict", http.StatusConflict},
{"impossible", http.StatusNotAcceptable},
{"wrong login/password", http.StatusUnauthorized},
{"unauthorized", http.StatusUnauthorized},
{"hasn't been activated", http.StatusForbidden},
{"this node", http.StatusServiceUnavailable},
{"needs to be unlocked", http.StatusServiceUnavailable},
{"certificates have expired", http.StatusServiceUnavailable},
} {
if strings.Contains(errStr, keyword) {
statusCode = status
if strings.Contains(errStr, status.keyword) {
statusCode = status.code
break
}
}

View File

@@ -1,7 +1,7 @@
package httputils
import (
"fmt"
"errors"
"net/http"
"path/filepath"
"strconv"
@@ -15,7 +15,7 @@ func BoolValue(r *http.Request, k string) bool {
}
// BoolValueOrDefault returns the default bool passed if the query param is
// missing, otherwise it's just a proxy to boolValue above
// missing, otherwise it's just a proxy to boolValue above.
func BoolValueOrDefault(r *http.Request, k string, d bool) bool {
if _, ok := r.Form[k]; !ok {
return d
@@ -38,10 +38,7 @@ func Int64ValueOrZero(r *http.Request, k string) int64 {
func Int64ValueOrDefault(r *http.Request, field string, def int64) (int64, error) {
if r.Form.Get(field) != "" {
value, err := strconv.ParseInt(r.Form.Get(field), 10, 64)
if err != nil {
return value, err
}
return value, nil
return value, err
}
return def, nil
}
@@ -64,9 +61,9 @@ func ArchiveFormValues(r *http.Request, vars map[string]string) (ArchiveOptions,
switch {
case name == "":
return ArchiveOptions{}, fmt.Errorf("bad parameter: 'name' cannot be empty")
return ArchiveOptions{}, errors.New("bad parameter: 'name' cannot be empty")
case path == "":
return ArchiveOptions{}, fmt.Errorf("bad parameter: 'path' cannot be empty")
return ArchiveOptions{}, errors.New("bad parameter: 'path' cannot be empty")
}
return ArchiveOptions{name, path}, nil

View File

@@ -100,6 +100,6 @@ func TestInt64ValueOrDefaultWithError(t *testing.T) {
_, err := Int64ValueOrDefault(r, "test", -1)
if err == nil {
t.Fatalf("Expected an error.")
t.Fatal("Expected an error.")
}
}

View File

@@ -14,9 +14,6 @@ import (
// APIVersionKey is the client's requested API version.
const APIVersionKey = "api-version"
// UAStringKey is used as key type for user-agent string in net/context struct
const UAStringKey = "upstream-user-agent"
// APIFunc is an adapter to allow the use of ordinary functions as Docker API endpoints.
// Any function that has the appropriate signature can be registered as an API endpoint (e.g. getVersion).
type APIFunc func(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error
@@ -78,13 +75,14 @@ func ParseForm(r *http.Request) error {
// VersionFromContext returns an API version from the context using APIVersionKey.
// It panics if the context value does not have version.Version type.
func VersionFromContext(ctx context.Context) (ver string) {
func VersionFromContext(ctx context.Context) string {
if ctx == nil {
return
return ""
}
val := ctx.Value(APIVersionKey)
if val == nil {
return
if val := ctx.Value(APIVersionKey); val != nil {
return val.(string)
}
return val.(string)
return ""
}

View File

@@ -0,0 +1,92 @@
package httputils
import (
"fmt"
"io"
"sort"
"strings"
"golang.org/x/net/context"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/backend"
"github.com/docker/docker/pkg/ioutils"
"github.com/docker/docker/pkg/jsonlog"
"github.com/docker/docker/pkg/stdcopy"
)
// WriteLogStream writes an encoded byte stream of log messages from the
// messages channel, multiplexing them with a stdcopy.Writer if mux is true
func WriteLogStream(ctx context.Context, w io.Writer, msgs <-chan *backend.LogMessage, config *types.ContainerLogsOptions, mux bool) {
wf := ioutils.NewWriteFlusher(w)
defer wf.Close()
wf.Flush()
// this might seem like doing below is clear:
// var outStream io.Writer = wf
// however, this GREATLY DISPLEASES golint, and if you do that, it will
// fail CI. we need outstream to be type writer because if we mux streams,
// we will need to reassign all of the streams to be stdwriters, which only
// conforms to the io.Writer interface.
var outStream io.Writer
outStream = wf
errStream := outStream
sysErrStream := errStream
if mux {
sysErrStream = stdcopy.NewStdWriter(outStream, stdcopy.Systemerr)
errStream = stdcopy.NewStdWriter(outStream, stdcopy.Stderr)
outStream = stdcopy.NewStdWriter(outStream, stdcopy.Stdout)
}
for {
msg, ok := <-msgs
if !ok {
return
}
// check if the message contains an error. if so, write that error
// and exit
if msg.Err != nil {
fmt.Fprintf(sysErrStream, "Error grabbing logs: %v\n", msg.Err)
continue
}
logLine := msg.Line
if config.Details {
logLine = append([]byte(stringAttrs(msg.Attrs)+" "), logLine...)
}
if config.Timestamps {
// TODO(dperny) the format is defined in
// daemon/logger/logger.go as logger.TimeFormat. importing
// logger is verboten (not part of backend) so idk if just
// importing the same thing from jsonlog is good enough
logLine = append([]byte(msg.Timestamp.Format(jsonlog.RFC3339NanoFixed)+" "), logLine...)
}
if msg.Source == "stdout" && config.ShowStdout {
outStream.Write(logLine)
}
if msg.Source == "stderr" && config.ShowStderr {
errStream.Write(logLine)
}
}
}
type byKey []string
func (s byKey) Len() int { return len(s) }
func (s byKey) Less(i, j int) bool {
keyI := strings.Split(s[i], "=")
keyJ := strings.Split(s[j], "=")
return keyI[0] < keyJ[0]
}
func (s byKey) Swap(i, j int) {
s[i], s[j] = s[j], s[i]
}
func stringAttrs(a backend.LogAttributes) string {
var ss byKey
for k, v := range a {
ss = append(ss, k+"="+v)
}
sort.Sort(ss)
return strings.Join(ss, ",")
}

View File

@@ -43,6 +43,7 @@ func (v VersionMiddleware) WrapHandler(handler func(ctx context.Context, w http.
header := fmt.Sprintf("Docker/%s (%s)", v.serverVersion, runtime.GOOS)
w.Header().Set("Server", header)
w.Header().Set("API-Version", v.defaultVersion)
w.Header().Set("OSType", runtime.GOOS)
ctx = context.WithValue(ctx, "api-version", apiVersion)
return handler(ctx, w, r, vars)
}

View File

@@ -13,7 +13,7 @@ import (
func TestVersionMiddleware(t *testing.T) {
handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if httputils.VersionFromContext(ctx) == "" {
t.Fatalf("Expected version, got empty string")
t.Fatal("Expected version, got empty string")
}
return nil
}
@@ -34,7 +34,7 @@ func TestVersionMiddleware(t *testing.T) {
func TestVersionMiddlewareWithErrors(t *testing.T) {
handler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if httputils.VersionFromContext(ctx) == "" {
t.Fatalf("Expected version, got empty string")
t.Fatal("Expected version, got empty string")
}
return nil
}

View File

@@ -19,23 +19,28 @@ func profilerSetup(mainRouter *mux.Router) {
r.HandleFunc("/pprof/profile", pprof.Profile)
r.HandleFunc("/pprof/symbol", pprof.Symbol)
r.HandleFunc("/pprof/trace", pprof.Trace)
r.HandleFunc("/pprof/block", pprof.Handler("block").ServeHTTP)
r.HandleFunc("/pprof/heap", pprof.Handler("heap").ServeHTTP)
r.HandleFunc("/pprof/goroutine", pprof.Handler("goroutine").ServeHTTP)
r.HandleFunc("/pprof/threadcreate", pprof.Handler("threadcreate").ServeHTTP)
r.HandleFunc("/pprof/{name}", handlePprof)
}
func handlePprof(w http.ResponseWriter, r *http.Request) {
var name string
if vars := mux.Vars(r); vars != nil {
name = vars["name"]
}
pprof.Handler(name).ServeHTTP(w, r)
}
// Replicated from expvar.go as not public.
func expVars(w http.ResponseWriter, r *http.Request) {
first := true
w.Header().Set("Content-Type", "application/json; charset=utf-8")
fmt.Fprintf(w, "{\n")
fmt.Fprintln(w, "{")
expvar.Do(func(kv expvar.KeyValue) {
if !first {
fmt.Fprintf(w, ",\n")
fmt.Fprintln(w, ",")
}
first = false
fmt.Fprintf(w, "%q: %s", kv.Key, kv.Value)
})
fmt.Fprintf(w, "\n}\n")
fmt.Fprintln(w, "\n}")
}

View File

@@ -10,7 +10,7 @@ import (
// Backend abstracts an image builder whose only purpose is to build an image referenced by an imageID.
type Backend interface {
// Build builds a Docker image referenced by an imageID string.
// BuildFromContext builds a Docker image referenced by an imageID string.
//
// Note: Tagging an image should not be done by a Builder, it should instead be done
// by the caller.

View File

@@ -53,8 +53,10 @@ func newImageBuildOptions(ctx context.Context, r *http.Request) (*types.ImageBui
options.CgroupParent = r.FormValue("cgroupparent")
options.NetworkMode = r.FormValue("networkmode")
options.Tags = r.Form["t"]
options.ExtraHosts = r.Form["extrahosts"]
options.SecurityOpt = r.Form["securityopt"]
options.Squash = httputils.BoolValue(r, "squash")
options.Target = r.FormValue("target")
if r.Form.Get("shmsize") != "" {
shmSize, err := strconv.ParseInt(r.Form.Get("shmsize"), 10, 64)
@@ -84,14 +86,28 @@ func newImageBuildOptions(ctx context.Context, r *http.Request) (*types.ImageBui
options.Ulimits = buildUlimits
}
var buildArgs = map[string]string{}
var buildArgs = map[string]*string{}
buildArgsJSON := r.FormValue("buildargs")
// Note that there are two ways a --build-arg might appear in the
// json of the query param:
// "foo":"bar"
// and "foo":nil
// The first is the normal case, ie. --build-arg foo=bar
// or --build-arg foo
// where foo's value was picked up from an env var.
// The second ("foo":nil) is where they put --build-arg foo
// but "foo" isn't set as an env var. In that case we can't just drop
// the fact they mentioned it, we need to pass that along to the builder
// so that it can print a warning about "foo" being unused if there is
// no "ARG foo" in the Dockerfile.
if buildArgsJSON != "" {
if err := json.Unmarshal([]byte(buildArgsJSON), &buildArgs); err != nil {
return nil, err
}
options.BuildArgs = buildArgs
}
var labels = map[string]string{}
labelsJSON := r.FormValue("labels")
if labelsJSON != "" {

View File

@@ -29,8 +29,8 @@ func (r *checkpointRouter) Routes() []router.Route {
func (r *checkpointRouter) initRoutes() {
r.routes = []router.Route{
router.NewGetRoute("/containers/{name:.*}/checkpoints", r.getContainerCheckpoints),
router.NewPostRoute("/containers/{name:.*}/checkpoints", r.postContainerCheckpoint),
router.NewDeleteRoute("/containers/{name}/checkpoints/{checkpoint}", r.deleteContainerCheckpoint),
router.Experimental(router.NewGetRoute("/containers/{name:.*}/checkpoints", r.getContainerCheckpoints)),
router.Experimental(router.NewPostRoute("/containers/{name:.*}/checkpoints", r.postContainerCheckpoint)),
router.Experimental(router.NewDeleteRoute("/containers/{name}/checkpoints/{checkpoint}", r.deleteContainerCheckpoint)),
}
}

View File

@@ -9,6 +9,7 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/backend"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/pkg/archive"
)
@@ -32,17 +33,17 @@ type copyBackend interface {
// stateBackend includes functions to implement to provide container state lifecycle functionality.
type stateBackend interface {
ContainerCreate(config types.ContainerCreateConfig, validateHostname bool) (container.ContainerCreateCreatedBody, error)
ContainerCreate(config types.ContainerCreateConfig) (container.ContainerCreateCreatedBody, error)
ContainerKill(name string, sig uint64) error
ContainerPause(name string) error
ContainerRename(oldName, newName string) error
ContainerResize(name string, height, width int) error
ContainerRestart(name string, seconds *int) error
ContainerRm(name string, config *types.ContainerRmConfig) error
ContainerStart(name string, hostConfig *container.HostConfig, validateHostname bool, checkpoint string, checkpointDir string) error
ContainerStart(name string, hostConfig *container.HostConfig, checkpoint string, checkpointDir string) error
ContainerStop(name string, seconds *int) error
ContainerUnpause(name string) error
ContainerUpdate(name string, hostConfig *container.HostConfig, validateHostname bool) (container.ContainerUpdateOKBody, error)
ContainerUpdate(name string, hostConfig *container.HostConfig) (container.ContainerUpdateOKBody, error)
ContainerWait(name string, timeout time.Duration) (int, error)
}
@@ -50,9 +51,9 @@ type stateBackend interface {
type monitorBackend interface {
ContainerChanges(name string) ([]archive.Change, error)
ContainerInspect(name string, size bool, version string) (interface{}, error)
ContainerLogs(ctx context.Context, name string, config *backend.ContainerLogsConfig, started chan struct{}) error
ContainerLogs(ctx context.Context, name string, config *types.ContainerLogsOptions) (<-chan *backend.LogMessage, error)
ContainerStats(ctx context.Context, name string, config *backend.ContainerStatsConfig) error
ContainerTop(name string, psArgs string) (*types.ContainerProcessList, error)
ContainerTop(name string, psArgs string) (*container.ContainerTopOKBody, error)
Containers(config *types.ContainerListOptions) ([]*types.Container, error)
}
@@ -64,7 +65,7 @@ type attachBackend interface {
// systemBackend includes functions to implement to provide system wide containers functionality
type systemBackend interface {
ContainersPrune(config *types.ContainersPruneConfig) (*types.ContainersPruneReport, error)
ContainersPrune(pruneFilters filters.Args) (*types.ContainersPruneReport, error)
}
// Backend is all the methods that need to be implemented to provide container specific functionality.

View File

@@ -10,6 +10,7 @@ import (
"time"
"github.com/Sirupsen/logrus"
"github.com/docker/docker/api"
"github.com/docker/docker/api/server/httputils"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/backend"
@@ -90,32 +91,38 @@ func (s *containerRouter) getContainersLogs(ctx context.Context, w http.Response
}
containerName := vars["name"]
logsConfig := &backend.ContainerLogsConfig{
ContainerLogsOptions: types.ContainerLogsOptions{
Follow: httputils.BoolValue(r, "follow"),
Timestamps: httputils.BoolValue(r, "timestamps"),
Since: r.Form.Get("since"),
Tail: r.Form.Get("tail"),
ShowStdout: stdout,
ShowStderr: stderr,
Details: httputils.BoolValue(r, "details"),
},
OutStream: w,
logsConfig := &types.ContainerLogsOptions{
Follow: httputils.BoolValue(r, "follow"),
Timestamps: httputils.BoolValue(r, "timestamps"),
Since: r.Form.Get("since"),
Tail: r.Form.Get("tail"),
ShowStdout: stdout,
ShowStderr: stderr,
Details: httputils.BoolValue(r, "details"),
}
chStarted := make(chan struct{})
if err := s.backend.ContainerLogs(ctx, containerName, logsConfig, chStarted); err != nil {
select {
case <-chStarted:
// The client may be expecting all of the data we're sending to
// be multiplexed, so send it through OutStream, which will
// have been set up to handle that if needed.
fmt.Fprintf(logsConfig.OutStream, "Error running logs job: %v\n", err)
default:
return err
}
// doesn't matter what version the client is on, we're using this internally only
// also do we need size? i'm thinkin no we don't
raw, err := s.backend.ContainerInspect(containerName, false, api.DefaultVersion)
if err != nil {
return err
}
container, ok := raw.(*types.ContainerJSON)
if !ok {
// %T prints the type. handy!
return fmt.Errorf("expected container to be *types.ContainerJSON but got %T", raw)
}
msgs, err := s.backend.ContainerLogs(ctx, containerName, logsConfig)
if err != nil {
return err
}
// if has a tty, we're not muxing streams. if it doesn't, we are. simple.
// this is the point of no return for writing a response. once we call
// WriteLogStream, the response has been started and errors will be
// returned in band by WriteLogStream
httputils.WriteLogStream(ctx, w, msgs, logsConfig, !container.Config.Tty)
return nil
}
@@ -156,8 +163,7 @@ func (s *containerRouter) postContainersStart(ctx context.Context, w http.Respon
checkpoint := r.Form.Get("checkpoint")
checkpointDir := r.Form.Get("checkpoint-dir")
validateHostname := versions.GreaterThanOrEqualTo(version, "1.24")
if err := s.backend.ContainerStart(vars["name"], hostConfig, validateHostname, checkpoint, checkpointDir); err != nil {
if err := s.backend.ContainerStart(vars["name"], hostConfig, checkpoint, checkpointDir); err != nil {
return err
}
@@ -332,7 +338,6 @@ func (s *containerRouter) postContainerUpdate(ctx context.Context, w http.Respon
return err
}
version := httputils.VersionFromContext(ctx)
var updateConfig container.UpdateConfig
decoder := json.NewDecoder(r.Body)
@@ -346,8 +351,7 @@ func (s *containerRouter) postContainerUpdate(ctx context.Context, w http.Respon
}
name := vars["name"]
validateHostname := versions.GreaterThanOrEqualTo(version, "1.24")
resp, err := s.backend.ContainerUpdate(name, hostConfig, validateHostname)
resp, err := s.backend.ContainerUpdate(name, hostConfig)
if err != nil {
return err
}
@@ -372,14 +376,18 @@ func (s *containerRouter) postContainersCreate(ctx context.Context, w http.Respo
version := httputils.VersionFromContext(ctx)
adjustCPUShares := versions.LessThan(version, "1.19")
validateHostname := versions.GreaterThanOrEqualTo(version, "1.24")
// When using API 1.24 and under, the client is responsible for removing the container
if hostConfig != nil && versions.LessThan(version, "1.25") {
hostConfig.AutoRemove = false
}
ccr, err := s.backend.ContainerCreate(types.ContainerCreateConfig{
Name: name,
Config: config,
HostConfig: hostConfig,
NetworkingConfig: networkingConfig,
AdjustCPUShares: adjustCPUShares,
}, validateHostname)
})
if err != nil {
return err
}
@@ -501,6 +509,8 @@ func (s *containerRouter) wsContainersAttach(ctx context.Context, w http.Respons
done := make(chan struct{})
started := make(chan struct{})
version := httputils.VersionFromContext(ctx)
setupStreams := func() (io.ReadCloser, io.Writer, io.Writer, error) {
wsChan := make(chan *websocket.Conn)
h := func(conn *websocket.Conn) {
@@ -515,6 +525,11 @@ func (s *containerRouter) wsContainersAttach(ctx context.Context, w http.Respons
}()
conn := <-wsChan
// In case version 1.28 and above, a binary frame will be sent.
// See 28176 for details.
if versions.GreaterThanOrEqualTo(version, "1.28") {
conn.PayloadType = websocket.BinaryFrame
}
return conn, conn, conn, nil
}
@@ -545,16 +560,12 @@ func (s *containerRouter) postContainersPrune(ctx context.Context, w http.Respon
return err
}
if err := httputils.CheckForJSON(r); err != nil {
pruneFilters, err := filters.FromParam(r.Form.Get("filters"))
if err != nil {
return err
}
var cfg types.ContainersPruneConfig
if err := json.NewDecoder(r.Body).Decode(&cfg); err != nil {
return err
}
pruneReport, err := s.backend.ContainersPrune(&cfg)
pruneReport, err := s.backend.ContainersPrune(pruneFilters)
if err != nil {
return err
}

View File

@@ -50,11 +50,8 @@ func (s *containerRouter) postContainersCopy(ctx context.Context, w http.Respons
defer data.Close()
w.Header().Set("Content-Type", "application/x-tar")
if _, err := io.Copy(w, data); err != nil {
return err
}
return nil
_, err = io.Copy(w, data)
return err
}
// // Encode the stat to JSON, base64 encode, and place in a header.

View File

@@ -92,11 +92,17 @@ func (s *containerRouter) postContainerExecStart(ctx context.Context, w http.Res
defer httputils.CloseStreams(inStream, outStream)
if _, ok := r.Header["Upgrade"]; ok {
fmt.Fprintf(outStream, "HTTP/1.1 101 UPGRADED\r\nContent-Type: application/vnd.docker.raw-stream\r\nConnection: Upgrade\r\nUpgrade: tcp\r\n\r\n")
fmt.Fprint(outStream, "HTTP/1.1 101 UPGRADED\r\nContent-Type: application/vnd.docker.raw-stream\r\nConnection: Upgrade\r\nUpgrade: tcp\r\n")
} else {
fmt.Fprintf(outStream, "HTTP/1.1 200 OK\r\nContent-Type: application/vnd.docker.raw-stream\r\n\r\n")
fmt.Fprint(outStream, "HTTP/1.1 200 OK\r\nContent-Type: application/vnd.docker.raw-stream\r\n")
}
// copy headers that were removed as part of hijack
if err := w.Header().WriteSubset(outStream, nil); err != nil {
return err
}
fmt.Fprint(outStream, "\r\n")
stdin = inStream
stdout = outStream
if !execStartCheck.Tty {

View File

@@ -0,0 +1,67 @@
package router
import (
"errors"
"net/http"
"golang.org/x/net/context"
apierrors "github.com/docker/docker/api/errors"
"github.com/docker/docker/api/server/httputils"
)
var (
errExperimentalFeature = errors.New("This experimental feature is disabled by default. Start the Docker daemon with --experimental in order to enable it.")
)
// ExperimentalRoute defines an experimental API route that can be enabled or disabled.
type ExperimentalRoute interface {
Route
Enable()
Disable()
}
// experimentalRoute defines an experimental API route that can be enabled or disabled.
// It implements ExperimentalRoute
type experimentalRoute struct {
local Route
handler httputils.APIFunc
}
// Enable enables this experimental route
func (r *experimentalRoute) Enable() {
r.handler = r.local.Handler()
}
// Disable disables the experimental route
func (r *experimentalRoute) Disable() {
r.handler = experimentalHandler
}
func experimentalHandler(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
return apierrors.NewErrorWithStatusCode(errExperimentalFeature, http.StatusNotImplemented)
}
// Handler returns returns the APIFunc to let the server wrap it in middlewares.
func (r *experimentalRoute) Handler() httputils.APIFunc {
return r.handler
}
// Method returns the http method that the route responds to.
func (r *experimentalRoute) Method() string {
return r.local.Method()
}
// Path returns the subpath where the route responds to.
func (r *experimentalRoute) Path() string {
return r.local.Path()
}
// Experimental will mark a route as experimental.
func Experimental(r Route) Route {
return &experimentalRoute{
local: r,
handler: experimentalHandler,
}
}

View File

@@ -6,6 +6,7 @@ import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/backend"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/image"
"github.com/docker/docker/api/types/registry"
"golang.org/x/net/context"
)
@@ -24,12 +25,12 @@ type containerBackend interface {
}
type imageBackend interface {
ImageDelete(imageRef string, force, prune bool) ([]types.ImageDelete, error)
ImageHistory(imageName string) ([]*types.ImageHistory, error)
ImageDelete(imageRef string, force, prune bool) ([]types.ImageDeleteResponseItem, error)
ImageHistory(imageName string) ([]*image.HistoryResponseItem, error)
Images(imageFilters filters.Args, all bool, withExtraAttrs bool) ([]*types.ImageSummary, error)
LookupImage(name string) (*types.ImageInspect, error)
TagImage(imageName, repository, tag string) error
ImagesPrune(config *types.ImagesPruneConfig) (*types.ImagesPruneReport, error)
ImagesPrune(pruneFilters filters.Args) (*types.ImagesPruneReport, error)
}
type importExportBackend interface {

View File

@@ -253,9 +253,9 @@ func (s *imageRouter) getImagesJSON(ctx context.Context, w http.ResponseWriter,
return err
}
version := httputils.VersionFromContext(ctx)
filterParam := r.Form.Get("filter")
if versions.LessThan(version, "1.28") && filterParam != "" {
// FIXME(vdemeester) This has been deprecated in 1.13, and is target for removal for v17.12
if filterParam != "" {
imageFilters.Add("reference", filterParam)
}
@@ -331,16 +331,12 @@ func (s *imageRouter) postImagesPrune(ctx context.Context, w http.ResponseWriter
return err
}
if err := httputils.CheckForJSON(r); err != nil {
pruneFilters, err := filters.FromParam(r.Form.Get("filters"))
if err != nil {
return err
}
var cfg types.ImagesPruneConfig
if err := json.NewDecoder(r.Body).Decode(&cfg); err != nil {
return err
}
pruneReport, err := s.backend.ImagesPrune(&cfg)
pruneReport, err := s.backend.ImagesPrune(pruneFilters)
if err != nil {
return err
}

View File

@@ -2,6 +2,7 @@ package network
import (
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/network"
"github.com/docker/libnetwork"
)
@@ -10,12 +11,10 @@ import (
// to provide network specific functionality.
type Backend interface {
FindNetwork(idName string) (libnetwork.Network, error)
GetNetworkByName(idName string) (libnetwork.Network, error)
GetNetworksByID(partialID string) []libnetwork.Network
GetNetworks() []libnetwork.Network
CreateNetwork(nc types.NetworkCreateRequest) (*types.NetworkCreateResponse, error)
ConnectContainerToNetwork(containerName, networkName string, endpointConfig *network.EndpointSettings) error
DisconnectContainerFromNetwork(containerName string, networkName string, force bool) error
DeleteNetwork(name string) error
NetworksPrune(config *types.NetworksPruneConfig) (*types.NetworksPruneReport, error)
NetworksPrune(pruneFilters filters.Args) (*types.NetworksPruneReport, error)
}

View File

@@ -8,18 +8,8 @@ import (
"github.com/docker/docker/runconfig"
)
var (
// AcceptedFilters is an acceptable filters for validation
AcceptedFilters = map[string]bool{
"driver": true,
"type": true,
"name": true,
"id": true,
"label": true,
}
)
func filterNetworkByType(nws []types.NetworkResource, netType string) (retNws []types.NetworkResource, err error) {
func filterNetworkByType(nws []types.NetworkResource, netType string) ([]types.NetworkResource, error) {
retNws := []types.NetworkResource{}
switch netType {
case "builtin":
for _, nw := range nws {
@@ -47,10 +37,6 @@ func filterNetworks(nws []types.NetworkResource, filter filters.Args) ([]types.N
return nws, nil
}
if err := filter.Validate(AcceptedFilters); err != nil {
return nil, err
}
displayNet := []types.NetworkResource{}
for _, nw := range nws {
if filter.Include("driver") {
@@ -73,11 +59,16 @@ func filterNetworks(nws []types.NetworkResource, filter filters.Args) ([]types.N
continue
}
}
if filter.Include("scope") {
if !filter.ExactMatch("scope", nw.Scope) {
continue
}
}
displayNet = append(displayNet, nw)
}
if filter.Include("type") {
var typeNet []types.NetworkResource
typeNet := []types.NetworkResource{}
errFilter := filter.WalkValues("type", func(fval string) error {
passList, err := filterNetworkByType(displayNet, fval)
if err != nil {

View File

@@ -0,0 +1,149 @@
// +build !windows
package network
import (
"strings"
"testing"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
)
func TestFilterNetworks(t *testing.T) {
networks := []types.NetworkResource{
{
Name: "host",
Driver: "host",
Scope: "local",
},
{
Name: "bridge",
Driver: "bridge",
Scope: "local",
},
{
Name: "none",
Driver: "null",
Scope: "local",
},
{
Name: "myoverlay",
Driver: "overlay",
Scope: "swarm",
},
{
Name: "mydrivernet",
Driver: "mydriver",
Scope: "local",
},
{
Name: "mykvnet",
Driver: "mykvdriver",
Scope: "global",
},
}
bridgeDriverFilters := filters.NewArgs()
bridgeDriverFilters.Add("driver", "bridge")
overlayDriverFilters := filters.NewArgs()
overlayDriverFilters.Add("driver", "overlay")
nonameDriverFilters := filters.NewArgs()
nonameDriverFilters.Add("driver", "noname")
customDriverFilters := filters.NewArgs()
customDriverFilters.Add("type", "custom")
builtinDriverFilters := filters.NewArgs()
builtinDriverFilters.Add("type", "builtin")
invalidDriverFilters := filters.NewArgs()
invalidDriverFilters.Add("type", "invalid")
localScopeFilters := filters.NewArgs()
localScopeFilters.Add("scope", "local")
swarmScopeFilters := filters.NewArgs()
swarmScopeFilters.Add("scope", "swarm")
globalScopeFilters := filters.NewArgs()
globalScopeFilters.Add("scope", "global")
testCases := []struct {
filter filters.Args
resultCount int
err string
}{
{
filter: bridgeDriverFilters,
resultCount: 1,
err: "",
},
{
filter: overlayDriverFilters,
resultCount: 1,
err: "",
},
{
filter: nonameDriverFilters,
resultCount: 0,
err: "",
},
{
filter: customDriverFilters,
resultCount: 3,
err: "",
},
{
filter: builtinDriverFilters,
resultCount: 3,
err: "",
},
{
filter: invalidDriverFilters,
resultCount: 0,
err: "Invalid filter: 'type'='invalid'",
},
{
filter: localScopeFilters,
resultCount: 4,
err: "",
},
{
filter: swarmScopeFilters,
resultCount: 1,
err: "",
},
{
filter: globalScopeFilters,
resultCount: 1,
err: "",
},
}
for _, testCase := range testCases {
result, err := filterNetworks(networks, testCase.filter)
if testCase.err != "" {
if err == nil {
t.Fatalf("expect error '%s', got no error", testCase.err)
} else if !strings.Contains(err.Error(), testCase.err) {
t.Fatalf("expect error '%s', got '%s'", testCase.err, err)
}
} else {
if err != nil {
t.Fatalf("expect no error, got error '%s'", err)
}
// Make sure result is not nil
if result == nil {
t.Fatal("filterNetworks should not return nil")
}
if len(result) != testCase.resultCount {
t.Fatalf("expect '%d' networks, got '%d' networks", testCase.resultCount, len(result))
}
}
}
}

View File

@@ -7,16 +7,16 @@ import (
// networkRouter is a router to talk with the network controller
type networkRouter struct {
backend Backend
clusterProvider *cluster.Cluster
routes []router.Route
backend Backend
cluster *cluster.Cluster
routes []router.Route
}
// NewRouter initializes a new network router
func NewRouter(b Backend, c *cluster.Cluster) router.Router {
r := &networkRouter{
backend: b,
clusterProvider: c,
backend: b,
cluster: c,
}
r.initRoutes()
return r

View File

@@ -2,18 +2,35 @@ package network
import (
"encoding/json"
"fmt"
"net/http"
"strconv"
"strings"
"golang.org/x/net/context"
"github.com/docker/docker/api/errors"
"github.com/docker/docker/api/server/httputils"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/api/types/network"
"github.com/docker/docker/api/types/versions"
"github.com/docker/libnetwork"
"github.com/docker/libnetwork/networkdb"
)
var (
// acceptedNetworkFilters is a list of acceptable filters
acceptedNetworkFilters = map[string]bool{
"driver": true,
"type": true,
"name": true,
"id": true,
"label": true,
"scope": true,
}
)
func (n *networkRouter) getNetworksList(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
@@ -25,9 +42,13 @@ func (n *networkRouter) getNetworksList(ctx context.Context, w http.ResponseWrit
return err
}
if err := netFilters.Validate(acceptedNetworkFilters); err != nil {
return err
}
list := []types.NetworkResource{}
if nr, err := n.clusterProvider.GetNetworks(); err == nil {
if nr, err := n.cluster.GetNetworks(); err == nil {
list = append(list, nr...)
}
@@ -40,7 +61,18 @@ SKIP:
continue SKIP
}
}
list = append(list, *n.buildNetworkResource(nw))
var nr *types.NetworkResource
// Versions < 1.28 fetches all the containers attached to a network
// in a network list api call. It is a heavy weight operation when
// run across all the networks. Starting API version 1.28, this detailed
// info is available for network specific GET API (equivalent to inspect)
if versions.LessThan(httputils.VersionFromContext(ctx), "1.28") {
nr = n.buildDetailedNetworkResources(nw, false)
} else {
nr = n.buildNetworkResource(nw)
}
list = append(list, *nr)
}
list, err = filterNetworks(list, netFilters)
@@ -55,14 +87,90 @@ func (n *networkRouter) getNetwork(ctx context.Context, w http.ResponseWriter, r
return err
}
nw, err := n.backend.FindNetwork(vars["id"])
if err != nil {
if nr, err := n.clusterProvider.GetNetwork(vars["id"]); err == nil {
return httputils.WriteJSON(w, http.StatusOK, nr)
term := vars["id"]
var (
verbose bool
err error
)
if v := r.URL.Query().Get("verbose"); v != "" {
if verbose, err = strconv.ParseBool(v); err != nil {
err = fmt.Errorf("invalid value for verbose: %s", v)
return errors.NewBadRequestError(err)
}
return err
}
return httputils.WriteJSON(w, http.StatusOK, n.buildNetworkResource(nw))
// In case multiple networks have duplicate names, return error.
// TODO (yongtang): should we wrap with version here for backward compatibility?
// First find based on full ID, return immediately once one is found.
// If a network appears both in swarm and local, assume it is in local first
// For full name and partial ID, save the result first, and process later
// in case multiple records was found based on the same term
listByFullName := map[string]types.NetworkResource{}
listByPartialID := map[string]types.NetworkResource{}
nw := n.backend.GetNetworks()
for _, network := range nw {
if network.ID() == term {
return httputils.WriteJSON(w, http.StatusOK, *n.buildDetailedNetworkResources(network, verbose))
}
if network.Name() == term {
// No need to check the ID collision here as we are still in
// local scope and the network ID is unique in this scope.
listByFullName[network.ID()] = *n.buildDetailedNetworkResources(network, verbose)
}
if strings.HasPrefix(network.ID(), term) {
// No need to check the ID collision here as we are still in
// local scope and the network ID is unique in this scope.
listByPartialID[network.ID()] = *n.buildDetailedNetworkResources(network, verbose)
}
}
nr, _ := n.cluster.GetNetworks()
for _, network := range nr {
if network.ID == term {
return httputils.WriteJSON(w, http.StatusOK, network)
}
if network.Name == term {
// Check the ID collision as we are in swarm scope here, and
// the map (of the listByFullName) may have already had a
// network with the same ID (from local scope previously)
if _, ok := listByFullName[network.ID]; !ok {
listByFullName[network.ID] = network
}
}
if strings.HasPrefix(network.ID, term) {
// Check the ID collision as we are in swarm scope here, and
// the map (of the listByPartialID) may have already had a
// network with the same ID (from local scope previously)
if _, ok := listByPartialID[network.ID]; !ok {
listByPartialID[network.ID] = network
}
}
}
// Find based on full name, returns true only if no duplicates
if len(listByFullName) == 1 {
for _, v := range listByFullName {
return httputils.WriteJSON(w, http.StatusOK, v)
}
}
if len(listByFullName) > 1 {
return fmt.Errorf("network %s is ambiguous (%d matches found based on name)", term, len(listByFullName))
}
// Find based on partial ID, returns true only if no duplicates
if len(listByPartialID) == 1 {
for _, v := range listByPartialID {
return httputils.WriteJSON(w, http.StatusOK, v)
}
}
if len(listByPartialID) > 1 {
return fmt.Errorf("network %s is ambiguous (%d matches found based on ID prefix)", term, len(listByPartialID))
}
return libnetwork.ErrNoSuchNetwork(term)
}
func (n *networkRouter) postNetworkCreate(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
@@ -80,20 +188,33 @@ func (n *networkRouter) postNetworkCreate(ctx context.Context, w http.ResponseWr
return err
}
if _, err := n.clusterProvider.GetNetwork(create.Name); err == nil {
if nws, err := n.cluster.GetNetworksByName(create.Name); err == nil && len(nws) > 0 {
return libnetwork.NetworkNameError(create.Name)
}
nw, err := n.backend.CreateNetwork(create)
if err != nil {
var warning string
if _, ok := err.(libnetwork.NetworkNameError); ok {
// check if user defined CheckDuplicate, if set true, return err
// otherwise prepare a warning message
if create.CheckDuplicate {
return libnetwork.NetworkNameError(create.Name)
}
warning = libnetwork.NetworkNameError(create.Name).Error()
}
if _, ok := err.(libnetwork.ManagerRedirectError); !ok {
return err
}
id, err := n.clusterProvider.CreateNetwork(create)
id, err := n.cluster.CreateNetwork(create)
if err != nil {
return err
}
nw = &types.NetworkCreateResponse{ID: id}
nw = &types.NetworkCreateResponse{
ID: id,
Warning: warning,
}
}
return httputils.WriteJSON(w, http.StatusCreated, nw)
@@ -137,8 +258,8 @@ func (n *networkRouter) deleteNetwork(ctx context.Context, w http.ResponseWriter
if err := httputils.ParseForm(r); err != nil {
return err
}
if _, err := n.clusterProvider.GetNetwork(vars["id"]); err == nil {
if err = n.clusterProvider.RemoveNetwork(vars["id"]); err != nil {
if _, err := n.cluster.GetNetwork(vars["id"]); err == nil {
if err = n.cluster.RemoveNetwork(vars["id"]); err != nil {
return err
}
w.WriteHeader(http.StatusNoContent)
@@ -162,8 +283,8 @@ func (n *networkRouter) buildNetworkResource(nw libnetwork.Network) *types.Netwo
r.ID = nw.ID()
r.Created = info.Created()
r.Scope = info.Scope()
if n.clusterProvider.IsManager() {
if _, err := n.clusterProvider.GetNetwork(nw.Name()); err == nil {
if n.cluster.IsManager() {
if _, err := n.cluster.GetNetwork(nw.ID()); err == nil {
r.Scope = "swarm"
}
} else if info.Dynamic() {
@@ -172,10 +293,11 @@ func (n *networkRouter) buildNetworkResource(nw libnetwork.Network) *types.Netwo
r.Driver = nw.Type()
r.EnableIPv6 = info.IPv6Enabled()
r.Internal = info.Internal()
r.Attachable = info.Attachable()
r.Ingress = info.Ingress()
r.Options = info.DriverOptions()
r.Containers = make(map[string]types.EndpointResource)
buildIpamResources(r, info)
r.Internal = info.Internal()
r.Labels = info.Labels()
peers := info.Peers()
@@ -183,6 +305,15 @@ func (n *networkRouter) buildNetworkResource(nw libnetwork.Network) *types.Netwo
r.Peers = buildPeerInfoResources(peers)
}
return r
}
func (n *networkRouter) buildDetailedNetworkResources(nw libnetwork.Network, verbose bool) *types.NetworkResource {
if nw == nil {
return &types.NetworkResource{}
}
r := n.buildNetworkResource(nw)
epl := nw.Endpoints()
for _, e := range epl {
ei := e.Info()
@@ -198,6 +329,28 @@ func (n *networkRouter) buildNetworkResource(nw libnetwork.Network) *types.Netwo
r.Containers[key] = buildEndpointResource(tmpID, e.Name(), ei)
}
if !verbose {
return r
}
services := nw.Info().Services()
r.Services = make(map[string]network.ServiceInfo)
for name, service := range services {
tasks := []network.Task{}
for _, t := range service.Tasks {
tasks = append(tasks, network.Task{
Name: t.Name,
EndpointID: t.EndpointID,
EndpointIP: t.EndpointIP,
Info: t.Info,
})
}
r.Services[name] = network.ServiceInfo{
VIP: service.VIP,
Ports: service.Ports,
Tasks: tasks,
LocalLBIndex: service.LocalLBIndex,
}
}
return r
}
@@ -297,16 +450,12 @@ func (n *networkRouter) postNetworksPrune(ctx context.Context, w http.ResponseWr
return err
}
if err := httputils.CheckForJSON(r); err != nil {
pruneFilters, err := filters.FromParam(r.Form.Get("filters"))
if err != nil {
return err
}
var cfg types.NetworksPruneConfig
if err := json.NewDecoder(r.Body).Decode(&cfg); err != nil {
return err
}
pruneReport, err := n.backend.NetworksPrune(&cfg)
pruneReport, err := n.backend.NetworksPrune(pruneFilters)
if err != nil {
return err
}

View File

@@ -4,19 +4,23 @@ import (
"io"
"net/http"
"github.com/docker/distribution/reference"
enginetypes "github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"golang.org/x/net/context"
)
// Backend for Plugin
type Backend interface {
Disable(name string) error
Enable(name string) error
List() ([]enginetypes.Plugin, error)
Inspect(name string) (enginetypes.Plugin, error)
Disable(name string, config *enginetypes.PluginDisableConfig) error
Enable(name string, config *enginetypes.PluginEnableConfig) error
List(filters.Args) ([]enginetypes.Plugin, error)
Inspect(name string) (*enginetypes.Plugin, error)
Remove(name string, config *enginetypes.PluginRmConfig) error
Set(name string, args []string) error
Pull(name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig) (enginetypes.PluginPrivileges, error)
Push(name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig) error
CreateFromContext(ctx context.Context, tarCtx io.Reader, options *enginetypes.PluginCreateOptions) error
Privileges(ctx context.Context, ref reference.Named, metaHeaders http.Header, authConfig *enginetypes.AuthConfig) (enginetypes.PluginPrivileges, error)
Pull(ctx context.Context, ref reference.Named, name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig, privileges enginetypes.PluginPrivileges, outStream io.Writer) error
Push(ctx context.Context, name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig, outStream io.Writer) error
Upgrade(ctx context.Context, ref reference.Named, name string, metaHeaders http.Header, authConfig *enginetypes.AuthConfig, privileges enginetypes.PluginPrivileges, outStream io.Writer) error
CreateFromContext(ctx context.Context, tarCtx io.ReadCloser, options *enginetypes.PluginCreateOptions) error
}

View File

@@ -25,12 +25,14 @@ func (r *pluginRouter) Routes() []router.Route {
func (r *pluginRouter) initRoutes() {
r.routes = []router.Route{
router.NewGetRoute("/plugins", r.listPlugins),
router.NewGetRoute("/plugins/{name:.*}", r.inspectPlugin),
router.NewGetRoute("/plugins/{name:.*}/json", r.inspectPlugin),
router.NewGetRoute("/plugins/privileges", r.getPrivileges),
router.NewDeleteRoute("/plugins/{name:.*}", r.removePlugin),
router.NewPostRoute("/plugins/{name:.*}/enable", r.enablePlugin), // PATCH?
router.NewPostRoute("/plugins/{name:.*}/disable", r.disablePlugin),
router.NewPostRoute("/plugins/pull", r.pullPlugin),
router.NewPostRoute("/plugins/{name:.*}/push", r.pushPlugin),
router.Cancellable(router.NewPostRoute("/plugins/pull", r.pullPlugin)),
router.Cancellable(router.NewPostRoute("/plugins/{name:.*}/push", r.pushPlugin)),
router.Cancellable(router.NewPostRoute("/plugins/{name:.*}/upgrade", r.upgradePlugin)),
router.NewPostRoute("/plugins/{name:.*}/set", r.setPlugin),
router.NewPostRoute("/plugins/create", r.createPlugin),
}

View File

@@ -4,27 +4,30 @@ import (
"encoding/base64"
"encoding/json"
"net/http"
"strconv"
"strings"
"github.com/docker/distribution/reference"
"github.com/docker/docker/api/server/httputils"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
"github.com/docker/docker/pkg/ioutils"
"github.com/docker/docker/pkg/streamformatter"
"github.com/pkg/errors"
"golang.org/x/net/context"
)
func (pr *pluginRouter) pullPlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
}
func parseHeaders(headers http.Header) (map[string][]string, *types.AuthConfig) {
metaHeaders := map[string][]string{}
for k, v := range r.Header {
for k, v := range headers {
if strings.HasPrefix(k, "X-Meta-") {
metaHeaders[k] = v
}
}
// Get X-Registry-Auth
authEncoded := r.Header.Get("X-Registry-Auth")
authEncoded := headers.Get("X-Registry-Auth")
authConfig := &types.AuthConfig{}
if authEncoded != "" {
authJSON := base64.NewDecoder(base64.URLEncoding, strings.NewReader(authEncoded))
@@ -33,13 +36,168 @@ func (pr *pluginRouter) pullPlugin(ctx context.Context, w http.ResponseWriter, r
}
}
privileges, err := pr.backend.Pull(r.FormValue("name"), metaHeaders, authConfig)
return metaHeaders, authConfig
}
// parseRemoteRef parses the remote reference into a reference.Named
// returning the tag associated with the reference. In the case the
// given reference string includes both digest and tag, the returned
// reference will have the digest without the tag, but the tag will
// be returned.
func parseRemoteRef(remote string) (reference.Named, string, error) {
// Parse remote reference, supporting remotes with name and tag
remoteRef, err := reference.ParseNormalizedNamed(remote)
if err != nil {
return nil, "", err
}
type canonicalWithTag interface {
reference.Canonical
Tag() string
}
if canonical, ok := remoteRef.(canonicalWithTag); ok {
remoteRef, err = reference.WithDigest(reference.TrimNamed(remoteRef), canonical.Digest())
if err != nil {
return nil, "", err
}
return remoteRef, canonical.Tag(), nil
}
remoteRef = reference.TagNameOnly(remoteRef)
return remoteRef, "", nil
}
func (pr *pluginRouter) getPrivileges(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
}
metaHeaders, authConfig := parseHeaders(r.Header)
ref, _, err := parseRemoteRef(r.FormValue("remote"))
if err != nil {
return err
}
privileges, err := pr.backend.Privileges(ctx, ref, metaHeaders, authConfig)
if err != nil {
return err
}
return httputils.WriteJSON(w, http.StatusOK, privileges)
}
func (pr *pluginRouter) upgradePlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return errors.Wrap(err, "failed to parse form")
}
var privileges types.PluginPrivileges
dec := json.NewDecoder(r.Body)
if err := dec.Decode(&privileges); err != nil {
return errors.Wrap(err, "failed to parse privileges")
}
if dec.More() {
return errors.New("invalid privileges")
}
metaHeaders, authConfig := parseHeaders(r.Header)
ref, tag, err := parseRemoteRef(r.FormValue("remote"))
if err != nil {
return err
}
name, err := getName(ref, tag, vars["name"])
if err != nil {
return err
}
w.Header().Set("Docker-Plugin-Name", name)
w.Header().Set("Content-Type", "application/json")
output := ioutils.NewWriteFlusher(w)
if err := pr.backend.Upgrade(ctx, ref, name, metaHeaders, authConfig, privileges, output); err != nil {
if !output.Flushed() {
return err
}
output.Write(streamformatter.NewJSONStreamFormatter().FormatError(err))
}
return nil
}
func (pr *pluginRouter) pullPlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return errors.Wrap(err, "failed to parse form")
}
var privileges types.PluginPrivileges
dec := json.NewDecoder(r.Body)
if err := dec.Decode(&privileges); err != nil {
return errors.Wrap(err, "failed to parse privileges")
}
if dec.More() {
return errors.New("invalid privileges")
}
metaHeaders, authConfig := parseHeaders(r.Header)
ref, tag, err := parseRemoteRef(r.FormValue("remote"))
if err != nil {
return err
}
name, err := getName(ref, tag, r.FormValue("name"))
if err != nil {
return err
}
w.Header().Set("Docker-Plugin-Name", name)
w.Header().Set("Content-Type", "application/json")
output := ioutils.NewWriteFlusher(w)
if err := pr.backend.Pull(ctx, ref, name, metaHeaders, authConfig, privileges, output); err != nil {
if !output.Flushed() {
return err
}
output.Write(streamformatter.NewJSONStreamFormatter().FormatError(err))
}
return nil
}
func getName(ref reference.Named, tag, name string) (string, error) {
if name == "" {
if _, ok := ref.(reference.Canonical); ok {
trimmed := reference.TrimNamed(ref)
if tag != "" {
nt, err := reference.WithTag(trimmed, tag)
if err != nil {
return "", err
}
name = reference.FamiliarString(nt)
} else {
name = reference.FamiliarString(reference.TagNameOnly(trimmed))
}
} else {
name = reference.FamiliarString(ref)
}
} else {
localRef, err := reference.ParseNormalizedNamed(name)
if err != nil {
return "", err
}
if _, ok := localRef.(reference.Canonical); ok {
return "", errors.New("cannot use digest in plugin tag")
}
if reference.IsNameOnly(localRef) {
// TODO: log change in name to out stream
name = reference.FamiliarString(reference.TagNameOnly(localRef))
}
}
return name, nil
}
func (pr *pluginRouter) createPlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
@@ -51,16 +209,37 @@ func (pr *pluginRouter) createPlugin(ctx context.Context, w http.ResponseWriter,
if err := pr.backend.CreateFromContext(ctx, r.Body, options); err != nil {
return err
}
//TODO: send progress bar
w.WriteHeader(http.StatusNoContent)
return nil
}
func (pr *pluginRouter) enablePlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
return pr.backend.Enable(vars["name"])
if err := httputils.ParseForm(r); err != nil {
return err
}
name := vars["name"]
timeout, err := strconv.Atoi(r.Form.Get("timeout"))
if err != nil {
return err
}
config := &types.PluginEnableConfig{Timeout: timeout}
return pr.backend.Enable(name, config)
}
func (pr *pluginRouter) disablePlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
return pr.backend.Disable(vars["name"])
if err := httputils.ParseForm(r); err != nil {
return err
}
name := vars["name"]
config := &types.PluginDisableConfig{
ForceDisable: httputils.BoolValue(r, "force"),
}
return pr.backend.Disable(name, config)
}
func (pr *pluginRouter) removePlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
@@ -77,26 +256,21 @@ func (pr *pluginRouter) removePlugin(ctx context.Context, w http.ResponseWriter,
func (pr *pluginRouter) pushPlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
return errors.Wrap(err, "failed to parse form")
}
metaHeaders := map[string][]string{}
for k, v := range r.Header {
if strings.HasPrefix(k, "X-Meta-") {
metaHeaders[k] = v
}
}
metaHeaders, authConfig := parseHeaders(r.Header)
// Get X-Registry-Auth
authEncoded := r.Header.Get("X-Registry-Auth")
authConfig := &types.AuthConfig{}
if authEncoded != "" {
authJSON := base64.NewDecoder(base64.URLEncoding, strings.NewReader(authEncoded))
if err := json.NewDecoder(authJSON).Decode(authConfig); err != nil {
authConfig = &types.AuthConfig{}
w.Header().Set("Content-Type", "application/json")
output := ioutils.NewWriteFlusher(w)
if err := pr.backend.Push(ctx, vars["name"], metaHeaders, authConfig, output); err != nil {
if !output.Flushed() {
return err
}
output.Write(streamformatter.NewJSONStreamFormatter().FormatError(err))
}
return pr.backend.Push(vars["name"], metaHeaders, authConfig)
return nil
}
func (pr *pluginRouter) setPlugin(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
@@ -112,7 +286,15 @@ func (pr *pluginRouter) setPlugin(ctx context.Context, w http.ResponseWriter, r
}
func (pr *pluginRouter) listPlugins(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
l, err := pr.backend.List()
if err := httputils.ParseForm(r); err != nil {
return err
}
pluginFilters, err := filters.FromParam(r.Form.Get("filters"))
if err != nil {
return err
}
l, err := pr.backend.List(pluginFilters)
if err != nil {
return err
}

View File

@@ -7,7 +7,7 @@ import (
"golang.org/x/net/context"
)
// Backend abstracts an swarm commands manager.
// Backend abstracts a swarm manager.
type Backend interface {
Init(req types.InitRequest) (string, error)
Join(req types.JoinRequest) error
@@ -17,11 +17,11 @@ type Backend interface {
GetUnlockKey() (string, error)
UnlockSwarm(req types.UnlockRequest) error
GetServices(basictypes.ServiceListOptions) ([]types.Service, error)
GetService(string) (types.Service, error)
CreateService(types.ServiceSpec, string) (string, error)
UpdateService(string, uint64, types.ServiceSpec, string, string) error
GetService(idOrName string, insertDefaults bool) (types.Service, error)
CreateService(types.ServiceSpec, string) (*basictypes.ServiceCreateResponse, error)
UpdateService(string, uint64, types.ServiceSpec, basictypes.ServiceUpdateOptions) (*basictypes.ServiceUpdateResponse, error)
RemoveService(string) error
ServiceLogs(context.Context, string, *backend.ContainerLogsConfig, chan struct{}) error
ServiceLogs(context.Context, *backend.LogSelector, *basictypes.ContainerLogsOptions) (<-chan *backend.LogMessage, error)
GetNodes(basictypes.NodeListOptions) ([]types.Node, error)
GetNode(string) (types.Node, error)
UpdateNode(string, uint64, types.NodeSpec) error
@@ -30,7 +30,7 @@ type Backend interface {
GetTask(string) (types.Task, error)
GetSecrets(opts basictypes.SecretListOptions) ([]types.Secret, error)
CreateSecret(s types.SecretSpec) (string, error)
RemoveSecret(id string) error
RemoveSecret(idOrName string) error
GetSecret(id string) (types.Secret, error)
UpdateSecret(id string, version uint64, spec types.SecretSpec) error
UpdateSecret(idOrName string, version uint64, spec types.SecretSpec) error
}

View File

@@ -1,9 +1,6 @@
package swarm
import (
"github.com/docker/docker/api/server/router"
"github.com/docker/docker/daemon"
)
import "github.com/docker/docker/api/server/router"
// swarmRouter is a router to talk with the build controller
type swarmRouter struct {
@@ -12,14 +9,11 @@ type swarmRouter struct {
}
// NewRouter initializes a new build router
func NewRouter(d *daemon.Daemon, b Backend) router.Router {
func NewRouter(b Backend) router.Router {
r := &swarmRouter{
backend: b,
}
r.initRoutes()
if d.HasExperimental() {
r.addExperimentalRoutes()
}
return r
}
@@ -28,12 +22,6 @@ func (sr *swarmRouter) Routes() []router.Route {
return sr.routes
}
func (sr *swarmRouter) addExperimentalRoutes() {
sr.routes = append(sr.routes,
router.Cancellable(router.NewGetRoute("/services/{id}/logs", sr.getServiceLogs)),
)
}
func (sr *swarmRouter) initRoutes() {
sr.routes = []router.Route{
router.NewPostRoute("/swarm/init", sr.initCluster),
@@ -48,14 +36,16 @@ func (sr *swarmRouter) initRoutes() {
router.NewPostRoute("/services/create", sr.createService),
router.NewPostRoute("/services/{id}/update", sr.updateService),
router.NewDeleteRoute("/services/{id}", sr.removeService),
router.Cancellable(router.NewGetRoute("/services/{id}/logs", sr.getServiceLogs)),
router.NewGetRoute("/nodes", sr.getNodes),
router.NewGetRoute("/nodes/{id}", sr.getNode),
router.NewDeleteRoute("/nodes/{id}", sr.removeNode),
router.NewPostRoute("/nodes/{id}/update", sr.updateNode),
router.NewGetRoute("/tasks", sr.getTasks),
router.NewGetRoute("/tasks/{id}", sr.getTask),
router.Cancellable(router.NewGetRoute("/tasks/{id}/logs", sr.getTaskLogs)),
router.NewGetRoute("/secrets", sr.getSecrets),
router.NewPostRoute("/secrets", sr.createSecret),
router.NewPostRoute("/secrets/create", sr.createSecret),
router.NewDeleteRoute("/secrets/{id}", sr.removeSecret),
router.NewGetRoute("/secrets/{id}", sr.getSecret),
router.NewPostRoute("/secrets/{id}/update", sr.updateSecret),

View File

@@ -65,7 +65,8 @@ func (sr *swarmRouter) updateCluster(ctx context.Context, w http.ResponseWriter,
rawVersion := r.URL.Query().Get("version")
version, err := strconv.ParseUint(rawVersion, 10, 64)
if err != nil {
return fmt.Errorf("Invalid swarm version '%s': %s", rawVersion, err.Error())
err := fmt.Errorf("invalid swarm version '%s': %v", rawVersion, err)
return errors.NewBadRequestError(err)
}
var flags types.UpdateFlags
@@ -73,7 +74,8 @@ func (sr *swarmRouter) updateCluster(ctx context.Context, w http.ResponseWriter,
if value := r.URL.Query().Get("rotateWorkerToken"); value != "" {
rot, err := strconv.ParseBool(value)
if err != nil {
return fmt.Errorf("invalid value for rotateWorkerToken: %s", value)
err := fmt.Errorf("invalid value for rotateWorkerToken: %s", value)
return errors.NewBadRequestError(err)
}
flags.RotateWorkerToken = rot
@@ -82,7 +84,8 @@ func (sr *swarmRouter) updateCluster(ctx context.Context, w http.ResponseWriter,
if value := r.URL.Query().Get("rotateManagerToken"); value != "" {
rot, err := strconv.ParseBool(value)
if err != nil {
return fmt.Errorf("invalid value for rotateManagerToken: %s", value)
err := fmt.Errorf("invalid value for rotateManagerToken: %s", value)
return errors.NewBadRequestError(err)
}
flags.RotateManagerToken = rot
@@ -91,7 +94,7 @@ func (sr *swarmRouter) updateCluster(ctx context.Context, w http.ResponseWriter,
if value := r.URL.Query().Get("rotateManagerUnlockKey"); value != "" {
rot, err := strconv.ParseBool(value)
if err != nil {
return fmt.Errorf("invalid value for rotateManagerUnlockKey: %s", value)
return errors.NewBadRequestError(fmt.Errorf("invalid value for rotateManagerUnlockKey: %s", value))
}
flags.RotateManagerUnlockKey = rot
@@ -148,7 +151,17 @@ func (sr *swarmRouter) getServices(ctx context.Context, w http.ResponseWriter, r
}
func (sr *swarmRouter) getService(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
service, err := sr.backend.GetService(vars["id"])
var insertDefaults bool
if value := r.URL.Query().Get("insertDefaults"); value != "" {
var err error
insertDefaults, err = strconv.ParseBool(value)
if err != nil {
err := fmt.Errorf("invalid value for insertDefaults: %s", value)
return errors.NewBadRequestError(err)
}
}
service, err := sr.backend.GetService(vars["id"], insertDefaults)
if err != nil {
logrus.Errorf("Error getting service %s: %v", vars["id"], err)
return err
@@ -166,15 +179,13 @@ func (sr *swarmRouter) createService(ctx context.Context, w http.ResponseWriter,
// Get returns "" if the header does not exist
encodedAuth := r.Header.Get("X-Registry-Auth")
id, err := sr.backend.CreateService(service, encodedAuth)
resp, err := sr.backend.CreateService(service, encodedAuth)
if err != nil {
logrus.Errorf("Error creating service %s: %v", service.Name, err)
return err
}
return httputils.WriteJSON(w, http.StatusCreated, &basictypes.ServiceCreateResponse{
ID: id,
})
return httputils.WriteJSON(w, http.StatusCreated, resp)
}
func (sr *swarmRouter) updateService(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
@@ -186,19 +197,23 @@ func (sr *swarmRouter) updateService(ctx context.Context, w http.ResponseWriter,
rawVersion := r.URL.Query().Get("version")
version, err := strconv.ParseUint(rawVersion, 10, 64)
if err != nil {
return fmt.Errorf("Invalid service version '%s': %s", rawVersion, err.Error())
err := fmt.Errorf("invalid service version '%s': %v", rawVersion, err)
return errors.NewBadRequestError(err)
}
var flags basictypes.ServiceUpdateOptions
// Get returns "" if the header does not exist
encodedAuth := r.Header.Get("X-Registry-Auth")
flags.EncodedRegistryAuth = r.Header.Get("X-Registry-Auth")
flags.RegistryAuthFrom = r.URL.Query().Get("registryAuthFrom")
flags.Rollback = r.URL.Query().Get("rollback")
registryAuthFrom := r.URL.Query().Get("registryAuthFrom")
if err := sr.backend.UpdateService(vars["id"], version, service, encodedAuth, registryAuthFrom); err != nil {
resp, err := sr.backend.UpdateService(vars["id"], version, service, flags)
if err != nil {
logrus.Errorf("Error updating service %s: %v", vars["id"], err)
return err
}
return nil
return httputils.WriteJSON(w, http.StatusOK, resp)
}
func (sr *swarmRouter) removeService(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
@@ -209,57 +224,28 @@ func (sr *swarmRouter) removeService(ctx context.Context, w http.ResponseWriter,
return nil
}
func (sr *swarmRouter) getTaskLogs(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
}
// make a selector to pass to the helper function
selector := &backend.LogSelector{
Tasks: []string{vars["id"]},
}
return sr.swarmLogs(ctx, w, r, selector)
}
func (sr *swarmRouter) getServiceLogs(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if err := httputils.ParseForm(r); err != nil {
return err
}
// Args are validated before the stream starts because when it starts we're
// sending HTTP 200 by writing an empty chunk of data to tell the client that
// daemon is going to stream. By sending this initial HTTP 200 we can't report
// any error after the stream starts (i.e. container not found, wrong parameters)
// with the appropriate status code.
stdout, stderr := httputils.BoolValue(r, "stdout"), httputils.BoolValue(r, "stderr")
if !(stdout || stderr) {
return fmt.Errorf("Bad parameters: you must choose at least one stream")
// make a selector to pass to the helper function
selector := &backend.LogSelector{
Services: []string{vars["id"]},
}
serviceName := vars["id"]
logsConfig := &backend.ContainerLogsConfig{
ContainerLogsOptions: basictypes.ContainerLogsOptions{
Follow: httputils.BoolValue(r, "follow"),
Timestamps: httputils.BoolValue(r, "timestamps"),
Since: r.Form.Get("since"),
Tail: r.Form.Get("tail"),
ShowStdout: stdout,
ShowStderr: stderr,
Details: httputils.BoolValue(r, "details"),
},
OutStream: w,
}
if !logsConfig.Follow {
return fmt.Errorf("Bad parameters: Only follow mode is currently supported")
}
if logsConfig.Details {
return fmt.Errorf("Bad parameters: details is not currently supported")
}
chStarted := make(chan struct{})
if err := sr.backend.ServiceLogs(ctx, serviceName, logsConfig, chStarted); err != nil {
select {
case <-chStarted:
// The client may be expecting all of the data we're sending to
// be multiplexed, so send it through OutStream, which will
// have been set up to handle that if needed.
fmt.Fprintf(logsConfig.OutStream, "Error grabbing service logs: %v\n", err)
default:
return err
}
}
return nil
return sr.swarmLogs(ctx, w, r, selector)
}
func (sr *swarmRouter) getNodes(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
@@ -299,7 +285,8 @@ func (sr *swarmRouter) updateNode(ctx context.Context, w http.ResponseWriter, r
rawVersion := r.URL.Query().Get("version")
version, err := strconv.ParseUint(rawVersion, 10, 64)
if err != nil {
return fmt.Errorf("Invalid node version '%s': %s", rawVersion, err.Error())
err := fmt.Errorf("invalid node version '%s': %v", rawVersion, err)
return errors.NewBadRequestError(err)
}
if err := sr.backend.UpdateNode(vars["id"], version, node); err != nil {
@@ -388,6 +375,7 @@ func (sr *swarmRouter) removeSecret(ctx context.Context, w http.ResponseWriter,
if err := sr.backend.RemoveSecret(vars["id"]); err != nil {
return err
}
w.WriteHeader(http.StatusNoContent)
return nil
}

View File

@@ -0,0 +1,65 @@
package swarm
import (
"fmt"
"net/http"
"github.com/docker/docker/api/server/httputils"
basictypes "github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/backend"
"golang.org/x/net/context"
)
// swarmLogs takes an http response, request, and selector, and writes the logs
// specified by the selector to the response
func (sr *swarmRouter) swarmLogs(ctx context.Context, w http.ResponseWriter, r *http.Request, selector *backend.LogSelector) error {
// Args are validated before the stream starts because when it starts we're
// sending HTTP 200 by writing an empty chunk of data to tell the client that
// daemon is going to stream. By sending this initial HTTP 200 we can't report
// any error after the stream starts (i.e. container not found, wrong parameters)
// with the appropriate status code.
stdout, stderr := httputils.BoolValue(r, "stdout"), httputils.BoolValue(r, "stderr")
if !(stdout || stderr) {
return fmt.Errorf("Bad parameters: you must choose at least one stream")
}
// there is probably a neater way to manufacture the ContainerLogsOptions
// struct, probably in the caller, to eliminate the dependency on net/http
logsConfig := &basictypes.ContainerLogsOptions{
Follow: httputils.BoolValue(r, "follow"),
Timestamps: httputils.BoolValue(r, "timestamps"),
Since: r.Form.Get("since"),
Tail: r.Form.Get("tail"),
ShowStdout: stdout,
ShowStderr: stderr,
Details: httputils.BoolValue(r, "details"),
}
tty := false
// checking for whether logs are TTY involves iterating over every service
// and task. idk if there is a better way
for _, service := range selector.Services {
s, err := sr.backend.GetService(service, false)
if err != nil {
// maybe should return some context with this error?
return err
}
tty = s.Spec.TaskTemplate.ContainerSpec.TTY || tty
}
for _, task := range selector.Tasks {
t, err := sr.backend.GetTask(task)
if err != nil {
// as above
return err
}
tty = t.Spec.ContainerSpec.TTY || tty
}
msgs, err := sr.backend.ServiceLogs(ctx, selector, logsConfig)
if err != nil {
return err
}
httputils.WriteLogStream(ctx, w, msgs, logsConfig, !tty)
return nil
}

View File

@@ -8,16 +8,16 @@ import (
// systemRouter provides information about the Docker system overall.
// It gathers information about host, daemon and container events.
type systemRouter struct {
backend Backend
clusterProvider *cluster.Cluster
routes []router.Route
backend Backend
cluster *cluster.Cluster
routes []router.Route
}
// NewRouter initializes a new system router
func NewRouter(b Backend, c *cluster.Cluster) router.Router {
r := &systemRouter{
backend: b,
clusterProvider: c,
backend: b,
cluster: c,
}
r.routes = []router.Route{

View File

@@ -16,7 +16,6 @@ import (
"github.com/docker/docker/api/types/registry"
timetypes "github.com/docker/docker/api/types/time"
"github.com/docker/docker/api/types/versions"
"github.com/docker/docker/api/types/versions/v1p24"
"github.com/docker/docker/pkg/ioutils"
"golang.org/x/net/context"
)
@@ -36,22 +35,30 @@ func (s *systemRouter) getInfo(ctx context.Context, w http.ResponseWriter, r *ht
if err != nil {
return err
}
if s.clusterProvider != nil {
info.Swarm = s.clusterProvider.Info()
if s.cluster != nil {
info.Swarm = s.cluster.Info()
}
if versions.LessThan(httputils.VersionFromContext(ctx), "1.25") {
// TODO: handle this conversion in engine-api
oldInfo := &v1p24.Info{
InfoBase: info.InfoBase,
type oldInfo struct {
*types.Info
ExecutionDriver string
}
old := &oldInfo{
Info: info,
ExecutionDriver: "<not supported>",
}
for _, s := range info.SecurityOptions {
if s.Key == "Name" {
oldInfo.SecurityOptions = append(oldInfo.SecurityOptions, s.Value)
}
nameOnlySecurityOptions := []string{}
kvSecOpts, err := types.DecodeSecurityOptions(old.SecurityOptions)
if err != nil {
return err
}
return httputils.WriteJSON(w, http.StatusOK, oldInfo)
for _, s := range kvSecOpts {
nameOnlySecurityOptions = append(nameOnlySecurityOptions, s.Name)
}
old.SecurityOptions = nameOnlySecurityOptions
return httputils.WriteJSON(w, http.StatusOK, old)
}
return httputils.WriteJSON(w, http.StatusOK, info)
}

View File

@@ -3,6 +3,7 @@ package volume
import (
// TODO return types need to be refactored into pkg
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
)
// Backend is the methods that need to be implemented to provide
@@ -12,5 +13,5 @@ type Backend interface {
VolumeInspect(name string) (*types.Volume, error)
VolumeCreate(name, driverName string, opts, labels map[string]string) (*types.Volume, error)
VolumeRm(name string, force bool) error
VolumesPrune(config *types.VolumesPruneConfig) (*types.VolumesPruneReport, error)
VolumesPrune(pruneFilters filters.Args) (*types.VolumesPruneReport, error)
}

View File

@@ -5,7 +5,7 @@ import (
"net/http"
"github.com/docker/docker/api/server/httputils"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/filters"
volumetypes "github.com/docker/docker/api/types/volume"
"golang.org/x/net/context"
)
@@ -72,16 +72,12 @@ func (v *volumeRouter) postVolumesPrune(ctx context.Context, w http.ResponseWrit
return err
}
if err := httputils.CheckForJSON(r); err != nil {
pruneFilters, err := filters.FromParam(r.Form.Get("filters"))
if err != nil {
return err
}
var cfg types.VolumesPruneConfig
if err := json.NewDecoder(r.Body).Decode(&cfg); err != nil {
return err
}
pruneReport, err := v.backend.VolumesPrune(&cfg)
pruneReport, err := v.backend.VolumesPrune(pruneFilters)
if err != nil {
return err
}

View File

@@ -12,6 +12,7 @@ import (
"github.com/docker/docker/api/server/httputils"
"github.com/docker/docker/api/server/middleware"
"github.com/docker/docker/api/server/router"
"github.com/docker/docker/dockerversion"
"github.com/gorilla/mux"
"golang.org/x/net/context"
)
@@ -102,7 +103,7 @@ func (s *Server) serveAPI() error {
}
// HTTPServer contains an instance of http server and the listener.
// srv *http.Server, contains configuration to create a http server and a mux router with all api end points.
// srv *http.Server, contains configuration to create an http server and a mux router with all api end points.
// l net.Listener, is a TCP or Socket listener that dispatches incoming request to the router.
type HTTPServer struct {
srv *http.Server
@@ -128,7 +129,7 @@ func (s *Server) makeHTTPHandler(handler httputils.APIFunc) http.HandlerFunc {
// apply to all requests. Data that is specific to the
// immediate function being called should still be passed
// as 'args' on the function call.
ctx := context.WithValue(context.Background(), httputils.UAStringKey, r.Header.Get("User-Agent"))
ctx := context.WithValue(context.Background(), dockerversion.UAStringKey, r.Header.Get("User-Agent"))
handlerFunc := s.handlerWithGlobalMiddlewares(handler)
vars := mux.Vars(r)
@@ -137,7 +138,10 @@ func (s *Server) makeHTTPHandler(handler httputils.APIFunc) http.HandlerFunc {
}
if err := handlerFunc(ctx, w, r, vars); err != nil {
logrus.Errorf("Handler for %s %s returned error: %v", r.Method, r.URL.Path, err)
statusCode := httputils.GetHTTPErrorStatusCode(err)
if statusCode >= 500 {
logrus.Errorf("Handler for %s %s returned error: %v", r.Method, r.URL.Path, err)
}
httputils.MakeErrorHandler(err)(w, r)
}
}

View File

@@ -29,7 +29,7 @@ func TestMiddlewares(t *testing.T) {
localHandler := func(ctx context.Context, w http.ResponseWriter, r *http.Request, vars map[string]string) error {
if httputils.VersionFromContext(ctx) == "" {
t.Fatalf("Expected version, got empty string")
t.Fatal("Expected version, got empty string")
}
if sv := w.Header().Get("Server"); !strings.Contains(sv, "Docker/0.1omega2") {

File diff suppressed because it is too large Load Diff

View File

@@ -4,7 +4,7 @@ package {{ .Package }}
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/swagger-gen.sh
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
import (

View File

@@ -3,6 +3,7 @@ package backend
import (
"io"
"time"
"github.com/docker/docker/api/types"
"github.com/docker/docker/pkg/streamformatter"
@@ -18,18 +19,43 @@ type ContainerAttachConfig struct {
Stream bool
DetachKeys string
// Used to signify that streams are multiplexed and therefore need a StdWriter to encode stdout/sderr messages accordingly.
// Used to signify that streams are multiplexed and therefore need a StdWriter to encode stdout/stderr messages accordingly.
// TODO @cpuguy83: This shouldn't be needed. It was only added so that http and websocket endpoints can use the same function, and the websocket function was not using a stdwriter prior to this change...
// HOWEVER, the websocket endpoint is using a single stream and SHOULD be encoded with stdout/stderr as is done for HTTP since it is still just a single stream.
// Since such a change is an API change unrelated to the current changeset we'll keep it as is here and change separately.
MuxStreams bool
}
// ContainerLogsConfig holds configs for logging operations. Exists
// for users of the backend to to pass it a logging configuration.
type ContainerLogsConfig struct {
types.ContainerLogsOptions
OutStream io.Writer
// LogMessage is datastructure that represents piece of output produced by some
// container. The Line member is a slice of an array whose contents can be
// changed after a log driver's Log() method returns.
// changes to this struct need to be reflect in the reset method in
// daemon/logger/logger.go
type LogMessage struct {
Line []byte
Source string
Timestamp time.Time
Attrs LogAttributes
Partial bool
// Err is an error associated with a message. Completeness of a message
// with Err is not expected, tho it may be partially complete (fields may
// be missing, gibberish, or nil)
Err error
}
// LogAttributes is used to hold the extra attributes available in the log message
// Primarily used for converting the map type to string and sorting.
type LogAttributes map[string]string
// LogSelector is a list of services and tasks that should be returned as part
// of a log stream. It is similar to swarmapi.LogSelector, with the difference
// that the names don't have to be resolved to IDs; this is mostly to avoid
// accidents later where a swarmapi LogSelector might have been incorrectly
// used verbatim (and to avoid the handler having to import swarmapi types)
type LogSelector struct {
Services []string
Tasks []string
}
// ContainerStatsConfig holds information for configuring the runtime

View File

@@ -4,7 +4,6 @@ import (
"bufio"
"io"
"net"
"os"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/api/types/filters"
@@ -160,10 +159,14 @@ type ImageBuildOptions struct {
ShmSize int64
Dockerfile string
Ulimits []*units.Ulimit
BuildArgs map[string]string
AuthConfigs map[string]AuthConfig
Context io.Reader
Labels map[string]string
// BuildArgs needs to be a *string instead of just a string so that
// we can tell the difference between "" (empty string) and no value
// at all (nil). See the parsing of buildArgs in
// api/server/router/build/build_routes.go for even more info.
BuildArgs map[string]*string
AuthConfigs map[string]AuthConfig
Context io.Reader
Labels map[string]string
// squash the resulting image's layers to the parent
// preserves the original image and creates a new one from the parent with all
// the changes applied to a single layer
@@ -172,6 +175,8 @@ type ImageBuildOptions struct {
// specified here do not need to have a valid parent chain to match cache.
CacheFrom []string
SecurityOpt []string
ExtraHosts []string // List of extra hosts
Target string
}
// ImageBuildResponse holds information
@@ -189,8 +194,8 @@ type ImageCreateOptions struct {
// ImageImportSource holds source information for ImageImport
type ImageImportSource struct {
Source io.Reader // Source is the data to send to the server to create this image from (mutually exclusive with SourceName)
SourceName string // SourceName is the name of the image to pull (mutually exclusive with Source)
Source io.Reader // Source is the data to send to the server to create this image from. You must set SourceName to "-" to leverage this.
SourceName string // SourceName is the name of the image to pull. Set to "-" to leverage the Source attribute.
}
// ImageImportOptions holds information to import images from the client host.
@@ -253,18 +258,6 @@ type ResizeOptions struct {
Width uint
}
// VersionResponse holds version information for the client and the server
type VersionResponse struct {
Client *Version
Server *Version
}
// ServerOK returns true when the client could connect to the docker server
// and parse the information received. It returns false otherwise.
func (v VersionResponse) ServerOK() bool {
return v.Server != nil
}
// NodeListOptions holds parameters to list nodes with.
type NodeListOptions struct {
Filters filters.Args
@@ -285,10 +278,12 @@ type ServiceCreateOptions struct {
}
// ServiceCreateResponse contains the information returned to a client
// on the creation of a new service.
// on the creation of a new service.
type ServiceCreateResponse struct {
// ID is the ID of the created service.
ID string
// Warnings is a set of non-fatal warning messages to pass on to the user.
Warnings []string `json:",omitempty"`
}
// Values for RegistryAuthFrom in ServiceUpdateOptions
@@ -313,14 +308,26 @@ type ServiceUpdateOptions struct {
// credentials if they are not given in EncodedRegistryAuth. Valid
// values are "spec" and "previous-spec".
RegistryAuthFrom string
// Rollback indicates whether a server-side rollback should be
// performed. When this is set, the provided spec will be ignored.
// The valid values are "previous" and "none". An empty value is the
// same as "none".
Rollback string
}
// ServiceListOptions holds parameters to list services with.
// ServiceListOptions holds parameters to list services with.
type ServiceListOptions struct {
Filters filters.Args
}
// TaskListOptions holds parameters to list tasks with.
// ServiceInspectOptions holds parameters related to the "service inspect"
// operation.
type ServiceInspectOptions struct {
InsertDefaults bool
}
// TaskListOptions holds parameters to list tasks with.
type TaskListOptions struct {
Filters filters.Args
}
@@ -330,26 +337,28 @@ type PluginRemoveOptions struct {
Force bool
}
// PluginEnableOptions holds parameters to enable plugins.
type PluginEnableOptions struct {
Timeout int
}
// PluginDisableOptions holds parameters to disable plugins.
type PluginDisableOptions struct {
Force bool
}
// PluginInstallOptions holds parameters to install a plugin.
type PluginInstallOptions struct {
Disabled bool
AcceptAllPermissions bool
RegistryAuth string // RegistryAuth is the base64 encoded credentials for the registry
RemoteRef string // RemoteRef is the plugin name on the registry
PrivilegeFunc RequestPrivilegeFunc
AcceptPermissionsFunc func(PluginPrivileges) (bool, error)
Args []string
}
// SecretRequestOption is a type for requesting secrets
type SecretRequestOption struct {
Source string
Target string
UID string
GID string
Mode os.FileMode
}
// SwarmUnlockKeyResponse contains the response for Remote API:
// SwarmUnlockKeyResponse contains the response for Engine API:
// GET /swarm/unlockkey
type SwarmUnlockKeyResponse struct {
// UnlockKey is the unlock key in ASCII-armored format.

View File

@@ -53,9 +53,17 @@ type ExecConfig struct {
Cmd []string // Execution commands and args
}
// PluginRmConfig holds arguments for the plugin remove
// operation. This struct is used to tell the backend what operations
// to perform.
// PluginRmConfig holds arguments for plugin remove.
type PluginRmConfig struct {
ForceRemove bool
}
// PluginEnableConfig holds arguments for plugin enable
type PluginEnableConfig struct {
Timeout int
}
// PluginDisableConfig holds arguments for plugin disable.
type PluginDisableConfig struct {
ForceDisable bool
}

View File

@@ -19,8 +19,9 @@ type HealthConfig struct {
Test []string `json:",omitempty"`
// Zero means to inherit. Durations are expressed as integer nanoseconds.
Interval time.Duration `json:",omitempty"` // Interval is the time to wait between checks.
Timeout time.Duration `json:",omitempty"` // Timeout is the time to wait before considering the check to have hung.
Interval time.Duration `json:",omitempty"` // Interval is the time to wait between checks.
Timeout time.Duration `json:",omitempty"` // Timeout is the time to wait before considering the check to have hung.
StartPeriod time.Duration `json:",omitempty"` // The start period for the container to initialize before the retries starts to count down.
// Retries is the number of consecutive failures needed to consider a container as unhealthy.
// Zero means inherit.
@@ -34,29 +35,29 @@ type HealthConfig struct {
// All fields added to this struct must be marked `omitempty` to keep getting
// predictable hashes from the old `v1Compatibility` configuration.
type Config struct {
Hostname string // Hostname
Domainname string // Domainname
User string // User that will run the command(s) inside the container, also support user:group
AttachStdin bool // Attach the standard input, makes possible user interaction
AttachStdout bool // Attach the standard output
AttachStderr bool // Attach the standard error
ExposedPorts map[nat.Port]struct{} `json:",omitempty"` // List of exposed ports
Tty bool // Attach standard streams to a tty, including stdin if it is not closed.
OpenStdin bool // Open stdin
StdinOnce bool // If true, close stdin after the 1 attached client disconnects.
Env []string // List of environment variable to set in the container
Cmd strslice.StrSlice // Command to run when starting the container
Healthcheck *HealthConfig `json:",omitempty"` // Healthcheck describes how to check the container is healthy
ArgsEscaped bool `json:",omitempty"` // True if command is already escaped (Windows specific)
Image string // Name of the image as it was passed by the operator (e.g. could be symbolic)
Volumes map[string]struct{} // List of volumes (mounts) used for the container
WorkingDir string // Current directory (PWD) in the command will be launched
Entrypoint strslice.StrSlice // Entrypoint to run when starting the container
NetworkDisabled bool `json:",omitempty"` // Is network disabled
MacAddress string `json:",omitempty"` // Mac Address of the container
OnBuild []string // ONBUILD metadata that were defined on the image Dockerfile
Labels map[string]string // List of labels set to this container
StopSignal string `json:",omitempty"` // Signal to stop a container
StopTimeout *int `json:",omitempty"` // Timeout (in seconds) to stop a container
Shell strslice.StrSlice `json:",omitempty"` // Shell for shell-form of RUN, CMD, ENTRYPOINT
Hostname string // Hostname
Domainname string // Domainname
User string // User that will run the command(s) inside the container, also support user:group
AttachStdin bool // Attach the standard input, makes possible user interaction
AttachStdout bool // Attach the standard output
AttachStderr bool // Attach the standard error
ExposedPorts nat.PortSet `json:",omitempty"` // List of exposed ports
Tty bool // Attach standard streams to a tty, including stdin if it is not closed.
OpenStdin bool // Open stdin
StdinOnce bool // If true, close stdin after the 1 attached client disconnects.
Env []string // List of environment variable to set in the container
Cmd strslice.StrSlice // Command to run when starting the container
Healthcheck *HealthConfig `json:",omitempty"` // Healthcheck describes how to check the container is healthy
ArgsEscaped bool `json:",omitempty"` // True if command is already escaped (Windows specific)
Image string // Name of the image as it was passed by the operator (e.g. could be symbolic)
Volumes map[string]struct{} // List of volumes (mounts) used for the container
WorkingDir string // Current directory (PWD) in the command will be launched
Entrypoint strslice.StrSlice // Entrypoint to run when starting the container
NetworkDisabled bool `json:",omitempty"` // Is network disabled
MacAddress string `json:",omitempty"` // Mac Address of the container
OnBuild []string // ONBUILD metadata that were defined on the image Dockerfile
Labels map[string]string // List of labels set to this container
StopSignal string `json:",omitempty"` // Signal to stop a container
StopTimeout *int `json:",omitempty"` // Timeout (in seconds) to stop a container
Shell strslice.StrSlice `json:",omitempty"` // Shell for shell-form of RUN, CMD, ENTRYPOINT
}

View File

@@ -0,0 +1,21 @@
package container
// ----------------------------------------------------------------------------
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// ContainerChangeResponseItem container change response item
// swagger:model ContainerChangeResponseItem
type ContainerChangeResponseItem struct {
// Kind of change
// Required: true
Kind uint8 `json:"Kind"`
// Path to file that has changed
// Required: true
Path string `json:"Path"`
}

View File

@@ -4,7 +4,7 @@ package container
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/swagger-gen.sh
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// ContainerCreateCreatedBody container create created body

View File

@@ -0,0 +1,21 @@
package container
// ----------------------------------------------------------------------------
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// ContainerTopOKBody container top o k body
// swagger:model ContainerTopOKBody
type ContainerTopOKBody struct {
// Each process running in the container, where each is process is an array of values corresponding to the titles
// Required: true
Processes [][]string `json:"Processes"`
// The ps column titles
// Required: true
Titles []string `json:"Titles"`
}

View File

@@ -4,7 +4,7 @@ package container
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/swagger-gen.sh
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// ContainerUpdateOKBody container update o k body

View File

@@ -4,7 +4,7 @@ package container
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/swagger-gen.sh
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// ContainerWaitOKBody container wait o k body

View File

@@ -10,9 +10,6 @@ import (
"github.com/docker/go-units"
)
// NetworkMode represents the container network stack.
type NetworkMode string
// Isolation represents the isolation technology of a container. The supported
// values are platform specific
type Isolation string
@@ -66,6 +63,47 @@ func (n IpcMode) Container() string {
return ""
}
// NetworkMode represents the container network stack.
type NetworkMode string
// IsNone indicates whether container isn't using a network stack.
func (n NetworkMode) IsNone() bool {
return n == "none"
}
// IsDefault indicates whether container uses the default network stack.
func (n NetworkMode) IsDefault() bool {
return n == "default"
}
// IsPrivate indicates whether container uses its private network stack.
func (n NetworkMode) IsPrivate() bool {
return !(n.IsHost() || n.IsContainer())
}
// IsContainer indicates whether container uses a container network stack.
func (n NetworkMode) IsContainer() bool {
parts := strings.SplitN(string(n), ":", 2)
return len(parts) > 1 && parts[0] == "container"
}
// ConnectedContainer is the id of the container which network this container is connected to.
func (n NetworkMode) ConnectedContainer() string {
parts := strings.SplitN(string(n), ":", 2)
if len(parts) > 1 {
return parts[1]
}
return ""
}
//UserDefined indicates user-created network
func (n NetworkMode) UserDefined() string {
if n.IsUserDefined() {
return string(n)
}
return ""
}
// UsernsMode represents userns mode in the container.
type UsernsMode string
@@ -223,6 +261,17 @@ func (rp *RestartPolicy) IsSame(tp *RestartPolicy) bool {
return rp.Name == tp.Name && rp.MaximumRetryCount == tp.MaximumRetryCount
}
// LogMode is a type to define the available modes for logging
// These modes affect how logs are handled when log messages start piling up.
type LogMode string
// Available logging modes
const (
LogModeUnset = ""
LogModeBlocking LogMode = "blocking"
LogModeNonBlock LogMode = "non-blocking"
)
// LogConfig represents the logging configuration of the container.
type LogConfig struct {
Type string
@@ -251,6 +300,7 @@ type Resources struct {
CpusetCpus string // CpusetCpus 0-2, 0,1
CpusetMems string // CpusetMems 0-2, 0,1
Devices []DeviceMapping // List of devices to map inside the container
DeviceCgroupRules []string // List of rule to be added to the device cgroup
DiskQuota int64 // Disk limit (in bytes)
KernelMemory int64 // Kernel memory limit (in bytes)
MemoryReservation int64 // Memory soft limit (in bytes)
@@ -317,7 +367,7 @@ type HostConfig struct {
// Applicable to Windows
ConsoleSize [2]uint // Initial console size (height,width)
Isolation Isolation // Isolation technology of the container (eg default, hyperv)
Isolation Isolation // Isolation technology of the container (e.g. default, hyperv)
// Contains container's resources (cgroups, ulimits)
Resources
@@ -327,7 +377,4 @@ type HostConfig struct {
// Run a custom init inside the container, if null, use the daemon's configured settings
Init *bool `json:",omitempty"`
// Custom init path
InitPath string `json:",omitempty"`
}

View File

@@ -2,23 +2,11 @@
package container
import "strings"
// IsValid indicates if an isolation technology is valid
func (i Isolation) IsValid() bool {
return i.IsDefault()
}
// IsPrivate indicates whether container uses its private network stack.
func (n NetworkMode) IsPrivate() bool {
return !(n.IsHost() || n.IsContainer())
}
// IsDefault indicates whether container uses the default network stack.
func (n NetworkMode) IsDefault() bool {
return n == "default"
}
// NetworkName returns the name of the network stack.
func (n NetworkMode) NetworkName() string {
if n.IsBridge() {
@@ -47,35 +35,7 @@ func (n NetworkMode) IsHost() bool {
return n == "host"
}
// IsContainer indicates whether container uses a container network stack.
func (n NetworkMode) IsContainer() bool {
parts := strings.SplitN(string(n), ":", 2)
return len(parts) > 1 && parts[0] == "container"
}
// IsNone indicates whether container isn't using a network stack.
func (n NetworkMode) IsNone() bool {
return n == "none"
}
// ConnectedContainer is the id of the container which network this container is connected to.
func (n NetworkMode) ConnectedContainer() string {
parts := strings.SplitN(string(n), ":", 2)
if len(parts) > 1 {
return parts[1]
}
return ""
}
// IsUserDefined indicates user-created network
func (n NetworkMode) IsUserDefined() bool {
return !n.IsDefault() && !n.IsBridge() && !n.IsHost() && !n.IsNone() && !n.IsContainer()
}
//UserDefined indicates user-created network
func (n NetworkMode) UserDefined() string {
if n.IsUserDefined() {
return string(n)
}
return ""
}

View File

@@ -4,22 +4,6 @@ import (
"strings"
)
// IsDefault indicates whether container uses the default network stack.
func (n NetworkMode) IsDefault() bool {
return n == "default"
}
// IsNone indicates whether container isn't using a network stack.
func (n NetworkMode) IsNone() bool {
return n == "none"
}
// IsContainer indicates whether container uses a container network stack.
// Returns false as windows doesn't support this mode
func (n NetworkMode) IsContainer() bool {
return false
}
// IsBridge indicates whether container uses the bridge network stack
// in windows it is given the name NAT
func (n NetworkMode) IsBridge() bool {
@@ -32,20 +16,9 @@ func (n NetworkMode) IsHost() bool {
return false
}
// IsPrivate indicates whether container uses its private network stack.
func (n NetworkMode) IsPrivate() bool {
return !(n.IsHost() || n.IsContainer())
}
// ConnectedContainer is the id of the container which network this container is connected to.
// Returns blank string on windows
func (n NetworkMode) ConnectedContainer() string {
return ""
}
// IsUserDefined indicates user-created network
func (n NetworkMode) IsUserDefined() bool {
return !n.IsDefault() && !n.IsNone() && !n.IsBridge()
return !n.IsDefault() && !n.IsNone() && !n.IsBridge() && !n.IsContainer()
}
// IsHyperV indicates the use of a Hyper-V partition for isolation
@@ -71,17 +44,11 @@ func (n NetworkMode) NetworkName() string {
return "nat"
} else if n.IsNone() {
return "none"
} else if n.IsContainer() {
return "container"
} else if n.IsUserDefined() {
return n.UserDefined()
}
return ""
}
//UserDefined indicates user-created network
func (n NetworkMode) UserDefined() string {
if n.IsUserDefined() {
return string(n)
}
return ""
}

View File

@@ -1,14 +0,0 @@
package container
import "os"
// ContainerSecret represents a secret in a container. This gets realized
// in the container tmpfs
type ContainerSecret struct {
Name string
Target string
Data []byte
UID string
GID string
Mode os.FileMode
}

View File

@@ -79,8 +79,8 @@ func ToParamWithVersion(version string, a Args) (string, error) {
}
// for daemons older than v1.10, filter must be of the form map[string][]string
buf := []byte{}
err := errors.New("")
var buf []byte
var err error
if version != "" && versions.LessThan(version, "1.22") {
buf, err = json.Marshal(convertArgsToSlice(a.fields))
} else {
@@ -144,6 +144,9 @@ func (filters Args) Add(name, value string) {
func (filters Args) Del(name, value string) {
if _, ok := filters.fields[name]; ok {
delete(filters.fields[name], value)
if len(filters.fields[name]) == 0 {
delete(filters.fields, name)
}
}
}

View File

@@ -1,7 +1,7 @@
package filters
import (
"fmt"
"errors"
"testing"
)
@@ -23,10 +23,10 @@ func TestParseArgs(t *testing.T) {
}
}
if len(args.Get("created")) != 1 {
t.Errorf("failed to set this arg")
t.Error("failed to set this arg")
}
if len(args.Get("image.name")) != 2 {
t.Errorf("the args should have collapsed")
t.Error("the args should have collapsed")
}
}
@@ -147,7 +147,7 @@ func TestEmpty(t *testing.T) {
t.Errorf("%s", err)
}
if a.Len() != v1.Len() {
t.Errorf("these should both be empty sets")
t.Error("these should both be empty sets")
}
}
@@ -284,18 +284,18 @@ func TestDel(t *testing.T) {
f.Del("status", "running")
v := f.fields["status"]
if v["running"] {
t.Fatalf("Expected to not include a running status filter, got true")
t.Fatal("Expected to not include a running status filter, got true")
}
}
func TestLen(t *testing.T) {
f := NewArgs()
if f.Len() != 0 {
t.Fatalf("Expected to not include any field")
t.Fatal("Expected to not include any field")
}
f.Add("status", "running")
if f.Len() != 1 {
t.Fatalf("Expected to include one field")
t.Fatal("Expected to include one field")
}
}
@@ -303,18 +303,18 @@ func TestExactMatch(t *testing.T) {
f := NewArgs()
if !f.ExactMatch("status", "running") {
t.Fatalf("Expected to match `running` when there are no filters, got false")
t.Fatal("Expected to match `running` when there are no filters, got false")
}
f.Add("status", "running")
f.Add("status", "pause*")
if !f.ExactMatch("status", "running") {
t.Fatalf("Expected to match `running` with one of the filters, got false")
t.Fatal("Expected to match `running` with one of the filters, got false")
}
if f.ExactMatch("status", "paused") {
t.Fatalf("Expected to not match `paused` with one of the filters, got true")
t.Fatal("Expected to not match `paused` with one of the filters, got true")
}
}
@@ -322,33 +322,33 @@ func TestOnlyOneExactMatch(t *testing.T) {
f := NewArgs()
if !f.UniqueExactMatch("status", "running") {
t.Fatalf("Expected to match `running` when there are no filters, got false")
t.Fatal("Expected to match `running` when there are no filters, got false")
}
f.Add("status", "running")
if !f.UniqueExactMatch("status", "running") {
t.Fatalf("Expected to match `running` with one of the filters, got false")
t.Fatal("Expected to match `running` with one of the filters, got false")
}
if f.UniqueExactMatch("status", "paused") {
t.Fatalf("Expected to not match `paused` with one of the filters, got true")
t.Fatal("Expected to not match `paused` with one of the filters, got true")
}
f.Add("status", "pause")
if f.UniqueExactMatch("status", "running") {
t.Fatalf("Expected to not match only `running` with two filters, got true")
t.Fatal("Expected to not match only `running` with two filters, got true")
}
}
func TestInclude(t *testing.T) {
f := NewArgs()
if f.Include("status") {
t.Fatalf("Expected to not include a status key, got true")
t.Fatal("Expected to not include a status key, got true")
}
f.Add("status", "running")
if !f.Include("status") {
t.Fatalf("Expected to include a status key, got false")
t.Fatal("Expected to include a status key, got false")
}
}
@@ -367,7 +367,7 @@ func TestValidate(t *testing.T) {
f.Add("bogus", "running")
if err := f.Validate(valid); err == nil {
t.Fatalf("Expected to return an error, got nil")
t.Fatal("Expected to return an error, got nil")
}
}
@@ -384,14 +384,14 @@ func TestWalkValues(t *testing.T) {
})
err := f.WalkValues("status", func(value string) error {
return fmt.Errorf("return")
return errors.New("return")
})
if err == nil {
t.Fatalf("Expected to get an error, got nil")
t.Fatal("Expected to get an error, got nil")
}
err = f.WalkValues("foo", func(value string) error {
return fmt.Errorf("return")
return errors.New("return")
})
if err != nil {
t.Fatalf("Expected to not iterate when the field doesn't exist, got %v", err)

View File

@@ -0,0 +1,17 @@
package types
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
// GraphDriverData Information about a container's graph driver.
// swagger:model GraphDriverData
type GraphDriverData struct {
// data
// Required: true
Data map[string]string `json:"Data"`
// name
// Required: true
Name string `json:"Name"`
}

View File

@@ -0,0 +1,37 @@
package image
// ----------------------------------------------------------------------------
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// HistoryResponseItem history response item
// swagger:model HistoryResponseItem
type HistoryResponseItem struct {
// comment
// Required: true
Comment string `json:"Comment"`
// created
// Required: true
Created int64 `json:"Created"`
// created by
// Required: true
CreatedBy string `json:"CreatedBy"`
// Id
// Required: true
ID string `json:"Id"`
// size
// Required: true
Size int64 `json:"Size"`
// tags
// Required: true
Tags []string `json:"Tags"`
}

View File

@@ -0,0 +1,15 @@
package types
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
// ImageDeleteResponseItem image delete response item
// swagger:model ImageDeleteResponseItem
type ImageDeleteResponseItem struct {
// The image ID of an image that was deleted
Deleted string `json:"Deleted,omitempty"`
// The image ID of an image that was untagged
Untagged string `json:"Untagged,omitempty"`
}

View File

@@ -23,9 +23,10 @@ type Mount struct {
// Source specifies the name of the mount. Depending on mount type, this
// may be a volume name or a host path, or even ignored.
// Source is not supported for tmpfs (must be an empty value)
Source string `json:",omitempty"`
Target string `json:",omitempty"`
ReadOnly bool `json:",omitempty"`
Source string `json:",omitempty"`
Target string `json:",omitempty"`
ReadOnly bool `json:",omitempty"`
Consistency Consistency `json:",omitempty"`
BindOptions *BindOptions `json:",omitempty"`
VolumeOptions *VolumeOptions `json:",omitempty"`
@@ -50,6 +51,30 @@ const (
PropagationSlave Propagation = "slave"
)
// Propagations is the list of all valid mount propagations
var Propagations = []Propagation{
PropagationRPrivate,
PropagationPrivate,
PropagationRShared,
PropagationShared,
PropagationRSlave,
PropagationSlave,
}
// Consistency represents the consistency requirements of a mount.
type Consistency string
const (
// ConsistencyFull guarantees bind-mount-like consistency
ConsistencyFull Consistency = "consistent"
// ConsistencyCached mounts can cache read data and FS structure
ConsistencyCached Consistency = "cached"
// ConsistencyDelegated mounts can cache read and written data and structure
ConsistencyDelegated Consistency = "delegated"
// ConsistencyDefault provides "consistent" behavior unless overridden
ConsistencyDefault Consistency = "default"
)
// BindOptions defines options specific to mounts of type "bind".
type BindOptions struct {
Propagation Propagation `json:",omitempty"`
@@ -73,7 +98,7 @@ type TmpfsOptions struct {
// Size sets the size of the tmpfs, in bytes.
//
// This will be converted to an operating system specific value
// depending on the host. For example, on linux, it will be convered to
// depending on the host. For example, on linux, it will be converted to
// use a 'k', 'm' or 'g' syntax. BSD, though not widely supported with
// docker, uses a straight byte value.
//

View File

@@ -28,7 +28,15 @@ type EndpointIPAMConfig struct {
LinkLocalIPs []string `json:",omitempty"`
}
// PeerInfo represents one peer of a overlay network
// Copy makes a copy of the endpoint ipam config
func (cfg *EndpointIPAMConfig) Copy() *EndpointIPAMConfig {
cfgCopy := *cfg
cfgCopy.LinkLocalIPs = make([]string, 0, len(cfg.LinkLocalIPs))
cfgCopy.LinkLocalIPs = append(cfgCopy.LinkLocalIPs, cfg.LinkLocalIPs...)
return &cfgCopy
}
// PeerInfo represents one peer of an overlay network
type PeerInfo struct {
Name string
IP string
@@ -52,6 +60,41 @@ type EndpointSettings struct {
MacAddress string
}
// Task carries the information about one backend task
type Task struct {
Name string
EndpointID string
EndpointIP string
Info map[string]string
}
// ServiceInfo represents service parameters with the list of service's tasks
type ServiceInfo struct {
VIP string
Ports []string
LocalLBIndex int
Tasks []Task
}
// Copy makes a deep copy of `EndpointSettings`
func (es *EndpointSettings) Copy() *EndpointSettings {
epCopy := *es
if es.IPAMConfig != nil {
epCopy.IPAMConfig = es.IPAMConfig.Copy()
}
if es.Links != nil {
links := make([]string, 0, len(es.Links))
epCopy.Links = append(links, es.Links...)
}
if es.Aliases != nil {
aliases := make([]string, 0, len(es.Aliases))
epCopy.Aliases = append(aliases, es.Aliases...)
}
return &epCopy
}
// NetworkingConfig represents the container's networking configuration for each of its interfaces
// Carries the networking configs specified in the `docker run` and `docker network connect` commands
type NetworkingConfig struct {

View File

@@ -3,7 +3,7 @@ package types
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
// Plugin A plugin for the Remote API
// Plugin A plugin for the Engine API
// swagger:model Plugin
type Plugin struct {
@@ -22,13 +22,12 @@ type Plugin struct {
// Required: true
Name string `json:"Name"`
// plugin remote reference used to push/pull the plugin
PluginReference string `json:"PluginReference,omitempty"`
// settings
// Required: true
Settings PluginSettings `json:"Settings"`
// tag
// Required: true
Tag string `json:"Tag"`
}
// PluginConfig The config of a plugin.
@@ -39,17 +38,12 @@ type PluginConfig struct {
// Required: true
Args PluginConfigArgs `json:"Args"`
// capabilities
// Required: true
Capabilities []string `json:"Capabilities"`
// description
// Required: true
Description string `json:"Description"`
// devices
// Required: true
Devices []PluginDevice `json:"Devices"`
// Docker Version used to create the plugin
DockerVersion string `json:"DockerVersion,omitempty"`
// documentation
// Required: true
@@ -67,6 +61,14 @@ type PluginConfig struct {
// Required: true
Interface PluginConfigInterface `json:"Interface"`
// ipc host
// Required: true
IpcHost bool `json:"IpcHost"`
// linux
// Required: true
Linux PluginConfigLinux `json:"Linux"`
// mounts
// Required: true
Mounts []PluginMount `json:"Mounts"`
@@ -75,12 +77,23 @@ type PluginConfig struct {
// Required: true
Network PluginConfigNetwork `json:"Network"`
// pid host
// Required: true
PidHost bool `json:"PidHost"`
// propagated mount
// Required: true
PropagatedMount string `json:"PropagatedMount"`
// user
User PluginConfigUser `json:"User,omitempty"`
// workdir
// work dir
// Required: true
Workdir string `json:"Workdir"`
WorkDir string `json:"WorkDir"`
// rootfs
Rootfs *PluginConfigRootfs `json:"rootfs,omitempty"`
}
// PluginConfigArgs plugin config args
@@ -117,6 +130,23 @@ type PluginConfigInterface struct {
Types []PluginInterfaceType `json:"Types"`
}
// PluginConfigLinux plugin config linux
// swagger:model PluginConfigLinux
type PluginConfigLinux struct {
// allow all devices
// Required: true
AllowAllDevices bool `json:"AllowAllDevices"`
// capabilities
// Required: true
Capabilities []string `json:"Capabilities"`
// devices
// Required: true
Devices []PluginDevice `json:"Devices"`
}
// PluginConfigNetwork plugin config network
// swagger:model PluginConfigNetwork
type PluginConfigNetwork struct {
@@ -126,6 +156,17 @@ type PluginConfigNetwork struct {
Type string `json:"Type"`
}
// PluginConfigRootfs plugin config rootfs
// swagger:model PluginConfigRootfs
type PluginConfigRootfs struct {
// diff ids
DiffIds []string `json:"diff_ids"`
// type
Type string `json:"type,omitempty"`
}
// PluginConfigUser plugin config user
// swagger:model PluginConfigUser
type PluginConfigUser struct {

View File

@@ -3,9 +3,10 @@ package types
import (
"encoding/json"
"fmt"
"sort"
)
// PluginsListResponse contains the response for the remote API
// PluginsListResponse contains the response for the Engine API
type PluginsListResponse []*Plugin
const (
@@ -62,3 +63,17 @@ type PluginPrivilege struct {
// PluginPrivileges is a list of PluginPrivilege
type PluginPrivileges []PluginPrivilege
func (s PluginPrivileges) Len() int {
return len(s)
}
func (s PluginPrivileges) Less(i, j int) bool {
return s[i].Name < s[j].Name
}
func (s PluginPrivileges) Swap(i, j int) {
sort.Strings(s[i].Value)
sort.Strings(s[j].Value)
s[i], s[j] = s[j], s[i]
}

View File

@@ -0,0 +1,449 @@
// Code generated by protoc-gen-gogo.
// source: entry.proto
// DO NOT EDIT!
/*
Package logdriver is a generated protocol buffer package.
It is generated from these files:
entry.proto
It has these top-level messages:
LogEntry
*/
package logdriver
import proto "github.com/gogo/protobuf/proto"
import fmt "fmt"
import math "math"
import io "io"
// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf
// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.GoGoProtoPackageIsVersion2 // please upgrade the proto package
type LogEntry struct {
Source string `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
TimeNano int64 `protobuf:"varint,2,opt,name=time_nano,json=timeNano,proto3" json:"time_nano,omitempty"`
Line []byte `protobuf:"bytes,3,opt,name=line,proto3" json:"line,omitempty"`
Partial bool `protobuf:"varint,4,opt,name=partial,proto3" json:"partial,omitempty"`
}
func (m *LogEntry) Reset() { *m = LogEntry{} }
func (m *LogEntry) String() string { return proto.CompactTextString(m) }
func (*LogEntry) ProtoMessage() {}
func (*LogEntry) Descriptor() ([]byte, []int) { return fileDescriptorEntry, []int{0} }
func (m *LogEntry) GetSource() string {
if m != nil {
return m.Source
}
return ""
}
func (m *LogEntry) GetTimeNano() int64 {
if m != nil {
return m.TimeNano
}
return 0
}
func (m *LogEntry) GetLine() []byte {
if m != nil {
return m.Line
}
return nil
}
func (m *LogEntry) GetPartial() bool {
if m != nil {
return m.Partial
}
return false
}
func init() {
proto.RegisterType((*LogEntry)(nil), "LogEntry")
}
func (m *LogEntry) Marshal() (dAtA []byte, err error) {
size := m.Size()
dAtA = make([]byte, size)
n, err := m.MarshalTo(dAtA)
if err != nil {
return nil, err
}
return dAtA[:n], nil
}
func (m *LogEntry) MarshalTo(dAtA []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.Source) > 0 {
dAtA[i] = 0xa
i++
i = encodeVarintEntry(dAtA, i, uint64(len(m.Source)))
i += copy(dAtA[i:], m.Source)
}
if m.TimeNano != 0 {
dAtA[i] = 0x10
i++
i = encodeVarintEntry(dAtA, i, uint64(m.TimeNano))
}
if len(m.Line) > 0 {
dAtA[i] = 0x1a
i++
i = encodeVarintEntry(dAtA, i, uint64(len(m.Line)))
i += copy(dAtA[i:], m.Line)
}
if m.Partial {
dAtA[i] = 0x20
i++
if m.Partial {
dAtA[i] = 1
} else {
dAtA[i] = 0
}
i++
}
return i, nil
}
func encodeFixed64Entry(dAtA []byte, offset int, v uint64) int {
dAtA[offset] = uint8(v)
dAtA[offset+1] = uint8(v >> 8)
dAtA[offset+2] = uint8(v >> 16)
dAtA[offset+3] = uint8(v >> 24)
dAtA[offset+4] = uint8(v >> 32)
dAtA[offset+5] = uint8(v >> 40)
dAtA[offset+6] = uint8(v >> 48)
dAtA[offset+7] = uint8(v >> 56)
return offset + 8
}
func encodeFixed32Entry(dAtA []byte, offset int, v uint32) int {
dAtA[offset] = uint8(v)
dAtA[offset+1] = uint8(v >> 8)
dAtA[offset+2] = uint8(v >> 16)
dAtA[offset+3] = uint8(v >> 24)
return offset + 4
}
func encodeVarintEntry(dAtA []byte, offset int, v uint64) int {
for v >= 1<<7 {
dAtA[offset] = uint8(v&0x7f | 0x80)
v >>= 7
offset++
}
dAtA[offset] = uint8(v)
return offset + 1
}
func (m *LogEntry) Size() (n int) {
var l int
_ = l
l = len(m.Source)
if l > 0 {
n += 1 + l + sovEntry(uint64(l))
}
if m.TimeNano != 0 {
n += 1 + sovEntry(uint64(m.TimeNano))
}
l = len(m.Line)
if l > 0 {
n += 1 + l + sovEntry(uint64(l))
}
if m.Partial {
n += 2
}
return n
}
func sovEntry(x uint64) (n int) {
for {
n++
x >>= 7
if x == 0 {
break
}
}
return n
}
func sozEntry(x uint64) (n int) {
return sovEntry(uint64((x << 1) ^ uint64((int64(x) >> 63))))
}
func (m *LogEntry) Unmarshal(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowEntry
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: LogEntry: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: LogEntry: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Source", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowEntry
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthEntry
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Source = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field TimeNano", wireType)
}
m.TimeNano = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowEntry
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
m.TimeNano |= (int64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Line", wireType)
}
var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowEntry
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
byteLen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if byteLen < 0 {
return ErrInvalidLengthEntry
}
postIndex := iNdEx + byteLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Line = append(m.Line[:0], dAtA[iNdEx:postIndex]...)
if m.Line == nil {
m.Line = []byte{}
}
iNdEx = postIndex
case 4:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Partial", wireType)
}
var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowEntry
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
v |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
m.Partial = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := skipEntry(dAtA[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthEntry
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipEntry(dAtA []byte) (n int, err error) {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEntry
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
wireType := int(wire & 0x7)
switch wireType {
case 0:
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEntry
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
iNdEx++
if dAtA[iNdEx-1] < 0x80 {
break
}
}
return iNdEx, nil
case 1:
iNdEx += 8
return iNdEx, nil
case 2:
var length int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEntry
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
length |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
iNdEx += length
if length < 0 {
return 0, ErrInvalidLengthEntry
}
return iNdEx, nil
case 3:
for {
var innerWire uint64
var start int = iNdEx
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return 0, ErrIntOverflowEntry
}
if iNdEx >= l {
return 0, io.ErrUnexpectedEOF
}
b := dAtA[iNdEx]
iNdEx++
innerWire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
innerWireType := int(innerWire & 0x7)
if innerWireType == 4 {
break
}
next, err := skipEntry(dAtA[start:])
if err != nil {
return 0, err
}
iNdEx = start + next
}
return iNdEx, nil
case 4:
return iNdEx, nil
case 5:
iNdEx += 4
return iNdEx, nil
default:
return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
}
}
panic("unreachable")
}
var (
ErrInvalidLengthEntry = fmt.Errorf("proto: negative length found during unmarshaling")
ErrIntOverflowEntry = fmt.Errorf("proto: integer overflow")
)
func init() { proto.RegisterFile("entry.proto", fileDescriptorEntry) }
var fileDescriptorEntry = []byte{
// 149 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xe2, 0xe2, 0x4e, 0xcd, 0x2b, 0x29,
0xaa, 0xd4, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x57, 0xca, 0xe5, 0xe2, 0xf0, 0xc9, 0x4f, 0x77, 0x05,
0x89, 0x08, 0x89, 0x71, 0xb1, 0x15, 0xe7, 0x97, 0x16, 0x25, 0xa7, 0x4a, 0x30, 0x2a, 0x30, 0x6a,
0x70, 0x06, 0x41, 0x79, 0x42, 0xd2, 0x5c, 0x9c, 0x25, 0x99, 0xb9, 0xa9, 0xf1, 0x79, 0x89, 0x79,
0xf9, 0x12, 0x4c, 0x0a, 0x8c, 0x1a, 0xcc, 0x41, 0x1c, 0x20, 0x01, 0xbf, 0xc4, 0xbc, 0x7c, 0x21,
0x21, 0x2e, 0x96, 0x9c, 0xcc, 0xbc, 0x54, 0x09, 0x66, 0x05, 0x46, 0x0d, 0x9e, 0x20, 0x30, 0x5b,
0x48, 0x82, 0x8b, 0xbd, 0x20, 0xb1, 0xa8, 0x24, 0x33, 0x31, 0x47, 0x82, 0x45, 0x81, 0x51, 0x83,
0x23, 0x08, 0xc6, 0x75, 0xe2, 0x39, 0xf1, 0x48, 0x8e, 0xf1, 0xc2, 0x23, 0x39, 0xc6, 0x07, 0x8f,
0xe4, 0x18, 0x93, 0xd8, 0xc0, 0x6e, 0x30, 0x06, 0x04, 0x00, 0x00, 0xff, 0xff, 0x2d, 0x24, 0x5a,
0xd4, 0x92, 0x00, 0x00, 0x00,
}

View File

@@ -0,0 +1,8 @@
syntax = "proto3";
message LogEntry {
string source = 1;
int64 time_nano = 2;
bytes line = 3;
bool partial = 4;
}

View File

@@ -0,0 +1,3 @@
//go:generate protoc --gogofast_out=import_path=github.com/docker/docker/api/types/plugins/logdriver:. entry.proto
package logdriver

View File

@@ -0,0 +1,87 @@
package logdriver
import (
"encoding/binary"
"io"
)
const binaryEncodeLen = 4
// LogEntryEncoder encodes a LogEntry to a protobuf stream
// The stream should look like:
//
// [uint32 binary encoded message size][protobuf message]
//
// To decode an entry, read the first 4 bytes to get the size of the entry,
// then read `size` bytes from the stream.
type LogEntryEncoder interface {
Encode(*LogEntry) error
}
// NewLogEntryEncoder creates a protobuf stream encoder for log entries.
// This is used to write out log entries to a stream.
func NewLogEntryEncoder(w io.Writer) LogEntryEncoder {
return &logEntryEncoder{
w: w,
buf: make([]byte, 1024),
}
}
type logEntryEncoder struct {
buf []byte
w io.Writer
}
func (e *logEntryEncoder) Encode(l *LogEntry) error {
n := l.Size()
total := n + binaryEncodeLen
if total > len(e.buf) {
e.buf = make([]byte, total)
}
binary.BigEndian.PutUint32(e.buf, uint32(n))
if _, err := l.MarshalTo(e.buf[binaryEncodeLen:]); err != nil {
return err
}
_, err := e.w.Write(e.buf[:total])
return err
}
// LogEntryDecoder decodes log entries from a stream
// It is expected that the wire format is as defined by LogEntryEncoder.
type LogEntryDecoder interface {
Decode(*LogEntry) error
}
// NewLogEntryDecoder creates a new stream decoder for log entries
func NewLogEntryDecoder(r io.Reader) LogEntryDecoder {
return &logEntryDecoder{
lenBuf: make([]byte, binaryEncodeLen),
buf: make([]byte, 1024),
r: r,
}
}
type logEntryDecoder struct {
r io.Reader
lenBuf []byte
buf []byte
}
func (d *logEntryDecoder) Decode(l *LogEntry) error {
_, err := io.ReadFull(d.r, d.lenBuf)
if err != nil {
return err
}
size := int(binary.BigEndian.Uint32(d.lenBuf))
if len(d.buf) < size {
d.buf = make([]byte, size)
}
if _, err := io.ReadFull(d.r, d.buf[:size]); err != nil {
return err
}
return l.Unmarshal(d.buf[:size])
}

View File

@@ -1,34 +0,0 @@
package reference
import (
distreference "github.com/docker/distribution/reference"
)
// Parse parses the given references and returns the repository and
// tag (if present) from it. If there is an error during parsing, it will
// return an error.
func Parse(ref string) (string, string, error) {
distributionRef, err := distreference.ParseNamed(ref)
if err != nil {
return "", "", err
}
tag := GetTagFromNamedRef(distributionRef)
return distributionRef.Name(), tag, nil
}
// GetTagFromNamedRef returns a tag from the specified reference.
// This function is necessary as long as the docker "server" api makes the distinction between repository
// and tags.
func GetTagFromNamedRef(ref distreference.Named) string {
var tag string
switch x := ref.(type) {
case distreference.Digested:
tag = x.Digest().String()
case distreference.NamedTagged:
tag = x.Tag()
default:
tag = "latest"
}
return tag
}

View File

@@ -1,72 +0,0 @@
package reference
import (
"testing"
)
func TestParse(t *testing.T) {
testCases := []struct {
ref string
expectedName string
expectedTag string
expectedError bool
}{
{
ref: "",
expectedName: "",
expectedTag: "",
expectedError: true,
},
{
ref: "repository",
expectedName: "repository",
expectedTag: "latest",
expectedError: false,
},
{
ref: "repository:tag",
expectedName: "repository",
expectedTag: "tag",
expectedError: false,
},
{
ref: "test.com/repository",
expectedName: "test.com/repository",
expectedTag: "latest",
expectedError: false,
},
{
ref: "test.com:5000/test/repository",
expectedName: "test.com:5000/test/repository",
expectedTag: "latest",
expectedError: false,
},
{
ref: "test.com:5000/repo@sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
expectedName: "test.com:5000/repo",
expectedTag: "sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
expectedError: false,
},
{
ref: "test.com:5000/repo:tag@sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
expectedName: "test.com:5000/repo",
expectedTag: "sha256:ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
expectedError: false,
},
}
for _, c := range testCases {
name, tag, err := Parse(c.ref)
if err != nil && c.expectedError {
continue
} else if err != nil {
t.Fatalf("error with %s: %s", c.ref, err.Error())
}
if name != c.expectedName {
t.Fatalf("expected name %s, got %s", c.expectedName, name)
}
if tag != c.expectedTag {
t.Fatalf("expected tag %s, got %s", c.expectedTag, tag)
}
}
}

View File

@@ -4,7 +4,7 @@ package registry
// DO NOT EDIT THIS FILE
// This file was generated by `swagger generate operation`
//
// See hack/swagger-gen.sh
// See hack/generate-swagger-api.sh
// ----------------------------------------------------------------------------
// AuthenticateOKBody authenticate o k body

View File

@@ -10,7 +10,7 @@ type Seccomp struct {
Syscalls []*Syscall `json:"syscalls"`
}
// Architecture is used to represent an specific architecture
// Architecture is used to represent a specific architecture
// and its sub-architectures
type Architecture struct {
Arch Arch `json:"architecture"`

View File

@@ -0,0 +1,12 @@
package types
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command
// ServiceUpdateResponse service update response
// swagger:model ServiceUpdateResponse
type ServiceUpdateResponse struct {
// Optional warning messages
Warnings []string `json:"Warnings"`
}

View File

@@ -47,6 +47,9 @@ type CPUStats struct {
// System Usage. Linux only.
SystemUsage uint64 `json:"system_cpu_usage,omitempty"`
// Online CPUs. Linux only.
OnlineCPUs uint32 `json:"online_cpus,omitempty"`
// Throttling Data. Linux only.
ThrottlingData ThrottlingData `json:"throttling_data,omitempty"`
}

View File

@@ -17,5 +17,11 @@ type Meta struct {
// Annotations represents how to describe an object.
type Annotations struct {
Name string `json:",omitempty"`
Labels map[string]string `json:",omitempty"`
Labels map[string]string `json:"Labels"`
}
// Driver represents a driver (network, logging).
type Driver struct {
Name string `json:",omitempty"`
Options map[string]string `json:",omitempty"`
}

View File

@@ -21,6 +21,28 @@ type DNSConfig struct {
Options []string `json:",omitempty"`
}
// SELinuxContext contains the SELinux labels of the container.
type SELinuxContext struct {
Disable bool
User string
Role string
Type string
Level string
}
// CredentialSpec for managed service account (Windows only)
type CredentialSpec struct {
File string
Registry string
}
// Privileges defines the security options for the container.
type Privileges struct {
CredentialSpec *CredentialSpec
SELinuxContext *SELinuxContext
}
// ContainerSpec represents the spec of a container.
type ContainerSpec struct {
Image string `json:",omitempty"`
@@ -32,8 +54,11 @@ type ContainerSpec struct {
Dir string `json:",omitempty"`
User string `json:",omitempty"`
Groups []string `json:",omitempty"`
Privileges *Privileges `json:",omitempty"`
StopSignal string `json:",omitempty"`
TTY bool `json:",omitempty"`
OpenStdin bool `json:",omitempty"`
ReadOnly bool `json:",omitempty"`
Mounts []mount.Mount `json:",omitempty"`
StopGracePeriod *time.Duration `json:",omitempty"`
Healthcheck *container.HealthConfig `json:",omitempty"`

View File

@@ -82,6 +82,7 @@ type NetworkSpec struct {
IPv6Enabled bool `json:",omitempty"`
Internal bool `json:",omitempty"`
Attachable bool `json:",omitempty"`
Ingress bool `json:",omitempty"`
IPAMOptions *IPAMOptions `json:",omitempty"`
}
@@ -109,9 +110,3 @@ type IPAMConfig struct {
Range string `json:",omitempty"`
Gateway string `json:",omitempty"`
}
// Driver represents a network driver.
type Driver struct {
Name string `json:",omitempty"`
Options map[string]string `json:",omitempty"`
}

Some files were not shown because too many files have changed in this diff Show More