Commit Graph

1032 Commits

Author SHA1 Message Date
David Calavera e98cae4919 Move filters package to the API.
These filters are only use to interchange data between clients and daemons.
They don't belong to the parsers package.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-15 18:13:26 -05:00
David Calavera 52fd30079a Merge pull request #18685 from calavera/remove_timeutils
Move timeutils functions to the only places where they are used.
2015-12-15 15:11:18 -08:00
David Calavera 7bb30e0aeb Merge pull request #18676 from dnephin/more_registry_types_to_api
Move registry.SearchResult types to api/types/registry
2015-12-15 12:00:24 -08:00
David Calavera 27220ecc6b Move timeutils functions to the only places where they are used.
- Move time json marshaling to the jsonlog package: this is a docker
  internal hack that we should not promote as a library.
- Move Timestamp encoding/decoding functions to the API types: This is
  only used there. It could be a standalone library but I don't this
it's worth having a separated repo for this. It could introduce more
complexity than it solves.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-15 14:56:14 -05:00
Jess Frazelle adf1ffd53b Merge pull request #18416 from toli/disable-official-repo-check-in-push
Removing the restriction to push to an 'official' repo
2015-12-15 08:52:36 -08:00
Daniel Nephin c4472b389d Move registry.SearchResult types to api/types/registry.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-12-15 11:44:20 -05:00
Arnaud Porterie 2ec34dca05 Merge pull request #18650 from calavera/remove_httputils_dep_from_api
Remove httputils dependency from API client lib.
2015-12-14 20:51:53 -08:00
Vincent Demeester 87740d001c Merge pull request #18644 from calavera/remove_timeout_func_dependency_from_api_lib
Remove timeout shared function.
2015-12-14 23:05:29 +01:00
David Calavera 83b5729f64 Remove httputils dependency from API client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-14 16:48:59 -05:00
Doug Davis 6287ec9095 Add a DOCKER_API_VERSION env var
Closes: #11486

Just for @ahmetalpbalkan  :-)

Fixed some comment formatting too while in there.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-12-14 12:45:34 -08:00
David Calavera 75d69ce0da Merge pull request #18637 from dnephin/move_auth_config
Move more api types to api/types package
2015-12-14 11:53:30 -08:00
David Calavera 9dc7d07fc1 Remove timeout shared function.
Handle timeouts when it's necessary based on a Timeout interface.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-14 14:24:21 -05:00
David Calavera b679eb9a82 Force API versioning in the client library.
Remove dependencies on docker's version packages.
Allow empty version as a fallback to latest version.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-14 12:06:42 -05:00
Daniel Nephin 96c10098ac Move IndexInfo and ServiceConfig types to api/types/registry/registry.go
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-12-14 11:28:02 -05:00
Tibor Vass 44299989b2 Merge pull request #18631 from tiborvass/cleanup-utils
Create `builder/dockerignore` and `pkg/gitutils` to clean up `utils`
2015-12-14 17:22:01 +01:00
Daniel Nephin 5b321e3287 Move AuthConfig to api/types
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-12-14 11:22:01 -05:00
toli 0d824c760e Removing the restriction to push to a 'official' repo
Signed-off-by: toli <toli@docker.com>
2015-12-14 07:45:00 -08:00
Vincent Demeester 5e0283effa Merge pull request #18618 from dnephin/refactor_resolve_auth_config
Refactor ResolveAuthConfig to remove the builder dependency on cli code
2015-12-14 15:23:36 +01:00
Tibor Vass 63e3816c1d utils: move dockerignore function to builder/dockerignore
Signed-off-by: Tibor Vass <tibor@docker.com>
2015-12-14 14:59:52 +01:00
Tibor Vass 135cca6f52 utils: move git functions to pkg/gitutils
Signed-off-by: Tibor Vass <tibor@docker.com>
2015-12-14 14:59:52 +01:00
Antonio Murdaca 5fd9a8f603 Merge pull request #18616 from calavera/move_client_version_to_docker_cli
Move client version to the docker cli.
2015-12-14 11:43:01 +01:00
Justas Brazauskas 927b334ebf Fix typos found across repository
Signed-off-by: Justas Brazauskas <brazauskasjustas@gmail.com>
2015-12-13 18:04:12 +02:00
Daniel Nephin 920ea13516 Refactor ResolveAuthConfig to remove the builder dependency on cli code.
registry.ResolveAuthConfig() only needs the AuthConfigs from the ConfigFile, so
this change passed just the AuthConfigs.

Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-12-11 19:31:24 -08:00
David Calavera 229d3bace8 Move client version to the docker cli.
This removes the dockerversion dependency from the client library.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-11 19:03:33 -05:00
David Calavera 91799c232e Merge pull request #18610 from runcom/fix-warn
api: client: info: add newline after warning
2015-12-11 13:41:14 -08:00
Antonio Murdaca bb3d7e1e65 api: client: info: add newline after warning
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-12-11 20:54:51 +01:00
David Calavera bc02d42d9e Make sure template inspector always prints a carriage return.
To match with the raw inspector.
Adds tests to verify its functionality.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-10 21:13:13 -05:00
Jess Frazelle a16a1d75d9 Merge pull request #18564 from runcom/warn-on-loopback
api: client: info: print a warning if dm is using a loopback file
2015-12-11 10:11:03 +10:00
Alexander Morozov ac453a310b Merge pull request #18353 from aaronlehmann/transfer-manager
Improved push and pull with upload manager and download manager
2015-12-10 14:52:48 -08:00
David Calavera a0f80079b8 Merge pull request #18557 from cpuguy83/use_correct_resize_fn
Use correct fn for resizing TTY
2015-12-10 12:37:13 -08:00
Antonio Murdaca a2c4c0cd3a api: client: info: print a warning if dm is using a loopback file
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-12-10 14:05:28 +01:00
Sebastiaan van Stijn 3d82564c7a Merge pull request #18562 from haoshuwei/modify-wordspelling-in-docker-stats
Modify word spelling  in stats.go's comments
2015-12-10 13:32:10 +01:00
Sebastiaan van Stijn d46650b3c7 Merge pull request #18553 from calavera/remove_specific_go_1_5_calls
Remove call to template.Option when building with 1.4.
2015-12-10 09:28:00 +01:00
Shuwei Hao 413e058b72 Modify word spelling errors in stats.go
Signed-off-by: Shuwei Hao <haosw@cn.ibm.com>
2015-12-10 06:57:25 +00:00
Brian Goff 3260ddb10b Use correct fn for resizing TTY
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-12-09 22:55:01 -05:00
Aaron Lehmann 572ce80230 Improved push and pull with upload manager and download manager
This commit adds a transfer manager which deduplicates and schedules
transfers, and also an upload manager and download manager that build on
top of the transfer manager to provide high-level interfaces for uploads
and downloads. The push and pull code is modified to use these building
blocks.

Some benefits of the changes:

- Simplification of push/pull code
- Pushes can upload layers concurrently
- Failed downloads and uploads are retried after backoff delays
- Cancellation is supported, but individual transfers will only be
  cancelled if all pushes or pulls using them are cancelled.
- The distribution code is decoupled from Docker Engine packages and API
  conventions (i.e. streamformatter), which will make it easier to split
  out.

This commit also includes unit tests for the new distribution/xfer
package. The tests cover 87.8% of the statements in the package.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2015-12-09 19:13:35 -08:00
David Calavera 6df3fc5175 Remove call to template.Option when building with 1.4.
Windows still relies on 1.4.2 to build Docker.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 17:30:16 -05:00
Daniel Nephin efda9618db Move networking api types to the api/types/networking package.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-12-09 13:55:59 -08:00
David Calavera 2ec468e284 Make the commit configuration to be a typed struct rather than accepting a string.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:06:58 -05:00
David Calavera 57b6796304 Implement all inspect commands with the new inspector interface.
It makes the behavior completely consistent across commands.
It adds tests to check that execution stops when an element is not
found.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:01 -05:00
David Calavera 5a0a6ee9cd Remove old http from the docker cli.
Everything has been ported to the client library 🎉

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera e4abf48567 Implement docker search with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera d1057e4c46 Implement docker resize with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera cf3efd05d4 Implement docker inspect with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera 42670e30ee Implement docker push with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera e78f02c4db Implement docker pull with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera e59d54bd99 Implement docker stats with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:05:00 -05:00
David Calavera 3f9f23114f Implement docker exec with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:59 -05:00
David Calavera bcb848c87f Implement docker run with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:59 -05:00
David Calavera 962b2d8b9b Implement docker start with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:59 -05:00
David Calavera 5e80ac9c84 Implement docker attach with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:59 -05:00
David Calavera d9a62c5f2b Lowercase http method functions.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:59 -05:00
David Calavera 0b0431a856 Change references to query values.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:59 -05:00
David Calavera 8b15839ee8 Create interface that clients that talk to the api must fulfill.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera a413be3392 Fix client lib errors documentation.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera 73bca058ae Implement docker volume with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera 8c9c9e137c Use ensureReaderClosed consistently to close a response body reader.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera 7df71ca31d Implement getExitCode with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera 51efb1480a Implement docker wait with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera 1fe912151b Implement docker version with standalone client lib.
Use Go template definitions for default format.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:58 -05:00
David Calavera b8be62e28e Implement docker unpause with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:57 -05:00
David Calavera d78ce02f88 Implement trusted tagging with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:57 -05:00
David Calavera 7573c153c5 Implement docker top with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:57 -05:00
David Calavera 21ffdf0e0e Implement docker tag with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:57 -05:00
David Calavera 9ec1cf92f5 Implement docker stop with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:57 -05:00
David Calavera 373f55eecd Implement docker save with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera 37d6fee8cf Implement docker rmi with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera fb6533e6cf Implement docker remove with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera b7de53634c Implement docker restart with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera ac8fb77c74 Implement container rename with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera d05aa418b0 Implement docker ps with standanlone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera eeee2eae86 Implement docker port with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera 55333e8f90 Implement docker pause with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:56 -05:00
David Calavera 356768bc01 Implement docker network with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:55 -05:00
David Calavera 0876742646 Implement docker logs with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:55 -05:00
David Calavera b36531db60 Implement docker login with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:55 -05:00
David Calavera 9073a52ea8 Implement docker load with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:55 -05:00
David Calavera c57e62d00e Implement docker kill with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:55 -05:00
David Calavera 535c4c9a59 Implement docker build with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:55 -05:00
David Calavera 900ad2897f Implement docker info with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:54 -05:00
David Calavera 6bf757500b Implement docker import with the standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:54 -05:00
David Calavera 381262fbea Implement docker images with the standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:54 -05:00
David Calavera 45eca43f5b Implement docker history with the standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:54 -05:00
David Calavera e0549b8ceb Implement docker export with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:54 -05:00
David Calavera 11c4cc9dde Implement docker events with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:54 -05:00
David Calavera e562ac42f4 Implement docker diff with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:53 -05:00
David Calavera 136e8fef64 Implement docker container create with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:53 -05:00
David Calavera 1698fe01f5 Implement docker image create with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:53 -05:00
David Calavera 1b2b91ba43 Implement docker cp with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:53 -05:00
David Calavera 8c9ad7b818 Implement docker commit with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:53 -05:00
David Calavera 589df17a1a Extract API client struct as standalone client.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-09 12:04:53 -05:00
Tibor Vass 1f8efc687c Merge pull request #18123 from aidanhs/aphs-fail-on-broken-tar
Ensure adding a broken tar doesn't silently fail
2015-12-07 14:38:21 +01:00
Doug Davis 2ecbc9774b Merge pull request #18463 from haoshuwei/modify-containerinspect-tocheckstatuscode
Modify docker inspect client to check statusCode instead of strings c…
2015-12-07 07:55:26 -05:00
Shuwei Hao 6306eb3cd3 Modify docker network inspect client to check statusCode instead of string contain
Signed-off-by: Shuwei Hao <haoshuwei24@gmail.com>
2015-12-07 10:11:46 +00:00
Shuwei Hao e719c9225c Modufy docker inspect client to check statusCode instead of strings contains
Signed-off-by: Shuwei Hao <haosw@cn.ibm.com>
2015-12-07 10:03:46 +00:00
Sebastiaan van Stijn 5b4734aaa5 Merge pull request #17788 from haoshuwei/modify-volume-inspect-multi
Modify docker volume inspect to return existed volumes and the names of the unexsited volumes
2015-12-06 14:03:46 +01:00
David Calavera 29c69ce2a9 Merge pull request #18374 from calavera/volume_inspect_exit
Return error code when `volume inspect` fails with a template.
2015-12-03 13:31:47 -08:00
Phil Estes 4d849619d4 Merge pull request #17481 from vdemeester/17446-network-inspect-format
Add format flag to network inspect
2015-12-03 16:16:04 -05:00
David Calavera b9d30280f6 Return error code when `volume inspect` fails with a template.
Following `docker inspect` conventions:

- Keep partial info in a buffer to not print incomplete template outputs.
- Break execution when template parsing or decoding fail.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-03 13:22:55 -05:00
Tibor Vass 33ab2bb52c Merge pull request #18266 from calavera/events_pub_sub
Event PubSub topics + linear filtering.
2015-12-03 17:11:40 +01:00
Vincent Demeester 295c27388d Add format flag to network inspect
…for consistency as docker inspect and docker volume inspect supports it too

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-12-02 22:32:10 +01:00
Sebastiaan van Stijn 6deec021e5 Merge pull request #18309 from WeiZhang555/time
Consolidate time format for API
2015-12-02 22:28:28 +01:00
David Calavera 93d1dd8036 Make filtering a linear operation.
Improves the current filtering implementation complixity.
Currently, the best case is O(N) and worst case O(N^2) for key-value filtering.
In the new implementation, the best case is O(1) and worst case O(N), again for key-value filtering.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-02 11:12:42 -05:00
Zhang Wei 9daca1222a Consolidate time format for API
Consolidate all the API to same time format: RFC3339, and it will be
client's responsibility to present it in more user friendly way.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2015-12-02 22:40:18 +08:00
Doug Davis 8d4fe141c4 Deprecate -f flag from docker tag
Closes #9798

@maintainers please note that this is a change to the UX. We no longer
require the -f flag on `docker tag` to move a tag from an existing image.
However, this does make us more consistent across our commands,
see https://github.com/docker/docker/issues/9798 for the history.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-12-01 19:53:49 -08:00
Antonio Murdaca ef1d410b02 fix shm size handling
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-12-01 16:29:40 +01:00
Shuwei Hao 6295345005 Modify docker volume inspect to return existed volumes
Signed-off-by: Shuwei Hao <haoshuwei24@gmail.com>
2015-12-01 01:43:02 +00:00
Tonis Tiigi 4352da7803 Update daemon and docker core to use new content addressable storage
Add distribution package for managing pulls and pushes. This is based on
the old code in the graph package, with major changes to work with the
new image/layer model.

Add v1 migration code.

Update registry, api/*, and daemon packages to use the reference
package's types where applicable.

Update daemon package to use image/layer/tag stores instead of the graph
package

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-11-24 09:40:25 -08:00
David Calavera aa22191093 Merge pull request #17356 from HuKeping/warn-on-oom
Warning out when disalbe oom killer but not set the memory limit
2015-11-23 12:43:04 -08:00
Doug Davis a70079ea23 Add more to tag's -f flag's help
Was noticed in #9798

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-11-23 07:20:10 -08:00
Aidan Hobson Sayers 3243e504d0 Ensure adding a broken tar doesn't silently fail
Signed-off-by: Aidan Hobson Sayers <aidanhs@cantab.net>
2015-11-23 14:18:58 +00:00
Vincent Demeester a600bf4eab Merge pull request #17489 from WeiZhang555/network-rm-multi
Enhance `docker network rm` to delete multi net
2015-11-23 08:25:33 +01:00
Zhang Wei e7eb6687ef Enhance `docker network rm` to delete multi net
This commit enhance `docker network rm` command to allow user to delete
multi networks at the same time.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2015-11-22 05:37:00 +08:00
Antonio Murdaca 3ff9bb5332 Merge pull request #16613 from WeiZhang555/docker-cp-symlink
Add option `-L` to allow `docker cp` follow symbol link
2015-11-21 17:03:24 +01:00
Antonio Murdaca 6653f82796 Merge pull request #17495 from mikebrow/docker-tz-and-nanosecond-updates
modifying docker --since and --until to support nanoseconds and time …
2015-11-20 23:37:44 +01:00
David Calavera 8fa09749fb Merge pull request #17718 from wenchma/17716_before_filter_doc
Re-implement --before and --since as options for --filter
2015-11-20 11:24:19 -08:00
Zhang Wei 92600bdec1 Add '-L' option for `cp`
Fixes #16555

Original docker `cp` always copy symbol link itself instead of target,
now we provide '-L' option to allow docker to follow symbol link to real
target.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2015-11-21 00:36:56 +08:00
Wen Cheng Ma 1921c62938 Re-implement --before and --since as options for --filter
* This commit will mark --before and --since as deprecated, but leave their behavior
  unchanged until they are removed, then re-implement them as options for --filter.

* And update the related docs.

* Update the integration tests.

Fixes issue #17716

Signed-off-by: Wen Cheng Ma <wenchma@cn.ibm.com>
2015-11-20 13:10:13 +08:00
NIWA Hideyuki 5aeaf2a0c4 Addition of "--shm-size" to which size of /dev/shm is changed.
- Optional "--shm-size=" was added to the sub-command(run, create,and build).
- The size of /dev/shm in the container can be changed
  when container is made.
- Being able to specify is a numerical value that applies number,
  b, k, m, and g.
- The default value is 64MB, when this option is not set.
- It deals with both native and lxc drivers.

Signed-off-by: NIWA Hideyuki <niwa.hiedyuki@jp.fujitsu.com>
2015-11-20 09:24:18 +09:00
Michael Crosby 104dab87ea Merge pull request #17478 from vdemeester/pr-13921
Carry#13921 : Expand /info: Expose OSType (GOOS), Architecture (GOARCH)
2015-11-17 15:44:57 -08:00
Alexander Morozov f18d5da6a7 Merge pull request #17300 from kunalkushwaha/plugin-info
Patch for Plugin drivers in docker info
2015-11-17 10:46:29 -08:00
David Calavera d507acb175 Merge pull request #17724 from runcom/remove-depreciated-cli-flags
Remove depreciated cli flags
2015-11-17 16:40:06 +01:00
Sebastiaan van Stijn 7c5cdda74e Merge pull request #17604 from RyanDeng/fix_cpuPercent_extremelyHigh
fix the bug: cpu percent will extremely high
2015-11-16 17:26:29 +01:00
Kunal Kushwaha aa7fd884e6 Supported added for reterving Plugin list for Network and Volume.
Also, plugin information in docker info output.

Signed-off-by: Kunal Kushwaha <kushwaha_kunal_v7@lab.ntt.co.jp>
2015-11-16 15:28:09 +09:00
Antonio Murdaca 7929888214 Remove deprecated cli flags
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-11-15 10:40:01 +01:00
Olle Jonsson 4e8fcd4002 /info: Add keys Architecture, OSType
- introduces Swarm-relevant keys, see #13634
  - docs updated

Signed-off-by: Olle Jonsson <olle.jonsson@gmail.com>
2015-11-14 22:21:45 +01:00
Antonio Murdaca ad8a66573c Merge pull request #17851 from Microsoft/10662-ArgumentEscaping
Prevent double escaping of Dockerfile commands on Windows
2015-11-14 17:25:53 +01:00
Jessica Frazelle 94ea6af8cd
update vendor.sh and notary api for vendored changes
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-11-13 13:19:11 -08:00
Darren Stahl 9db5db1b94 This fixes the case where arguments are escaped twice from Dockerfiles on
Windows

Signed-off-by: Darren Stahl <darst@microsoft.com>
2015-11-13 10:43:06 -08:00
Alexander Morozov cccf674943 Merge pull request #16873 from coolljt0725/expand_docker_info
Add more cgroup config to docker info
2015-11-13 09:37:06 -08:00
Mike Brown 430d8ff611 modifying docker --since and --until to support nanoseconds and time zones
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2015-11-13 09:56:15 -06:00
David Calavera 58b270c338 Merge pull request #17431 from vdemeester/hope-it-does-not-broke-everything-again
Another try at dockerversion placeholder for library import
2015-11-09 13:15:50 -08:00
Vincent Demeester 8054a30387 dockerversion placeholder for library import
- Add a *version* file placeholder.
- Update autogen and builds to use it and an autogen build flag

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-11-09 19:32:46 +01:00
Sebastiaan van Stijn fdc8cce070 Merge pull request #16742 from runcom/10772-docker-stats-all
Allow docker stats without arguments
2015-11-07 19:41:03 +00:00
Antonio Murdaca ae818a820f Allow docker stats without arguments
This patch adds the ability to run `docker stats` w/o arguments and get
statistics for all running containers by default. Also add a new
`--all` flag to list statistics for all containers (like `docker ps`).
New running containers are added to the list as they show up also.
Add integration tests for this new behavior.
Docs updated accordingly. Fix missing stuff in man/commandline
reference for `docker stats`.

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-11-07 17:03:33 +01:00
David Calavera f198334400 Merge pull request #17738 from Microsoft/jjh/login
Windows: [TP4] Fix docker login
2015-11-06 15:02:42 -08:00
Alexander Morozov e37e329074 Return nice client-side message for docker logs
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-11-06 11:40:48 -08:00
John Howard 9c765040a5 Windows: Fix docker login
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-11-05 14:19:48 -08:00
Brian Goff 72aeb63a47 Reutrn immediately when inspect connection failed
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-11-04 21:17:05 -05:00
Sally O'Malley 41de7a18d8 Change 'docker run' exit codes to distinguish docker/contained errors
The purpose of this PR is for users to distinguish Docker errors from
contained command errors.
This PR modifies 'docker run' exit codes to follow the chroot standard
for exit codes.
Exit status:
125 if 'docker run' itself fails
126 if contained command cannot be invoked
127 if contained command cannot be found
the exit status otherwise

Signed-off-by: Sally O'Malley <somalley@redhat.com>
2015-11-04 15:18:50 -05:00
Shuwei Hao 11062ea177 Fixing wrong word spelling in api/client/network.go
Signed-off-by: Shuwei Hao <haoshuwei24@gmail.com>
2015-11-04 13:42:34 +00:00
RyanDeng e222c61594 fix the bug: cpu percent will extremely high
Signed-off-by: Chao Deng <sheldon.d1018@gmail.com>
2015-11-03 10:57:52 +08:00
Hu Keping 5a3236d9e8 Update logic of history
Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-11-02 10:27:54 +08:00
Arnaud Porterie 5719d01066 Merge pull request #16579 from coolljt0725/fix_attach_paused_container
Add show error when attach to a paused container
2015-10-31 07:43:22 -07:00
John Howard d5c85897f4 Windows: Allows --isolation on docker build
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-10-30 11:14:38 -07:00
Sebastiaan van Stijn 855487b379 Merge pull request #17365 from HuKeping/rework-history
Rework docker cli history
2015-10-30 10:33:16 +01:00
David Calavera 34668ad68b Let the api to choose the default network driver.
That way swarm can understand the user's intention.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-10-29 19:47:12 -04:00
Hu Keping 09eedc35b2 Rework docker cli history
The implementation of `history` is a little redundant espacially
when user set the `--human` and/or `--no-trunc` options.

There are too many conditionals for `human`, `no-trunc` and `quiet` which
I think is useless and complicated.

Since `quiet` will only display the container IDs so it could be not
nested with the other options.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-10-29 17:59:07 +08:00
Lei Jitang de1d611990 Add show error when attach to a paused container
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-10-28 21:00:09 -04:00
Jess Frazelle b227d19cae Merge pull request #17423 from cpuguy83/so_sensitive
Revert "dockerversion placeholder for library-import"
2015-10-27 18:32:18 -07:00
Brian Goff b78ca243d9 Revert "dockerversion placeholder for library-import"
This reverts commit d5cd032a86.

Commit caused issues on systems with case-insensitive filesystems.
Revert for now

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-27 21:23:53 -04:00
Brian Goff 2266462f72 Merge pull request #17373 from Microsoft/10662-volumetests
Windows: Volume integration tests
2015-10-27 19:52:11 -04:00
David Calavera 6276c676a8 Merge pull request #17350 from vdemeester/11699-auto-libraryimport
dockerversion placeholder for library-import
2015-10-27 13:39:40 -07:00
Alexandre Beslic 85ae8b034a Merge pull request #17364 from mavenugo/advertise
Enhancing --cluster-advertise to support <interface-name>
2015-10-27 13:29:18 -07:00
Vincent Demeester d5cd032a86 dockerversion placeholder for library-import
- Move autogen/dockerversion to version
- Update autogen and "builds" to use this package and a build flag

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-27 20:36:07 +01:00
Madhu Venugopal 3e7db73b99 Enhancing --cluster-advertise to support <interface-name>
--cluster-advertise daemon option is enahanced to support <interface-name>
in addition to <ip-address> in order to amke it  automation friendly using
docker-machine.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-27 11:03:22 -07:00
John Howard 2af5034ce8 Windows: Volume integration tests
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-10-26 14:33:28 -07:00
Hu Keping 3aa70c1948 Warning out when disalbe oom killer but not set the memory limit
It is always the best practice that only disable the OOM Killer where
you also set the `-m/--memory` option, otherwise it's dangerous.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-10-26 11:33:51 +08:00
moxiegirl c10ef20ed8 Merge pull request #17319 from vdemeester/fix-network-help-inspect-syntax
Update docker network inspect help syntax
2015-10-24 21:56:38 -07:00
Sebastiaan van Stijn 448398c2a8 Merge pull request #15780 from mountkin/build-multi-tags
Add ability to add multiple tags with docker build
2015-10-23 13:50:35 -07:00
Vincent Demeester 3dd50eaf05 Update docker network inspect help syntax
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-23 22:48:22 +02:00
Shijiang Wei c2eb37f9ae Add ability to add multiple tags with docker build
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2015-10-24 00:59:56 +08:00
David Calavera 3b9c13873a Fail when there is an error executing an inspect template.
- Do not execute the template directly in the cli outout, go is not atomic
in this operation and can send bytes before failing the execution.
- Fail after evaluating a raw interface if the typed execution also
failed, assuming there is a template parsing error.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-10-22 19:24:50 -04:00
Tonis Tiigi dfdee41308 Show trust variable deprecation warning only if used
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-10-22 11:01:30 -07:00
Sebastiaan van Stijn 9f031f70ce Merge pull request #17218 from vdemeester/17023-network-multiple-inspect
Add support for multiple network in inspect
2015-10-21 11:09:02 -07:00
Tibor Vass 6a7c38a57d Merge pull request #16940 from coolljt0725/default_tls_host
Make default tls host work
2015-10-21 14:02:22 -04:00
Sebastiaan van Stijn 492945235b Merge pull request #17136 from gesellix/change-route-volume-create
rename `POST /volumes` to `POST /volumes/create`
2015-10-21 10:21:27 -07:00
Vincent Demeester 7af9f988ac Add support for multiple network in inspect
To be consistent with other inspect command (on container and images),
add the possiblity to pass multiple network to the network inspect
commands.

`docker network inspect host bridge none` is possible now.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-21 08:57:29 +02:00
Antonio Murdaca bb085b7661 Merge pull request #17125 from calavera/check_exec_start_json
Check the content type is json when calling exec start.
2015-10-19 18:44:42 +02:00
David Calavera 45dc57f229 Check the content type is json when calling exec start.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-10-19 11:46:44 -04:00
Lei Jitang fbb01b8162 Make default tls host work
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-10-19 21:17:37 +08:00
Tobias Gesellchen 0c95eeb584 rename `POST /volumes` to `POST /volumes/create` to be consistent with the other `POST /.../create` endpoints
see #17132

Signed-off-by: Tobias Gesellchen <tobias@gesellix.de>
2015-10-17 14:13:40 +02:00
Antonio Murdaca ab1f03397e Merge pull request #17119 from vdemeester/17117-deprecate-c-cli-opts
Deprecate -c cli short variant flag in docker cli build & create
2015-10-17 10:22:46 +02:00
Vincent Demeester d1064bd441 Deprecate -c cli short variant flag in docker cli
- build
- create

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-10-17 00:05:34 +02:00
Madhu Venugopal 6f3eb994b5 Pass network driver option in docker network command
Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-16 14:33:54 -07:00
Victor Vieux 17b0017cd0 use Server Version
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-14 17:46:59 -07:00
Victor Vieux ddf04ad113 only display 'Engine Version' when it's not empty
Signed-off-by: Victor Vieux <vieux@docker.com>
2015-10-14 06:45:11 -07:00
Alexandre Beslic 4ea3ff7061 Merge pull request #16910 from mavenugo/ipam
Vendoring libnetwork for the pluggable IPAM driver support
2015-10-13 14:41:19 -07:00
Vincent Demeester ce607916e9 Merge pull request #15796 from azurezk/add-size-to-inspect
add container size info to inspect
2015-10-13 23:16:10 +02:00
Madhu Venugopal cc6aece1fd IPAM API & UX
introduced --subnet, --ip-range and --gateway options in docker network
command. Also, user can allocate driver specific ip-address if any using
the --aux-address option.
Supports multiple subnets per network and also sharing ip range
across networks if the network-driver and ipam-driver supports it.
Example, Bridge driver doesnt support sharing same ip range across
networks.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-13 11:03:03 -07:00
Doug Davis ba973f2d74 Remove used param on ParseHost
The first param on opts.ParseHost() wasn't being used for anything.

Once we get rid of that param we can then also clean-up some code
that calls ParseHost() because the param that was passed in wasn't
being used for anything else.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-10-11 20:45:17 -07:00
Sebastiaan van Stijn c45ad0b02d Merge pull request #15753 from SvenDowideit/make-windows-default-to-use-2376
Default the tcp port to 2376 if tls is on, and 2375 if not
2015-10-11 15:35:04 -07:00
Zhang Kun b4d6b23838 add size to inspect
Signed-off-by: Zhang Kun <zkazure@gmail.com>
2015-10-10 20:44:29 +08:00
Sven Dowideit 50f0906007 Default the tcp port to 2376 if tls is on, and 2375 if not
Refactor so that the Host flag validation doesn't destroy the user's input,
and then post process the flags when we know the TLS options

Signed-off-by: Sven Dowideit <SvenDowideit@home.org.au>
2015-10-09 17:48:03 -07:00
Diogo Monica d9a2fadb5e Changing docs to reflect new names
Signed-off-by: Diogo Monica <diogo@docker.com>
2015-10-09 15:13:37 -07:00
Diogo Monica 52240c2d62 Changed trust ENV variables while still supporting old ones
Signed-off-by: Diogo Monica <diogo@docker.com>
2015-10-09 12:19:43 -07:00
Lei Jitang 458ec418cd Add more cgroup config to docker info
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-10-09 03:02:04 -04:00
Jess Frazelle a1d432301d Merge pull request #16859 from diogomonica/changing-trust-server-checks
Changing trustServer allowed URL validation
2015-10-08 18:33:35 -07:00
Diogo Monica a2f9fb7777 Changing trustServer allowed URL behavior
Signed-off-by: Diogo Monica <diogo@docker.com>
2015-10-08 17:47:25 -07:00
Jess Frazelle 4796b5c2f8 Merge pull request #16544 from Mashimiao/fix-bug-client-start-signal-discarded
client/start: fix logic for discarded signal
2015-10-08 12:54:31 -07:00
Jess Frazelle cc411c054f Merge pull request #16785 from cpuguy83/exec_cleanup
Cleanup some issues with exec
2015-10-08 12:02:03 -07:00
Jess Frazelle b5d914188e Merge pull request #16674 from coolljt0725/use_consistent_command_description
Use consistent command description
2015-10-08 12:01:16 -07:00
Jess Frazelle 9123f77a78 Merge pull request #16817 from cpuguy83/explicit_volume_ls
Make `docker volume` behave like `docker network`
2015-10-08 11:36:51 -07:00
Lei Jitang 2b0927c9ac Use consistent command description
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-10-08 08:46:21 -04:00
Arnaud Porterie 8e31036816 Merge pull request #16645 from mavenugo/ux
Docker Network UX & remote API changes
2015-10-07 10:44:58 -07:00
Brian Goff 2feebd95d3 Make `docker volume` behave like `docker network`
Before, typing `docker volume` with no args would forward to the handler
for `docker volume ls`, except the flags for the `ls` subcommand were
not supported.
Instead just print the cmd usage.

This makes the behavior of the `docker volume` subcommand behave exactly
like the `docker network` subcommand.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-07 13:36:46 -04:00
Madhu Venugopal 22a9ba090e Network UX and integration tests
* Exiting experimental network UX
* removed experimental service UX
* integrated with the new network remote API

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-10-07 03:54:27 -07:00
Tibor Vass e0ef11a4c2 Abstract builder and implement server-side dockerfile builder
This patch creates interfaces in builder/ for building Docker images.
It is a first step in a series of patches to remove the daemon
dependency on builder and later allow a client-side Dockerfile builder
as well as potential builder plugins.

It is needed because we cannot remove the /build API endpoint, so we
need to keep the server-side Dockerfile builder, but we also want to
reuse the same Dockerfile parser and evaluator for both server-side and
client-side.

builder/dockerfile/ and api/server/builder.go contain implementations
of those interfaces as a refactoring of the current code.

Signed-off-by: Tibor Vass <tibor@docker.com>
2015-10-06 19:10:19 -04:00
Brian Goff 561005e5ca Cleanup some issues with exec
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-10-06 15:22:20 -04:00
Sebastiaan van Stijn 67eb810a60 Merge pull request #16744 from runcom/fix-mam-commandline
Fix man and commandline docs
2015-10-04 22:28:19 +02:00
Antonio Murdaca 14e8898648 Fix man and commandline docs
- missing help option in `docs/reference/commandline/*.md` (some files
  have it, the other I fixed didn't)
- missing `[OPTIONS]` in Usage description
- missing options
- formatting
- start/stop idempotence

Signed-off-by: Antonio Murdaca <amurdaca@redhat.com>
2015-10-04 21:22:27 +02:00
Vincent Demeester b78f66c472 Merge pull request #16509 from HuKeping/search-problem
Fix docker search problem
2015-10-04 18:21:32 +02:00
Hu Keping f04e8fdb9b Fix docker search problem
Search terms shouldn't be restricted to only full valid repository
names. It should be perfectly valid to search using a part of a name,
even if it ends with a period, dash or underscore.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-10-04 23:23:43 +08:00
Lei Jitang 3fcf481361 Fix docker ps truncate long image name by default
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-10-02 22:56:42 +08:00
Arnaud Porterie 7d193ef1f3 Add builtin nodes discovery
Use `pkg/discovery` to provide nodes discovery between daemon instances.

The functionality is driven by two different command-line flags: the
experimental `--cluster-store` (previously `--kv-store`) and
`--cluster-advertise`. It can be used in two ways by interested
components:

1. Externally by calling the `/info` API and examining the cluster store
   field. The `pkg/discovery` package can then be used to hit the same
   endpoint and watch for appearing or disappearing nodes. That is the
   method that will for example be used by Swarm.
2. Internally by using the `Daemon.discoveryWatcher` instance. That is
   the method that will for example be used by libnetwork.

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
2015-09-25 14:52:09 -07:00
Ma Shimiao 6d25eb6e7c client/start: fix logic for discarded signal
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
2015-09-25 11:25:29 +08:00
Ma Shimiao 19613feddf client/search: small logic fix
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
2015-09-24 11:11:03 +08:00
Brian Goff 40e8560412 Merge pull request #16415 from HuKeping/dockerinfo
Format output of docker info
2015-09-23 21:15:23 -04:00
Jess Frazelle d71ae45772 Merge pull request #16484 from HuKeping/history-format
Format the output of docker history
2015-09-23 16:52:21 -07:00
Jess Frazelle c0c941627a Merge pull request #16289 from cpuguy83/11957_fix_stdin_block_after_container_exit
Ensure stdin does not block after container stop
2015-09-23 15:29:48 -07:00
Hu Keping 141e91c480 Format output of docker info
Format those info which will only be displayed when daemon is
in debug mode.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-23 14:35:13 +08:00
Hu Keping 6353f3a7b5 Format the output of docker history
Once there have '\t' in the "CREATED BY" section, it will possibly
cause a messy output of docker history.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-22 21:27:20 +08:00
David Calavera a7e23cab8d Merge pull request #15864 from dmcgowan/notary-offline
Support content trust offline
2015-09-21 21:11:36 -07:00
Evan Hazlett 0c71c19239 Merge pull request #16404 from duglin/FixRenameError
Fix 'rename' error msg and error checking
2015-09-21 15:51:02 -04:00
Zhang Kun 7cf343d106 add docker server version to /info
Signed-off-by: Zhang Kun <zkazure@gmail.com>
2015-09-21 21:15:32 +08:00
Sally O'Malley e41753678d docker restarts running OR stopped containers, docs edit rm "running"
Signed-off-by: Sally O'Malley <somalley@redhat.com>
2015-09-20 09:16:27 -04:00
Doug Davis 848792c42e Fix 'rename' error msg and error checking
`docker rename foo ''` would result in:
```
usage: docker rename OLD_NAME NEW_NAME
```
which is the old engine's way of return errors - yes that's in the
daemon code.  So I fixed that error msg to just be normal.

While doing that I noticed that using an empty string for the
source container name failed but didn't print any error message at all.
This is because we would generate a URL like: ../containers//rename/..
which would cause a 301 redirect to ../containers/rename/..
however the CLI code doesn't actually deal with 301's - it just ignores
them and returns back to the CLI code/caller.

Rather than changing the CLI to deal with 3xx error codes, which would
probably be a good thing to do in a follow-on PR, for this immediate
issue I just added a cli-side check for empty strings for both old and
new names. This way we catch it even before we hit the daemon.

API callers will get a 404, assuming they follow the 301, for the
case of the src being empty, and the new error msg when the destination
is empty - so we should be good now.

Add tests for both cases too.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-09-18 11:12:22 -07:00
Brian Goff 3dbfb3d38c Ensure stdin does not block after container stop
Fixes #11957
Fixes #12319

Also removes check for Darwin when the stdin reader is closed as it
doesn't appear to block any more.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-09-18 13:48:07 -04:00
Hu Keping da67833e63 Reset data of stats in docker cli when container stopped
When use `docker stats` to minitor a running container and then stop it,
there are some fields need to be reset to zero. Otherwise it will keep
displaying the data it received last time.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-18 15:24:13 +08:00
Antonio Murdaca ffaee8fe78 Merge pull request #16336 from mountkin/fix-hijack
error should be checked earlier in the hijack function
2015-09-17 09:38:48 +02:00
Shijiang Wei f2d978ccf9 error should be checked earlier in the hijack function
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2015-09-16 20:28:07 +08:00
Madhav Puri 54240f8da9 Support for passing build-time variables in build context
- The build-time variables are passed as environment-context for command(s)
run as part of the RUN primitve. These variables are not persisted in environment of
intermediate and final images when passed as context for RUN. The build environment
is prepended to the intermediate continer's command string for aiding cache lookups.
It also helps with build traceability. But this also makes the feature less secure from
point of view of passing build time secrets.

- The build-time variables also get used to expand the symbols used in certain
Dockerfile primitves like ADD, COPY, USER etc, without an explicit prior definiton using a
ENV primitive. These variables get persisted in the intermediate and final images
whenever they are expanded.

- The build-time variables are only expanded or passed to the RUN primtive if they
are defined in Dockerfile using the ARG primitive or belong to list of built-in variables.
HTTP_PROXY, HTTPS_PROXY, http_proxy, https_proxy, FTP_PROXY and NO_PROXY are built-in
variables that needn't be explicitly defined in Dockerfile to use this feature.

Signed-off-by: Madhav Puri <madhav.puri@gmail.com>
2015-09-16 03:31:15 -07:00
Hu Keping d3379946ec Refactor the statistics of network in docker stats
For now docker stats will sum the rxbytes, txbytes, etc. of all
the interfaces.

It is OK for the output of CLI `docker stats` but not good for
the API response, especially when the container is in sereval
subnets.

It's better to leave these origianl data to user.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-15 15:40:34 +08:00
David Calavera 7ce270d4ea Merge pull request #15931 from vdemeester/api-client-ps-coverage
Add more unit tests on api/client/ps package
2015-09-14 14:02:49 -07:00
Derek McGowan 5e11cd43aa Ignore ping errors in notary repository setup
Notary is capable of acting in offline mode, making use of cache TUF data.
When ping is not successful, notary should still be attempted without error.

Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2015-09-14 11:08:25 -07:00
Nalin Dahyabhai e611a189cb Add log reading to the journald log driver
If a logdriver doesn't register a callback function to validate log
options, it won't be usable.  Fix the journald driver by adding a dummy
validator.

Teach the client and the daemon's "logs" logic that the server can also
supply "logs" data via the "journald" driver.  Update documentation and
tests that depend on error messages.

Add support for reading log data from the systemd journal to the
journald log driver.  The internal logic uses a goroutine to scan the
journal for matching entries after any specified cutoff time, formats
the messages from those entries as JSONLog messages, and stuffs the
results down a pipe whose reading end we hand back to the caller.

If we are missing any of the 'linux', 'cgo', or 'journald' build tags,
however, we don't implement a reader, so the 'logs' endpoint will still
return an error.

Make the necessary changes to the build setup to ensure that support for
reading container logs from the systemd journal is built.

Rename the Jmap member of the journald logdriver's struct to "vars" to
make it non-public, and to make it easier to tell that it's just there
to hold additional variable values that we want journald to record along
with log data that we're sending to it.

In the client, don't assume that we know which logdrivers the server
implements, and remove the check that looks at the server.  It's
redundant because the server already knows, and the check also makes
using older clients with newer servers (which may have new logdrivers in
them) unnecessarily hard.

When we try to "logs" and have to report that the container's logdriver
doesn't support reading, send the error message through the
might-be-a-multiplexer so that clients which are expecting multiplexed
data will be able to properly display the error, instead of tripping
over the data and printing a less helpful "Unrecognized input header"
error.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com> (github: nalind)
2015-09-11 16:50:03 -04:00
Hu Keping 22be1e443f Refactor CLI docker save
Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-11 15:31:55 +08:00
David Calavera a796ac5318 Merge pull request #14626 from kunalkushwaha/add-network-cli-help
"docker network" missing from docker --help
2015-09-09 13:36:43 -07:00
Hu Keping e9602f3561 Use TrimSpace to instead of Trim
String.Trim(string, " ") can only get ride of the blank, but actully we need
to remove all leading and trailing white space include "\t" for example.

Prior to this patch, one can login with "[Tab][Tab]username", and it will
not be consider as the same with "username".

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-09 19:37:33 +08:00
Doug Davis 87255b6721 Add --help to "docker volume inspect --help" output
Closes #16146

While in there, modified the testing infrastructure for the help text
so that we can get commands with nested commands - like "volume".

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-09-08 14:24:00 -07:00
Harald Albers 00eaa7e1f5 Fix usage for `docker volume inspect` and `docker volume rm`
For both commands, volume is _not_ optional. Several volumes may
be specified.
Both commands now use the same name (VOLUME) for the command argument.

Signed-off-by: Harald Albers <github@albersweb.de>
2015-09-08 09:14:57 -07:00
Brian Goff 5f5d73d515 Merge pull request #14488 from HuKeping/fixstats
Fix connection block when using docker stats API
2015-09-08 10:01:11 -04:00
David Calavera 719886d435 Make RegistryConfig a typed value in the api.
Remove possible circular dependency that prevented us from using a real
type.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-09-07 19:29:33 -04:00
Vincent Demeester 6baf65d1a6 Complete unit tests on api/client/ps package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-09-06 22:05:57 +02:00
Hu Keping d9bf8163ad Fix connection block when using docker stats API
For now CLI `docker stats` will not block even if the container was
not running is because there is a 2s timeout setting when waiting for
the response.

I think why we hang there waiting for the container to run is because we
want to get the stats of container immediately when it starts running.
But it will block when use the API directly, for example
- curl
- Google Chrome plugin, Postman
- Firefox plugin, RESTClient

This patch keeps the feature that getting info immediately when container
starts running and in the meantime, it will not block when using the API
directrly.

Signed-off-by: Hu Keping <hukeping@huawei.com>
2015-09-06 17:21:41 +08:00
Kunal Kushwaha 44da5c3de2 "docker network" missing from docker --help
Fixed issues related to network subcommand tests
- "network" in exempted list of short help check
- Condition for exact test modified to meet experimental commands
- Sorting of commands done in flags_experimental

Signed-off-by: Kunal Kushwaha <kunal.kushwaha@gmail.com>
2015-09-04 15:34:17 +09:00
angt 01059cba78 Fix typo
Signed-off-by: Adrien Gallouët <agallouet@gmail.com>
2015-09-02 10:43:49 +02:00
John Howard 49c1b51ae2 Windows: Fix absolute checks
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-09-01 08:41:37 -07:00
Brian Goff 38da43184d Fix `docker volume invalid` so it displays usage
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-08-27 09:46:05 -04:00
Brian Goff b3b7eb2723 Add volume API/CLI
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-08-26 13:37:52 -04:00
Cholerae Hu d30990d7b1 api/client/restart.go:Fix a typo in comment
Signed-off-by: Yingqian Hu <choleraehyq@gmail.com>
2015-08-26 18:59:56 +08:00
Taylor Jones 936b2c6afe adding message option to the import subcommand
Signed-off-by: Taylor Jones <monitorjbl@gmail.com>
2015-08-25 02:55:04 +00:00
Lei Jitang 211449a1ca Fix docker stats show blkio when there are multiple block devices.
Signed-off-by: Lei Jiang <leijitang@huawei.com>
2015-08-20 11:46:21 +08:00
Doug Davis 29ced5d0c4 Merge pull request #15599 from calavera/ps_format_q
Fix ignore `-q` flag in `docker ps` when there is a default format.
2015-08-17 15:44:28 -07:00
David Calavera 436fca704f Merge pull request #15356 from Microsoft/10662-uncpathonbuild
Windows: Allow UNC paths on build
2015-08-17 13:34:27 -07:00
John Howard df7ab6f3db Windows: Allow UNC paths on build
Signed-off-by: John Howard <jhoward@microsoft.com>
Signed-off-by: Stefan J. Wernli <swernli@microsoft.com>
2015-08-17 11:03:54 -07:00
David Calavera df46bfdd4d Fix ignore `-q` flag in `docker ps` when there is a default format.
Docker ps default format should not take precedence over cli flags.
This happens effectively for other flags except `-q`.
We need to let the cli to set the format as table to print the
expected output with `-q`.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-08-17 10:48:04 -07:00
Vincent Demeester 4fb88d2e11 Fix #8048 : make `docker images repository:tag` work
Make command like "docker images ubuntu:14.04" work and filter out the
image with the given tag.

Closes #8048.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2015-08-13 08:50:09 +02:00
Qiang Huang 81cc8ebc93 Change all docker -d to docker daemon
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-08-10 20:48:08 +08:00
Brian Goff cc73fc03e8 Merge pull request #15421 from maaquib/15418-ps-image-id-too-wide
Truncating image id is docker ps to a length of 12
2015-08-08 07:48:16 -04:00