Commit Graph

100 Commits

Author SHA1 Message Date
2e3f90f2fd Un-deprecated command line short variant options of -c.
Since 1.9, the following short variant options have been
deprecated in favor of their long variants:
`docker run -c (--cpu-shares)`
`docker build -c (--cpu-shares)`
`docker create -c (--cpu-shares)`
`docker update -c (--cpu-shares)`

However, `-c` is still widely used and is considered as
a convenient option for swarm (see #16271).

This fix undeprecated the command line short
variant options of `-c` and updated the deprecated.md.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: fea7acf0e9f0532af7451a3c3835a0cfabf4fb20
Component: engine
2016-05-26 08:22:27 -07:00
c8d36013e6 Rework usage of context.Context in api/client
Make better default usage on context.Context on the `api/client` package
to share the context (it is useless if not shared, which was the case
for a lot of commands).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 4c7f0d268f413b4a55ea638a97382d9316d082af
Component: engine
2016-05-21 15:57:57 +02:00
b48cb728b8 Update client code with api changes
Using new methods from engine-api, that make it clearer which element is
required when consuming the API.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: b9c94b70bf2f703f260844b3862a61f93dee6337
Component: engine
2016-04-15 12:48:01 +02:00
fe56b4ef22 add label support for build, networks and volumes
build: implement --label

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>

network: allow adding labels on create

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>

volume: allow adding labels on create

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>

add tests for build, network, volume

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>

vendor: libnetwork and engine-api bump

Signed-off-by: Evan Hazlett <ejhazlett@gmail.com>
Upstream-commit: fc214b4408d915e3510f61c7584ca01c176d1373
Component: engine
2016-03-22 11:49:06 -04:00
d72402c2b3 Merge pull request #21273 from jfrazelle/remove-dead-code
remove dead code
Upstream-commit: 04c7d94c710bdb6c8378bdf896fd67455ba23199
Component: engine
2016-03-17 09:16:02 -07:00
8366a6bcc0 remove dead code
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
Upstream-commit: 8dd88afb5b5f8ce353c00bfc71edf8238f3a0452
Component: engine
2016-03-16 19:15:14 -07:00
195d725261 *: fix response body leaks
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: f0d83c4cdb49adb53fdaf4216a4395c23d5cc8e9
Component: engine
2016-03-16 17:15:42 +01:00
049d8d3bcf cliconfig: credentials: support getting all auths
docker build is broken because it sends to the daemon the full
cliconfig file which has only Email(s). This patch retrieves all auth
configs from the credentials store.

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 44152144ca766221e97fdaa5200fec3557a64f58
Component: engine
2016-03-02 17:48:56 +01:00
e56e27b666 Move getContext… function to builder package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 312f5e435bed2ca45477dc9e4713d35aabe37075
Component: engine
2016-02-11 20:59:59 +01:00
f35a03ff6d Windows: Fix 'isolation'
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: d4b0732499feac87cf7c433b9490a4e21e94fb45
Component: engine
2016-02-10 13:19:19 -08:00
566c96f73b Move validateContextDirectory to builder package.
This feels like it's where it belongs and it makes it exported
again (which is needed for libcompose that was using it before 1.10).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: fc6122a947f9eb9fc2f54fb8ba3b9da4531a6b99
Component: engine
2016-02-09 22:19:09 +01:00
32fac24f32 Apply context changes to the client.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: fe53be4e1785ab4d8cadf246e5f2de419f337adc
Component: engine
2016-02-04 13:59:57 -05:00
dca237fb71 api: client: build: do not fall through if git isn't installed
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 167cc42986c8939c7aacf73570adaf19b8cad0b3
Component: engine
2016-01-19 16:50:14 +01:00
bd1120dfd8 Make daemonbuilder.Docker leaner.
Currently builder.Backend is implemented by daemonbuilder.Docker{} for
the daemon. This registration happens in the API/server code. However,
this is too implementation specific. Ideally we should be able to specify
that docker daemon (or any other) is implementing the Backend and abstract
the implementation details. So we should remove package daemonbuilder
dependency in build_routes.go

With this change, daemonbuilder.Docker is nothing more than the daemon.
A follow on change will remove the daemonbuilder package and move relevant
methods under daemon, so that API only knows about the backend.

Also cleanup code in api/client/build.go. docker cli always performs build
context tar download for remoteURLs and sends an empty remoteContext. So
remove relevant dead code.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
Upstream-commit: 14215ed5a1900a88a3b17dd7cd566def50bfcbc9
Component: engine
2016-01-18 09:16:11 -08:00
d461b41f22 Avoid extracting to temp directory on building from tar
Fixes #15785

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 42961a66a5c1575d81c89aa258f6624f48bba94d
Component: engine
2016-01-12 17:43:52 -08:00
5dc0139c60 Merge pull request #18840 from aaronlehmann/trust-messages
Send push information to trust code out-of-band
Upstream-commit: 2892de760f412360c5effef9cfc346f2d92eaa4c
Component: engine
2016-01-08 16:56:57 -08:00
12ab071eb0 Merge pull request #19135 from Microsoft/jjh/securitywarning
Windows: Fix security warning regression
Upstream-commit: 807d575b5ef1785ded1038dca2cfbf2afa2d5a0c
Component: engine
2016-01-08 13:55:41 -08:00
d54e9ca21b Send push information to trust code out-of-band
The trust code used to parse the console output of `docker push` to
extract the digest, tag, and size information and determine what to
sign. This is fragile and might give an attacker control over what gets
signed if the attacker can find a way to influence what gets printed as
part of the push output.

This commit sends the push metadata out-of-band. It introduces an `Aux`
field in JSONMessage that can carry application-specific data alongside
progress updates. Instead of parsing formatted output, the client looks
in this field to get the digest, size, and tag from the push.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: 65370be888d940899593a001024f53d6b83b4bb0
Component: engine
2016-01-08 10:57:50 -08:00
68fdf5d8eb Merge pull request #19058 from dnephin/move_opts_to_runconfig_opts
Move some opts validators to runconfig/opts where they are used
Upstream-commit: 018081d5a9acadb218e1284b11b200418aef5e0f
Component: engine
2016-01-08 12:34:49 +01:00
4ec2693c9e Modify import paths to point to the new engine-api package.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 907407d0b2e5863f0e1b40b93a356bbf03c7b9fb
Component: engine
2016-01-06 19:48:59 -05:00
30a8d72704 Windows: Fix security warning regression
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: ebf4c917170215663157f028798e0244040b6be3
Component: engine
2016-01-06 15:54:43 -08:00
d39715c705 Merge pull request #19099 from calavera/replace_docker_only_trust_enabled
Do not perform build context switch when content trust is not enabled.
Upstream-commit: 7fab93175d605f98cddf811819d9ab081bb4f90e
Component: engine
2016-01-06 18:09:30 -05:00
7e1567846e Do not perform build context switch when content trust is not enabled.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 18d15babefb4e89ac581a0b75455f83c6e7aae25
Component: engine
2016-01-05 19:23:20 -05:00
f688b73835 Use ImageBuildOptions in builder.
dockerfile.Config is almost redundant with ImageBuildOptions.
Unify the two so that the latter can be removed. This also
helps build's API endpoint code to be less dependent on package
dockerfile.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
Upstream-commit: 5190794f1d85d5406611eb69c270df62ac1cdc7f
Component: engine
2016-01-05 10:09:34 -08:00
264e25998d Move some validators from opts to runconfig/opts.
These validators are only used by runconfig.Parse() or some other part of the
client, so move them into the client-side package.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 0007f5a85935b2edcb08eb2d7e736e4db59157a9
Component: engine
2016-01-04 14:35:36 -05:00
b58ec08634 Use constant instead of "scratch"
Move NoBaseImageSpecifier to a common spot and then use it instead of
"scratch" in a couple of places.

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: e6806223e81c916c9b24580b19207271f1a36965
Component: engine
2015-12-31 06:21:56 -08:00
c8d08c88b3 Fix docs for memory-swap
Fixes: #18894

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: c68a483e442758733e800546545f1e016113d9cd
Component: engine
2015-12-30 09:23:35 +08:00
73f5d740e8 Move ValidateContextDirectory to the one package that uses it.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 9e19b4839fe32d2935306a630305e7b821544c14
Component: engine
2015-12-28 11:22:39 -05:00
b109cc7bb5 Move ulimit options to runconfig opts
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 5adbea7075b2fda6ea9947d131aaa2a5db0c1295
Component: engine
2015-12-23 13:27:58 -05:00
1c5df6581b Change the quiet flag behavior in the build command
Right now, the quiet (-q, --quiet) flag ignores the output
generated from within the container.

However, it ought to be quiet in a way that all kind
of diagnostic output should be ignored, unless the build
process fails.

This patch makes the quiet flag behave in the following way:
 1. If the build process succeeds, stdout contains the image ID
    and stderr is empty.
 2. If the build process fails, stdout is empty and stderr
    has the error message and the diagnostic output of that process.

If the quiet flag is not set, then everything goes to stdout
and error messages, if there are any, go to stderr.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
Upstream-commit: 60b4db7eb17f4eb509be4a4968364ada2075d60c
Component: engine
2015-12-21 16:38:50 +02:00
31f577ea49 Clean up reference type switches
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: eeb2d4c1adbe4e00f9fbcdc70f9ac31997968e1d
Component: engine
2015-12-16 11:58:53 -08:00
84a459522b Remove unused repoinfo
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: c1040b222c2520f8a0ebe14e81b5b7fe188e8dc6
Component: engine
2015-12-16 11:58:52 -08:00
9b8bb0d4e1 Update Named reference with validation of conversions
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: ffded61dad76e4c6530359d879afe83907e409a7
Component: engine
2015-12-16 11:58:52 -08:00
020b74d545 Add own reference package wrapper
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
Upstream-commit: 2655954c2dd9d92c2394b04e4262543174c4c038
Component: engine
2015-12-16 11:58:52 -08:00
3d517a11e5 Replace pkg/units with docker/go-units.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 4fef42ba206ac90346e6e0fe25bead3f77dc4b0f
Component: engine
2015-12-16 12:26:49 -05:00
1caa5bd099 utils: move dockerignore function to builder/dockerignore
Signed-off-by: Tibor Vass <tibor@docker.com>
Upstream-commit: 63e3816c1dd449de63500a2b5fec9c2a33a0894c
Component: engine
2015-12-14 14:59:52 +01:00
86409751de utils: move git functions to pkg/gitutils
Signed-off-by: Tibor Vass <tibor@docker.com>
Upstream-commit: 135cca6f52c7862f13f50c30ccf5925038ba40a9
Component: engine
2015-12-14 14:59:52 +01:00
3c4fcf6b7a Fix typos found across repository
Signed-off-by: Justas Brazauskas <brazauskasjustas@gmail.com>
Upstream-commit: 927b334ebfc786276a039e45ec097e71bf9a104c
Component: engine
2015-12-13 18:04:12 +02:00
547342d777 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>
Upstream-commit: 572ce802306a4e919802e5b77cbeca94acda7c0a
Component: engine
2015-12-09 19:13:35 -08:00
964dd12e59 Create interface that clients that talk to the api must fulfill.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 8b15839ee85b291266d07f97d9ad6ca0326d1339
Component: engine
2015-12-09 12:04:58 -05:00
f60fb78ebb Implement docker build with standalone client lib.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 535c4c9a59b1e58c897677d6948a595cb3d28639
Component: engine
2015-12-09 12:04:55 -05:00
1af1c81aab Merge pull request #18123 from aidanhs/aphs-fail-on-broken-tar
Ensure adding a broken tar doesn't silently fail
Upstream-commit: 1f8efc687cdf8ba98a7332cf9d4401afb8108be6
Component: engine
2015-12-07 14:38:21 +01:00
ec12c4920e fix shm size handling
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: ef1d410b0270fa7309d76aded34113396def7fb2
Component: engine
2015-12-01 16:29:40 +01:00
e105a29374 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>
Upstream-commit: 4352da7803d182a6013a5238ce20a7c749db979a
Component: engine
2015-11-24 09:40:25 -08:00
60942ba73e Ensure adding a broken tar doesn't silently fail
Signed-off-by: Aidan Hobson Sayers <aidanhs@cantab.net>
Upstream-commit: 3243e504d01ea1efa141f3e3cc296903d7d62ca4
Component: engine
2015-11-23 14:18:58 +00:00
4581692a0e 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>
Upstream-commit: 5aeaf2a0c4236711e0981515d8627b30e22a1637
Component: engine
2015-11-20 09:24:18 +09:00
2e538bcbf1 Remove deprecated cli flags
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
Upstream-commit: 7929888214741c4ab194c44e0b14ac08aca06556
Component: engine
2015-11-15 10:40:01 +01:00
884d36120f Windows: Allows --isolation on docker build
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: d5c85897f43b1956f874c6c93d10c30b5b82a726
Component: engine
2015-10-30 11:14:38 -07:00
14116a686a Windows: Volume integration tests
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 2af5034ce8faa1f93d81864aa25ec64527fac76b
Component: engine
2015-10-26 14:33:28 -07:00
a4eeeb73b3 Add ability to add multiple tags with docker build
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
Upstream-commit: c2eb37f9aeb6215293483e02613514e49011cf2c
Component: engine
2015-10-24 00:59:56 +08:00