Commit Graph

31121 Commits

Author SHA1 Message Date
Vincent Demeester ee40f7aac0 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>
Upstream-commit: 4300e5e8818571a55e00d9987bec3ad6ca92dc6f
Component: engine
2017-01-02 11:03:53 +01:00
Daniel Zhang 1fc6e0566f API: Delete container can return 409, but that isn't documented. #29796
Signed-off-by: Daniel Zhang <jmzwcn@gmail.com>
Upstream-commit: c0cf14a73c38bf573803be8bc50af95a411732ba
Component: engine
2017-01-01 16:01:56 +08:00
Harald Albers 8f0e0230a0 Fix usage message of plugin inspect
Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: 1b58d0bc51e2bfc9e268dab762d1d891c18890c9
Component: engine
2016-12-31 09:55:04 -08:00
Harald Albers 27bc1bbbd5 Add bash completion for plugin disable --force
Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: e1403453f0a173464ef209e18e661320100a7b42
Component: engine
2016-12-31 09:28:03 -08:00
Harald Albers fe11e96060 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>
Upstream-commit: 390effdd11a64f445d9932b6dbc04113b4687dea
Component: engine
2016-12-31 09:23:46 -08:00
Sebastiaan van Stijn b86a1135cd 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>
Upstream-commit: e91953407c310b476c44bd82a00b6c6ce64ee7c6
Component: engine
2016-12-31 14:55:29 +01:00
Sebastiaan van Stijn 7ecfbf4c71 document DOCKER_HIDE_LEGACY_COMMANDS env-var
The `DOCKER_HIDE_LEGACY_COMMANDS` environment
variable was added in a7c8bcac2ba60d6dd25a1157085d9245bed556ce
but not documented.

This adds the variable to the documentation.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 2ef82fd23789c906acf9dd06b3be10568ca7191d
Component: engine
2016-12-31 14:17:34 +01:00
Madhu Venugopal f64e4c361c Properly cleanup plugin states which might impact other tests
Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: 0510afc88304a465b2d2eacc6c479c572cb0c1cb
Component: engine
2016-12-30 12:28:22 -08:00
Madhu Venugopal bc659af9d7 Handle Plugin reference count during network create and delete
Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: fc2c0e623d3c7fd7f3d7e9632a765adbcc893108
Component: engine
2016-12-30 12:28:22 -08:00
Madhu Venugopal 68566df78e Vendoring libnetwork to bring in isbuiltin changes
Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: d2079a7789f26edc667b9102c25798fdb2c6d3ed
Component: engine
2016-12-30 12:26:40 -08:00
Vincent Demeester 2758f0996d Remove pkg/integration and move it to testutil or integration-cli
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 33968e6c7df164fff0a882c50ae7f4f7e6190e4b
Component: engine
2016-12-30 18:26:34 +01:00
Sebastiaan van Stijn b1ada62047 Improve usage output for docker run
Commit a77f2450c70312f8c26877a18bfe2baa44d4abb9 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>
Upstream-commit: 847ccd4867ae99d02eb882d631c2b8219450ab22
Component: engine
2016-12-30 17:35:46 +01:00
Vincent Demeester 0a5cee537e Merge pull request #29774 from miaoyq/complete-plugin-create-docs-content
Complete the document content
Upstream-commit: 5374d53322abd6a5b2ebb34b7422abc26d1b5eb3
Component: engine
2016-12-30 11:15:16 +01:00
majiuyue 00385406 31c2689d03 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>
Upstream-commit: c9e0d923ae6d2b5558378183b79d0a85ccf16020
Component: engine
2016-12-30 17:26:01 +08:00
Yanqiang Miao aa956c7c5f Optimization a error description
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
Upstream-commit: 6c021893aa12088c0ad5b18111cfa80d6008a78f
Component: engine
2016-12-30 11:58:39 +08:00
Yanqiang Miao 1b2be89310 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>
Upstream-commit: 1ebb68053e17f9b88f1265390acdce20214f2afc
Component: engine
2016-12-30 08:47:08 +08:00
Sebastiaan van Stijn d18def1e2d Merge pull request #28852 from miaoyq/rename-log-context
Rename 'context' to 'loginfo' in the logger module
Upstream-commit: a33105626870bfcbca97052b25b114e005a145ac
Component: engine
2016-12-30 01:13:49 +01:00
Sebastiaan van Stijn 6b3d2b6135 Merge pull request #28631 from likel/master
Don't do format if it's unnecessary
Upstream-commit: d6be0e98027611cfb14a3246ca797bee0936e649
Component: engine
2016-12-30 01:13:12 +01:00
Sebastiaan van Stijn a767ec924e Merge pull request #29721 from coolljt0725/follow_29365
Follow up #29365, fix fail to remove container after restart
Upstream-commit: 36ed7d58bb19e46445c81b6a00a7b75a6280e654
Component: engine
2016-12-30 00:13:13 +01:00
Tõnis Tiigi ce228c30e5 Merge pull request #29609 from dnephin/add-compose-file-package
Replace the vendored aanand/compose-file with a local copy
Upstream-commit: edaa3c6f07385f0c08bc62811508c56d821e696f
Component: engine
2016-12-29 15:12:59 -08:00
Tõnis Tiigi 7b188d600d Merge pull request #29624 from yongtang/29619-build-label-order
Sort the labels passed from `build --labels`
Upstream-commit: aacc2c88803b4b908a4e565a1dd5f7fafa5e54f0
Component: engine
2016-12-29 15:09:53 -08:00
Sebastiaan van Stijn 78bec80aa1 Merge pull request #29661 from vdemeester/integration-cli-test-environment
[integration-test] Introduce an environment package
Upstream-commit: a247bf0e99cd782a3c4e87cf70b36bf84f8e780b
Component: engine
2016-12-29 22:12:42 +01:00
Santhosh Manohar bcd39ee4b9 Update check-config.sh to include modules for FTP/TFTP
Signed-off-by: Santhosh Manohar <santhosh@docker.com>
Upstream-commit: e475136208776f68840f987d751d45690378acf2
Component: engine
2016-12-29 13:04:36 -08:00
Brian Goff 771c21fdd2 Merge pull request #29769 from duglin/FixWinTest
Fix flaky windows TestRestartRunningContainer test
Upstream-commit: 11b11e1559565aba0e662c8548fd54ebd3a98476
Component: engine
2016-12-29 15:48:43 -05:00
Sebastiaan van Stijn ce3330c6eb Merge pull request #29683 from vdemeester/runconfig-clean
Clean some stuff from runconfig that are cli only…
Upstream-commit: 1dd941077653bc93ee4141c4d2bac90534678e3f
Component: engine
2016-12-29 17:42:08 +01:00
Sebastiaan van Stijn b0d5cafbe4 Merge pull request #29770 from allencloud/fail-fast-when-filter-invlaid
fail fast when network filter invalid
Upstream-commit: 156ee508343dc36d6bda7c9d6d3072a201e5ef73
Component: engine
2016-12-29 17:38:08 +01:00
Doug Davis 6f964785d6 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>
Upstream-commit: bae22d167cd29016541a6d4f93d38f2608d8e51f
Component: engine
2016-12-29 08:13:43 -08:00
Vincent Demeester d5d31f8ddb Merge pull request #29517 from thaJeztah/update-criu
Update criu to 2.9
Upstream-commit: 83cecf820a0abbe1fc5be1c70f03a61aa2a164ee
Component: engine
2016-12-29 16:20:59 +01:00
Sebastiaan van Stijn b8997fee88 Merge pull request #29222 from yongtang/28789-plugin-inspect-follow-up
Allow ID-based `docker plugin enable/disable/rm/set`
Upstream-commit: 00cdb97f0dea4d41fac8df4813888bb8b945f0d0
Component: engine
2016-12-29 13:40:40 +01:00
Yanqiang Miao cabd6a6108 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>
Upstream-commit: 17ec911da7d4b77b069d9f6c8c010865e19acc6c
Component: engine
2016-12-29 19:13:44 +08:00
Sebastiaan van Stijn 352f3bdb52 Merge pull request #29740 from lixiaobing10051267/masterGraph2
update URL of plugins_graphdriver.md in experimental/README.md
Upstream-commit: d2b27c10a1eef7c74e3c470844c3670a2ddda1c2
Component: engine
2016-12-29 11:34:19 +01:00
Sebastiaan van Stijn 95f6620a1f Merge pull request #29478 from AkihiroSuda/fix-gcplogs-29344
gcplogs: forcibly set HOME on static UNIX binary
Upstream-commit: f635cf05ab65195616e85887302f0dec42ce5f16
Component: engine
2016-12-29 11:27:23 +01:00
Vincent Demeester 0f363a44c6 Introduce a environment package in integration-cli
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 433e2e8a1eb84ad7bb39b5206b2fdf6ac9da7b27
Component: engine
2016-12-29 11:00:50 +01:00
allencloud 82cdad076c fail fast when network filter invalid
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: ee2925e2f970a83581aadd08704b117b09377d23
Component: engine
2016-12-29 17:34:53 +08:00
Vincent Demeester 7e8e39781a Merge pull request #29687 from thaJeztah/cleanup-cli-command-container
Minor cleanups in cli/command/container
Upstream-commit: 4d5cba127b7fccdbc00cfca5fc31d7bf655d8c5e
Component: engine
2016-12-29 09:31:46 +01:00
Sebastiaan van Stijn daae214603 Merge pull request #29762 from vdemeester/integration-mini-clean
Small cleanup in `integration-cli/docker_utils.go` 👼
Upstream-commit: 79f1c9c81d43da1c5746552a0d05980ed5e6447c
Component: engine
2016-12-29 09:29:53 +01:00
Sebastiaan van Stijn 5732c11db2 Merge pull request #29371 from vdemeester/clean-integration-utils
[test-integration] Clean utils.go from most of its content
Upstream-commit: 021710fcdf61308657b8a25bbf23019535dcdd81
Component: engine
2016-12-29 09:28:46 +01:00
Xianglin Gao 6c28e79e35 exit collect when we get EOF
Signed-off-by: Xianglin Gao <xlgao@zju.edu.cn>
Upstream-commit: e03b55a2f5ce2c55699f0181350534a9e2034461
Component: engine
2016-12-29 13:38:30 +08:00
Akihiro Suda e8ed8e5184 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>
Upstream-commit: b86e3bee5aea8e72b7f08e104ebb5d6cb18f8890
Component: engine
2016-12-29 03:17:26 +00:00
lixiaobing10051267 5f3aaff6a0 update URL of plugins_graphdriver.md in experimental/README.md
Signed-off-by: lixiaobing10051267 <li.xiaobing1@zte.com.cn>
Upstream-commit: 82eeab62df6e2d62dde4e5f5daefeb4bd2063527
Component: engine
2016-12-29 10:24:06 +08:00
Brian Goff b4cbe892e8 Merge pull request #29679 from yongtang/29667-docker-build-workdir-cmd
Fix image's `CMD` after `WORKDIR` in Dockerfile
Upstream-commit: a2b12b5e82d50dad6c4a109501260f2307cf1d75
Component: engine
2016-12-28 20:26:59 -05:00
Lei Jitang 2ac27c5a50 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>
Upstream-commit: 77c725eac2820b3d5b4252f5c25bbf305657d72a
Component: engine
2016-12-28 20:08:03 -05:00
Ovidio Mallo 9b52afa0bc Reference new DigitalOcean plugin (Closes #29729)
Signed-off-by: Ovidio Mallo <ovidio.mallo@gmail.com>
Upstream-commit: ed55d71ead3fb80cab4244bed6921f984e52454a
Component: engine
2016-12-28 23:13:17 +01:00
Yong Tang ee3cf2ce35 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>
Upstream-commit: c80e74e8cc28e9b6197e68321f2402c30de3e895
Component: engine
2016-12-28 14:10:43 -08:00
Vincent Demeester 3e1dc2e4b8 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>
Upstream-commit: b2320d121ca735a3879b40d493018b2e3a1a52da
Component: engine
2016-12-28 23:00:32 +01:00
Daniel Nephin 681436c413 Read long description from a file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 78101b26afe4f7edbc4218d49238044e3feef54b
Component: engine
2016-12-28 16:08:23 -05:00
Daniel Nephin 55c8f05f0d Add validation for compose schema bindata.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 38d08b0bd1a8aa931cefd9caf837dbc9a4bb0a37
Component: engine
2016-12-28 14:45:44 -05:00
Vincent Demeester 2f9b83d720 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>
Upstream-commit: def13fa23c812d367e3c61d9c39bdcee66929c17
Component: engine
2016-12-28 19:05:48 +01:00
Brian Goff eed726f2d1 Merge pull request #29476 from vdemeester/make-set-container-name
Add the possibility to set the dev container name
Upstream-commit: 1dece339c3aed9745e5bfe858088a26969a2ee9b
Component: engine
2016-12-28 12:22:32 -05:00
Alexander Morozov 9d3a22d754 Merge pull request #29313 from vdemeester/move-cli-config
Move package cliconfig to cli/config
Upstream-commit: 4f657ff55cc91e9196ae980ddf692f763dced271
Component: engine
2016-12-28 09:05:51 -08:00