Commit Graph

1888 Commits

Author SHA1 Message Date
ec9cb4d4e9 Merge pull request #23291 from yongtang/23211-spf13-cobra-history
Use spf13/cobra for docker history
Upstream-commit: 804536df25fb8b3819a42e88da4fc94b3e449000
Component: engine
2016-06-07 10:00:39 +02:00
d313694ba9 Merge pull request #23290 from yongtang/23211-spf13-cobra-rename
Use spf13/cobra for docker rename
Upstream-commit: e83dad090a1e890ac870808d776fa584276bf7ab
Component: engine
2016-06-07 08:28:27 +02:00
69e243a9fc Merge pull request #23274 from WeiZhang555/cobra-attach
Move attach command to cobra
Upstream-commit: ab821f9f9bf15cb7d356c6e48729f706807488db
Component: engine
2016-06-06 21:16:45 -04:00
83ae608b78 Use spf13/cobra for docker rename
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker rename` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 70f7ccb304f9246bc9c2bfe0e30d3a2bd8fd42f8
Component: engine
2016-06-06 12:39:11 -07:00
812d9d1e28 Merge pull request #23306 from yongtang/23211-spf13-cobra-top
Use spf13/cobra for docker top
Upstream-commit: 5ce2f14f9bd12f1a66ad8f6f75d82d8fa8adc5e0
Component: engine
2016-06-06 10:14:10 -07:00
92cdf5f459 Merge pull request #23286 from yongtang/23211-spf13-cobra-port
Use spf13/cobra for docker port
Upstream-commit: 52da20b839f0de34c107ca80f3be1df89dcd698c
Component: engine
2016-06-06 18:55:37 +02:00
6a387aef09 Use spf13/cobra for docker history
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker history` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: a76d387cdaa0b44d7d2b7550c2eb4c0fc53e7a47
Component: engine
2016-06-06 08:03:07 -07:00
9a954be4f2 Move attach command to cobra.
Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
Upstream-commit: eceb8625a94e3504fca7b27d8156bcf11a93bf4f
Component: engine
2016-06-06 22:28:57 +08:00
0ca5072a60 Use spf13/cobra for docker top
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker top` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 0f3866926763447c247bb24268923b5e50c006e1
Component: engine
2016-06-06 06:38:43 -07:00
1f876c8511 Use spf13/cobra for docker port
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker port` to use spf13/cobra

Note: As part of this fix, a new function `RequiresMinMaxArgs(min int, max int)`
has been added in cli/required.go. This function restrict the args
to be at least min and at most max.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: d5971c230dc91fa8764dd5e9bc4124346ad06e02
Component: engine
2016-06-06 05:32:34 -07:00
49b97bdc07 Use spf13/cobra for docker wait
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker wait` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 82f84a67d6d40d4a076927c618db475191f97da0
Component: engine
2016-06-06 05:09:41 -07:00
278d68e5ce Merge pull request #23210 from vdemeester/migrate-network-command-to-cobra
Use spf13/cobra for docker network and subcommands
Upstream-commit: 07a7c0632f7b1ae70b5261565742756b76df7402
Component: engine
2016-06-06 13:51:57 +02:00
d678f7748b Merge pull request #23129 from WeiZhang555/print-detailed-error
Print original error for `start`
Upstream-commit: 9d449d89f7949aea708125badfbaebc65440b98d
Component: engine
2016-06-06 13:43:52 +02:00
62fb401985 Migrate network command to cobra
- Migrates network command and subcommands (connect, create, disconnect,
  inspect, list and remove) to spf13/cobra
- Create a RequiredExactArgs helper function for command that require an
  exact number of arguments.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 4bd202b00f7859ebeb4ba87511a0618ad08d0605
Component: engine
2016-06-06 10:28:52 +02:00
b24dce4b03 Merge pull request #23284 from yongtang/23211-spf13-cobra-logs
Use spf13/cobra for docker logs
Upstream-commit: 731bae674965a3ae8a300d8e285927f993727bab
Component: engine
2016-06-06 09:06:51 +02:00
bbcce85205 Merge pull request #23283 from yongtang/23211-spf13-cobra-diff
Use spf13/cobra for docker diff
Upstream-commit: 2becfab55fd8ad6ec1d02aea3cd6498a2f91ef68
Component: engine
2016-06-06 09:05:18 +02:00
787bdacdff Merge pull request #23268 from WeiZhang555/cobra-start
Migrate start command to cobra
Upstream-commit: c35d9f2611c4b1e43403010210708d9c50b838db
Component: engine
2016-06-06 08:59:42 +02:00
3a2d4ddfd6 Log and print original error for start
Currently `start` will hide some errors and throw a consolidated error,
which will make it hard to debug because developer can't find the
original error.

This commit allow daemon to log original errors first.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
Upstream-commit: b4740e3021a39a502ffc82f0f70e9b7ed2f0875f
Component: engine
2016-06-06 10:13:49 +08:00
33bb9696ad Migrate start command to cobra
Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
Upstream-commit: 4f3625a2889aef4ea97e366fa0ed1e2383dd3aad
Component: engine
2016-06-06 09:53:18 +08:00
3fc5fabb4a Use spf13/cobra for docker unpause
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker unpause` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 8ea7733a6390a67d6981888b857ab78b11c4c076
Component: engine
2016-06-05 17:29:52 -07:00
58f3ee3285 Use spf13/cobra for docker logs
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker logs` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 4f4b59cc435fbfef236017f3aa36145c1187426b
Component: engine
2016-06-05 15:51:35 -07:00
03f6e5fc67 Merge pull request #23242 from vdemeester/migrate-rmi-to-cobra
Use spf13/cobra for docker rmi
Upstream-commit: e94be2f639804c5223ebb127faec845683410eb1
Component: engine
2016-06-05 15:29:01 -07:00
9c145d0655 Use spf13/cobra for docker diff
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker diff` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 5899afae52b10d2457848c6e62a7476835befef3
Component: engine
2016-06-05 15:13:55 -07:00
7339550c4b Use spf13/cobra for docker rmi
Moves image command rmi to `api/client/image/remove.go` and use cobra :)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 60e48bd6bd24c559ed92c7217cd7798c85cbb644
Component: engine
2016-06-05 22:40:35 +02:00
78cd3d76ac Merge pull request #23247 from thaJeztah/carry-22033-docker-ps-format-output
[Carry 22033] Add a check for size field in custom format string
Upstream-commit: 1a1083ae75ac0b1018510ab80bffeab415220886
Component: engine
2016-06-05 16:39:22 -04:00
cacb039bc5 Merge pull request #23276 from yongtang/23211-spf13-cobra-stop
Use spf13/cobra for docker stop
Upstream-commit: b25955833652b6b2079d7f3ac56759c563639ca9
Component: engine
2016-06-05 22:37:15 +02:00
7f305e8128 Merge pull request #23267 from vdemeester/migrate-export-to-cobra
Use spf13/cobra for docker export
Upstream-commit: c764234c3b4490a7b6cd6239607996c502d9ce22
Component: engine
2016-06-05 20:05:51 +02:00
236aacaf44 Use spf13/cobra for docker stop
This fix is part of the effort to convert commands to spf13/cobra #23211.

Thif fix coverted command `docker stop` to use spf13/cobra

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 63d66d2796fa1916a6b40913a6a23063d6169d17
Component: engine
2016-06-05 10:25:21 -07:00
696ad0d43f Deprecated the old 3-args form of docker import
It's been deprecated since November 2013 and v0.6.7. Removing the cli
side of it.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 372063ce1bd0e36e3523360b88e74a1cef55b841
Component: engine
2016-06-05 18:07:34 +02:00
e533330f0a Migrate export command to cobra
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: b25e64183cd02bffe1ac1600e860551fca05d1f3
Component: engine
2016-06-05 16:42:19 +02:00
27d26eeb56 Convert 'docker create' to use cobra and pflag
Return the correct status code on flag parsins errors.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 5ab24342258c70438ab8edf708ebc466b1677f38
Component: engine
2016-06-04 13:57:30 +02:00
d601c75fe5 Convert 'docker run' to a cobra command and to use pflags
Move container options into a struct so that tests should pass.
Remove unused FlagSet arg from Parse
Disable interspersed args on docker run

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: a77f2450c70312f8c26877a18bfe2baa44d4abb9
Component: engine
2016-06-04 13:55:35 +02:00
69ba7aeaeb Add a check for size field in custom format string
This fix addresses an issue where including the `{{.Size}}` format
field in conjunction with `docker ps --format`, without the `--size`
flag, would not correctly display the size of containers.

This is done by doing a check on the custom format string, and setting
the size flag on the options struct if the field is found. This struct
gets passed to the engine API which then generates the correct query.

An integration test is included which runs `docker ps --format "table
{{.Size}}"` without `--size`, and checks that the returned output is
not `0 B`.

Fixes #21991

As suggested by @cpuguy83, a parser is implemented to process the format
string as a template, and then traverses the template tree to determine
if `.Size` was called.

This was then reworked by making use of template execution with a
pre-processor struct that will set the `--size` option if the template
calls for the field.

The pre-processor now also sets a boolean in the context passed to the
writer. There is an integration test for this that calls `docker ps
--size --format "{{.Size}}"` and then checks that `size: {{.Size}}` is
not appended, as it would with previous behavior.

Finally, a change was made to the formatter to not automatically
add a `{{.Size}}` if a custom format is provided.

Signed-off-by: Paulo Ribeiro <paigr.io@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 55cdb6dcd0f709301573ddb9f3348f9288572b91
Component: engine
2016-06-03 21:59:10 +02:00
cb2dd312aa Use spf13/cobra for docker search
- Move image command search to `api/client/image/search.go`
- Use cobra :)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: a11ef10631dd9338aeda2e10fedea365a7471af1
Component: engine
2016-06-03 19:50:01 +02:00
604319f9f2 Merge pull request #23107 from yongtang/23055-docker-search-limit
Add `--limit` option to `docker search`
Upstream-commit: 020a86b3d9e6b052a3f866b7517eb0f62fd24bea
Component: engine
2016-06-03 14:25:42 +02:00
a0ddbe99db Merge pull request #22715 from allencloud/add-trace-http-pprof
add trace in docker engine's pprof to show execution trace in binary form
Upstream-commit: 766550385dac63c19a9af683c5d56c2875f5cabe
Component: engine
2016-06-03 13:22:13 +02:00
82d7e1ba5d Add --limit option to docker search
This fix tries to address the issue raised in #23055.
Currently `docker search` result caps at 25 and there is
no way to allow getting more results (if exist).

This fix adds the flag `--limit` so that it is possible
to return more results from the `docker search`.

Related documentation has been updated.

Additional tests have been added to cover the changes.

This fix fixes #23055.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 92f10fe228c1b4b527b87ac47401132322283ea3
Component: engine
2016-06-02 19:12:20 -07:00
5578aba972 Merge pull request #23193 from allencloud/fix-typos
use grep to find all a/an typos
Upstream-commit: 98c245c9e63793cf8ca03c5500e0820447c1861c
Component: engine
2016-06-02 18:45:08 -07:00
4524589dc5 Add support for user-defined healthchecks
This PR adds support for user-defined health-check probes for Docker
containers. It adds a `HEALTHCHECK` instruction to the Dockerfile syntax plus
some corresponding "docker run" options. It can be used with a restart policy
to automatically restart a container if the check fails.

The `HEALTHCHECK` instruction has two forms:

* `HEALTHCHECK [OPTIONS] CMD command` (check container health by running a command inside the container)
* `HEALTHCHECK NONE` (disable any healthcheck inherited from the base image)

The `HEALTHCHECK` instruction tells Docker how to test a container to check that
it is still working. This can detect cases such as a web server that is stuck in
an infinite loop and unable to handle new connections, even though the server
process is still running.

When a container has a healthcheck specified, it has a _health status_ in
addition to its normal status. This status is initially `starting`. Whenever a
health check passes, it becomes `healthy` (whatever state it was previously in).
After a certain number of consecutive failures, it becomes `unhealthy`.

The options that can appear before `CMD` are:

* `--interval=DURATION` (default: `30s`)
* `--timeout=DURATION` (default: `30s`)
* `--retries=N` (default: `1`)

The health check will first run **interval** seconds after the container is
started, and then again **interval** seconds after each previous check completes.

If a single run of the check takes longer than **timeout** seconds then the check
is considered to have failed.

It takes **retries** consecutive failures of the health check for the container
to be considered `unhealthy`.

There can only be one `HEALTHCHECK` instruction in a Dockerfile. If you list
more than one then only the last `HEALTHCHECK` will take effect.

The command after the `CMD` keyword can be either a shell command (e.g. `HEALTHCHECK
CMD /bin/check-running`) or an _exec_ array (as with other Dockerfile commands;
see e.g. `ENTRYPOINT` for details).

The command's exit status indicates the health status of the container.
The possible values are:

- 0: success - the container is healthy and ready for use
- 1: unhealthy - the container is not working correctly
- 2: starting - the container is not ready for use yet, but is working correctly

If the probe returns 2 ("starting") when the container has already moved out of the
"starting" state then it is treated as "unhealthy" instead.

For example, to check every five minutes or so that a web-server is able to
serve the site's main page within three seconds:

    HEALTHCHECK --interval=5m --timeout=3s \
      CMD curl -f http://localhost/ || exit 1

To help debug failing probes, any output text (UTF-8 encoded) that the command writes
on stdout or stderr will be stored in the health status and can be queried with
`docker inspect`. Such output should be kept short (only the first 4096 bytes
are stored currently).

When the health status of a container changes, a `health_status` event is
generated with the new status. The health status is also displayed in the
`docker ps` output.

Signed-off-by: Thomas Leonard <thomas.leonard@docker.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: b6c7becbfe1d76b1250f6d8e991e645e13808a9c
Component: engine
2016-06-02 23:58:34 +02:00
f9f967f68a Update ContainerStart calls to use options now
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 6b7f12650d8333bf088271acecea5256aef99c41
Component: engine
2016-06-02 16:56:13 +02:00
35c5774373 fix typos
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: c1be45fa38e82054dcad606d71446a662524f2d5
Component: engine
2016-06-02 17:17:22 +08:00
e0398fafd2 Merge pull request #22769 from dnephin/integrate_cobra
Use spf13/cobra for the cli
Upstream-commit: 28676fc04b9a307718b66bd28e8d9281d05f38ac
Component: engine
2016-06-01 14:18:23 -07:00
5dcdbc4a5a Remove deprecated -f flag on docker tag
The -f flag on docker tag has been deprecated in docker 1.10 and
is expected to be removed in docker 1.12.

This fix removed the -f flag on docker tag and also updated
deprecated.md.

NOTE: A separate pull request for engine-api has been opened to
cover the related changes.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 4455ec14b87d5ad474c5e11d60907bceb35e9e09
Component: engine
2016-06-01 09:44:25 -07:00
67d0b2dc23 remove deprecated feature of passing HostConfig at API container start
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
Upstream-commit: 0a8386c8be3fa87b7523bef7fd31c81a7f84709c
Component: engine
2016-06-01 22:25:17 +08:00
93473dcef1 Use Args in cobra.Command to validate args.
Also re-use context.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: fc5a4514fbe1b402d2a0bff170486ac3de4bf8cc
Component: engine
2016-05-31 15:43:16 -07:00
041d2192d1 Update usage and help to (almost) match the existing docker behaviour
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 667dcb0e8e550d1a80ee67c6d71979e8cfabea1f
Component: engine
2016-05-31 14:41:37 -07:00
fdda20f059 Migrate volume commands to cobra.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 69264beb4093c56e8c5b256a70e1a0150294c81c
Component: engine
2016-05-31 14:41:37 -07:00
d225e1ee11 Refactor cli inspector to support new inspects.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 6bc3e23f656f111bf72c52ebe67fa9bd7c9ab37b
Component: engine
2016-05-31 14:41:37 -07:00
cdf6273e0c Merge pull request #23091 from allencloud/print-network-name-when-rm
print network name when rm successfully
Upstream-commit: 34e0a01de2e5f070b4d9b7d83166c5cf8fe20300
Component: engine
2016-05-30 13:33:29 +02:00
bb11d0c2a4 print network name when rm successfully
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: 27ebd79222759762bec8a582f143408c7a32a969
Component: engine
2016-05-29 23:42:45 +08:00