Commit Graph

78 Commits

Author SHA1 Message Date
433a6ae35a Merge pull request #29314 from vdemeester/no-more-utils
Remove the utils package
Upstream-commit: b9ee31ae027bbd62477fea3f58023c90f051db00
Component: engine
2016-12-22 15:21:05 +01:00
a961c58e58 Merge pull request #29603 from mstanleyjones/docker_diff_improvements
Clarify what docker diff shows
Upstream-commit: 0ca3e84227a04c0c6256f55b92e9205bd1ca9309
Component: engine
2016-12-22 15:15:01 +01:00
60c04ae8d4 Merge pull request #28714 from thaJeztah/move-logdriver-check-to-daemon
move check for supported drivers to daemon
Upstream-commit: 267d6935c5dcb806d24df8dd78d3d053773f8c19
Component: engine
2016-12-21 13:47:30 -05:00
4c53abe848 Clarify what docker diff shows
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
Upstream-commit: 4497801c8a35ca2be9467419c5addff5166442d0
Component: engine
2016-12-20 17:03:11 -08:00
e43da16101 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>
Upstream-commit: 05dc9846e1266e6a3629c26851acb633a380dd17
Component: engine
2016-12-19 14:30:01 +01:00
57407d7f5e 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>
Upstream-commit: 32de162fc9a18f7f2d702ce488e73b5eca0199ce
Component: engine
2016-12-17 16:51:11 -08:00
57d5fc9bfa Move templates to pkg/templates
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 04f7a03359ac009ad2cd548fa93124a66e880ae5
Component: engine
2016-12-12 09:34:03 +01:00
35037b78fd 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>
Upstream-commit: a6be56b54e871c4e7a6e72881770a64676c27c3c
Component: engine
2016-12-02 20:08:49 -08:00
1e1f7ae102 Merge pull request #28445 from cpuguy83/28439_fix_client_rm_on_old_daemons
Handle `run --rm` against older daemons on the cli
Upstream-commit: c8388a52ec7a328b6aee3c48d31bd7f3e0b14aeb
Component: engine
2016-11-22 14:25:03 +01:00
3bfc791696 fix incorrect ErrConnectFailed comparison
Signed-off-by: Reficul <xuzhenglun@gmail.com>
Upstream-commit: d5dc9b8b1f5e693cfb3aace06e08e7fc6eb798d7
Component: engine
2016-11-22 10:42:55 +08:00
77b1914252 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>
Upstream-commit: f4bb8c51de3a52bdbc3c3e7be426e6bb90feb421
Component: engine
2016-11-21 20:39:04 -05:00
02df9fec1f Merge pull request #28347 from yongtang/28339-ignore-unkwnon-field-template
Use `map[string]bool` for `preProcessor` to ignore unknown fields
Upstream-commit: e61ad7465503a2cfe4c8cfec2f929831c28fd84a
Component: engine
2016-11-17 15:13:02 -08:00
2e39dde1e5 refactor help func in CLI
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
Upstream-commit: bf95472105e5dad55314cfff599abea5b81b134a
Component: engine
2016-11-17 10:54:10 -08:00
6c1518dd39 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>
Upstream-commit: 312cc7eebd326cc500e5742115d1e92e94ff60ee
Component: engine
2016-11-16 13:23:47 -08:00
5ebd7571b1 Fix issue with missing fields for ps template
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: b4ab4530841417305bcaa0b0d25d172bfbf3956a
Component: engine
2016-11-12 11:23:21 -05:00
70633c7349 context.Context should be the first parameter of a function
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
Upstream-commit: aff5dacec190e8d94c6b796b06c773c8b1b223fe
Component: engine
2016-11-12 14:14:34 +08:00
d159a5119b Merge pull request #28231 from yuexiao-wang/container-exec
Remove redundant parameter and fix typos
Upstream-commit: 891e03eb7dc3b3e5a22efa21f76a5ae1e35cc03b
Component: engine
2016-11-11 09:55:42 +08:00
ef501816c9 Merge pull request #27797 from vdemeester/stats-format-names-support
Add support for Names and ID in stats format
Upstream-commit: 801230ce315ef51425da53cc5712eb6063deee95
Component: engine
2016-11-10 13:26:00 -08:00
f3074c32a8 Remove redundant parameter and fix typos
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
Upstream-commit: 713cae7ca2b8a5fa36e25f3fb30531f6400fafc3
Component: engine
2016-11-10 11:05:31 +08:00
9c6b6dc40c Merge pull request #27947 from milindchawre/fix_27798
Fixes #27798 : Update help for --blkio-weight parameter
Upstream-commit: 4f7083a04f1ad7ce84a30a412ee374c2a92afc95
Component: engine
2016-11-09 15:35:38 +01:00
a66c2a4dd3 Update function name for TestCalculBlockIO
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
Upstream-commit: 5ffe496a2233a0620099906e1cf2de24d5dfb56d
Component: engine
2016-11-09 17:43:10 +08:00
d0ebaa81e8 always add but hide experimental cmds and flags
Signed-off-by: Victor Vieux <vieux@docker.com>

update cobra and use Tags

Signed-off-by: Victor Vieux <vieux@docker.com>

allow client to talk to an older server

Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: e98e4a71110fd33852bb755a9b8b4ebc9df904db
Component: engine
2016-11-08 04:55:27 -08:00
9cafe2a9d5 context.Context should be the first parameter of a function
Signed-off-by: yupeng <yu.peng36@zte.com.cn>
Upstream-commit: 4b86bd050b6e4c944407680d99c9ce6f25b8cc53
Component: engine
2016-11-08 14:51:17 +08:00
ffbf855e39 update cobra and use Tags
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: d34ca0178e42cddc760316bbcb6a3aa8bea8b3ed
Component: engine
2016-11-04 12:04:14 -07:00
9d6e24532c always add but hide experimental cmds and flags
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: 3e43fa28ecc265ebbb95afd94017e7e3d5ccfdc0
Component: engine
2016-11-03 17:31:12 -07:00
bff4ddec3e fix double [y/N] in container prune
Signed-off-by: Victor Vieux <vieux@docker.com>
Upstream-commit: eadb5b315be2ca51aa59ce55ef34478fbdceefa2
Component: engine
2016-11-03 10:33:17 -07:00
6b390813d6 Fixes #27798 : Update help for --blkio-weight parameter
Signed-off-by: milindchawre <milindchawre@gmail.com>
Upstream-commit: 51012aa0aff7d7873af7d96347f43b06707e5c9a
Component: engine
2016-11-03 06:42:15 +00:00
962c73e2cf Add support for Names and ID in stats format
This adds support to display names or id of container instead of what
was provided in the request.

This keeps the default behavior (`docker stats byname` will display
`byname` in the `CONTAINER` colmun and `docker stats byid` will display
the id in the `CONTAINER` column) but adds two new format directive.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: ef915fd036d9ea5263f9370dce490ef97ea0618d
Component: engine
2016-11-03 07:20:46 +01:00
50046511ff Merge pull request #27948 from WeiZhang555/consistent-filters
Replace all "Filter" field with "Filters" for consistency
Upstream-commit: f96d45dc8ac21db1f082230e2f828a86e15cad46
Component: engine
2016-11-02 00:53:15 -07:00
ed695b371e Merge pull request #27864 from vdemeester/add-statsformat-to-configfile
Add StatsFormat to the config.json file
Upstream-commit: b998088145c1e7b6a2814a3dcb0f68855ae17123
Component: engine
2016-11-01 20:32:13 -07:00
9cb45952e0 Replace all "Filter" field with "Filters" for consistency
In file `api/types/client.go`, some of the "*Options{}" structs own a
`Filters` field while some else have the name of `Filter`, this commit
will rename all `Filter` to `Filters` for consistency. Also `Filters`
is consistent with API with format `/xxx?filters=xxx`, that's why
`Filters` is the right name.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
Upstream-commit: 89a6966726941b4b7f0431ab214013cf9c655c25
Component: engine
2016-11-01 23:09:30 +08:00
913e9a48c1 Generate container create response from swagger spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: bad849fc826b410c3aeb753a8c7f6b38f7ae12b0
Component: engine
2016-10-31 11:16:02 -04:00
74dd82b62a Add StatsFormat to the config.json file
As for `ps`, `images`, `network ls` and `volume ls`, this makes it
possible to define a custom default format.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 12cae3a590a92f0d908c03c172aec974957b3785
Component: engine
2016-10-28 11:48:25 -07:00
0e3402d520 Allow providing a custom storage directory for docker checkpoints
Signed-off-by: boucher <rboucher@gmail.com>
Upstream-commit: bd7d51292c399edba5f339e6be55fac6c0811ff5
Component: engine
2016-10-28 07:56:05 -04:00
a12095fbb1 Merge pull request #27759 from Microsoft/jjh/fixstats
Windows: Fix stats CLI
Upstream-commit: 24285349989577af5b76de0a9b11a4e259ce6410
Component: engine
2016-10-26 18:17:18 -07:00
3affb6aba8 Implementing support for --cpu-rt-period and --cpu-rt-runtime so that
containers may specify these cgroup values at runtime. This will allow
processes to change their priority to real-time within the container
when CONFIG_RT_GROUP_SCHED is enabled in the kernel. See #22380.

Also added sanity checks for the new --cpu-rt-runtime and --cpu-rt-period
flags to ensure that that the kernel supports these features and that
runtime is not greater than period.

Daemon will support a --cpu-rt-runtime flag to initialize the parent
cgroup on startup, this prevents the administrator from alotting runtime
to docker after each restart.

There are additional checks that could be added but maybe too far? Check
parent cgroups to ensure values are <= parent, inspecting rtprio ulimit
and issuing a warning.

Signed-off-by: Erik St. Martin <alakriti@gmail.com>
Upstream-commit: 56f77d5ade945b3b8816a6c8acb328b7c6dce9a7
Component: engine
2016-10-26 11:33:06 -04:00
71c5edc2e8 Windows: Fix stats CLI
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 2894d07696a3160c5f6f372e69b241386bb82c94
Component: engine
2016-10-25 19:57:47 -07:00
9a299b360f Make experimental a runtime flag
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Upstream-commit: 7781a1bf0fef748877326632b88e92fbf3c90daa
Component: engine
2016-10-24 15:20:01 -07:00
593f92302a Merge pull request #27564 from mlaventure/add-networks-format-to-ps
Add Networks placeholder to ps --format
Upstream-commit: d98f995d7d191f8ae7ab0c442eed92f67faa305b
Component: engine
2016-10-20 18:43:46 -07:00
10784ca4ce Add Networks placeholder to ps --format
Passing {{.Networks}} to the format parameter will prompt ps to
display all the networks the container is connected to.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
Upstream-commit: a43d9bb9c399958e64deb5e827e6716ad1ef0e41
Component: engine
2016-10-20 07:41:56 -07:00
bf1e1cd730 Exec: Add ability to set environment variables
Keeping the current behavior for exec, i.e., inheriting
variables from main process. New variables will be added
to current ones. If there's already a variable with that
name it will be overwritten.

Example of usage: docker exec -it -e TERM=vt100 <container> top

Closes #24355.

Signed-off-by: Jonh Wendell <jonh.wendell@redhat.com>
Upstream-commit: e03bf1221ee2c863f25a57af4d415e2d8ff4f26c
Component: engine
2016-10-19 12:39:25 -02:00
a35c353d0b Merge pull request #27476 from yuexiao-wang/fix-typos-volume
Fix some typos
Upstream-commit: 1feaeac65c8968ba2f88a1d2d17e7e775ac2ae18
Component: engine
2016-10-18 13:50:20 +01:00
e13e181560 Merge pull request #27478 from allencloud/wrap-line-in-deleted-containers
wrap line in deleted containers when pruning
Upstream-commit: 1643110ef48e6a7c0cf149d9d0ccf05a52026d10
Component: engine
2016-10-18 13:48:44 +01:00
77c700603f Fix typs from go to Go
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
Upstream-commit: 7dad9d5ce45f25750f339642d3b84a81cc2ba98e
Component: engine
2016-10-18 19:40:16 +08:00
b9c927e281 wrap line in deleted containers when pruning
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: dcb4d68092ebca6658923fa4b130ca79e121c760
Component: engine
2016-10-18 14:20:12 +08:00
15c4940651 Update docker stop and docker restart to allow not specifying timeout and use the one specified at container creation time.
Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: cc703784f39fb3f585ec685cf7aeda6410648446
Component: engine
2016-10-17 12:53:35 -07:00
128dd03e48 Merge pull request #26819 from ripcurld00d/fix_stats_mutex
Hide the mutex lock in formatter.ContainerStats
Upstream-commit: ba2c13fcf55a69a67a861be6fa39a7def803f631
Component: engine
2016-10-13 17:38:22 -07:00
3cabe08abe Hide the mutex in formatter.ContainerStats
The formatter.ContainerStats struct exposes its Mutex.
This is a bad design and should be fixed.

To fix that, I separated the statistics
attributes from ContainerStats to StatsEntry and
hid the mutex. Notice that the mutex protects both
the `err` field and the statistics attributes.

Then, implemented SetStatistics, SetError, GetStatistics
and GetError to avoid races.

Moreover, to make this less granular, I decided to
replace the read-write mutex with the regular mutex and
to pass a StatsEntry slice to formatter.ContainerStatsWrite

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 929a77b814dfe9ab7a11bffc2d16eebd27bd903a
Component: engine
2016-10-10 21:52:53 +03:00
5f64850ff1 better prune and system df
Signed-off-by: allencloud <allen.sun@daocloud.io>
Upstream-commit: fd62b6c9505451670b926216648ab7f6a3f9f586
Component: engine
2016-10-11 00:42:21 +08:00
1c78e3518f Merge pull request #26778 from WeiZhang555/parallel-operations
Support parallel kill,rm
Upstream-commit: 2f12d2808464dcfdf45e0920fd508ce0ff12bd29
Component: engine
2016-10-10 18:31:10 +02:00