Commit Graph

630 Commits

Author SHA1 Message Date
6739612157 Fix completion of commands after a global option with arg
Without this fix, `docker -l info ` would not complete the commands.

Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: aab82c5c2230fa328bfac3c156b482634a42b73c
Component: engine
2015-07-31 20:16:33 +02:00
fceb28a0c5 Add completion of global options to docker daemon
It's a bit confusing: the "global options" are valid as "global options"
for all client commands (i.e. all but daemon).
Example: `docker --log-level info run`

For `docker daemon`, these "global options" are only valid as "command
options".
Example: `docker daemon --log-level info`

As command completion cannot tell which command the user is going to
type next, completion for the daemon command has to allow illegal
syntaxes like
`docker --log-level info daemon --log-level info`

Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: e0dad9a153fb8aad44cc36aa4bd14e297b5f120c
Component: engine
2015-07-31 20:06:45 +02:00
5a700e39a6 Merge pull request #15154 from stefanberger/apparmor-engine
contrib: Extend engine apparmor profile for tools needed by devicemapper
Upstream-commit: f8f4deb0b2c52d97322a9c66d05ee8d4d8a4d665
Component: engine
2015-07-30 19:22:28 -04:00
a6f038e8ac Add docker daemon to bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
Signed-off-by: Tibor Vass <tibor@docker.com>
Upstream-commit: 8cc8ee9254ead6ba5e4f708d7a04ac88a74ccb0a
Component: engine
2015-07-30 14:08:55 -04:00
2019ed6eb5 contrib: Extend engine apparmor profile for tools needed by devicemapper
Add tools to the apparmor profile that are needed when -s devicemapper is
in the docker daemon's command line.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
Upstream-commit: 9dbc36b44146c82804206c1240b94216b69c740e
Component: engine
2015-07-30 06:45:57 -04:00
98427d5929 Mark engine AA policy as complain-only
The engine policy will now only complain
as a temporary measure to ensure we do not
cause breakages while users exercise this
policy.

This is NOT the policy for containers, but
for the newly-introduced policy for the
daemon itself.

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 6c887be76951e802900a07e16aeaf0a079ac4534
Component: engine
2015-07-28 17:45:53 -04:00
52f12a12af AA: Eliminate 'file' permission
Implements the policies for the remaining binaries
called by the Docker engine and eliminates the
giant whitelisted 'all files' permission in favor
of granular whitelisting and child-specific policies.

It should be possible now to remove the 'file' permission,
but for the sake of keeping Docker unbroken, we'll try
to gradually tighten the policy.

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 8b2fcddcd251e58473abf6c4949573e03f44bb96
Component: engine
2015-07-28 17:45:53 -04:00
e9b83a5a26 Restore AppArmor profile generation
Will attempt to load profiles automatically. If loading fails
but the profiles are already loaded, execution will continue.

A hard failure will only occur if Docker cannot load
the profiles *and* they have not already been loaded via
some other means.

Also introduces documentation for AppArmor.

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 3edc88f76df6a3bc9d887de8157ec71730c9057a
Component: engine
2015-07-28 17:45:51 -04:00
f1dcd8a79e Fix file mode for docker bash completion
A bash completion file shouldn't have a executable bit set.
Just change file mode to 644 (instead of 755).

Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
Upstream-commit: 37169daddabe19754659d8e28aaa1bf4f31c6124
Component: engine
2015-07-27 22:07:04 +02:00
61a71388a8 Revert "Introduce a dedicated unconfined AA policy"
This reverts commit 87376c3add7dcd48830060652554e7ae43d11881.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 94ab0d312fedaf063a6487c6b1b8b7b97221d24a
Component: engine
2015-07-24 16:35:51 -07:00
7ec7d6b833 Remove Ubuntu 14.10 (Utopic Unicorn) from build-deb targets
As of July 23, 2015, it is officially EOL (https://lists.ubuntu.com/archives/ubuntu-announce/2015-July/000198.html) and will receive no further updates.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
Upstream-commit: a83e4e4a3411be7ae461408bb1c99f2f9af1f5ee
Component: engine
2015-07-24 13:21:01 -07:00
3fc3a860d8 Merge pull request #14865 from calavera/update_init_scripts
Update init scripts to use `docker daemon`.
Upstream-commit: 4eee075f222082940690a385ec62923dd9303909
Component: engine
2015-07-24 09:47:03 -07:00
c4ddbfd5f9 Merge pull request #14545 from Djelibeybi/oraclelinux6-rpm
Updated docker-engine.spec to build on Oracle Linux 6.
Upstream-commit: c6f4c192fe33bd04fb2b624c115d176f17de7a06
Component: engine
2015-07-23 13:29:48 -07:00
3d278636eb Merge pull request #14034 from hqhq/hq_checkconfig_xattr
Some check_config enhancement
Upstream-commit: f28877257bf87a967509933159b16f24846338cb
Component: engine
2015-07-23 13:01:59 -07:00
a9894a24cf Merge pull request #13933 from ypid/mkimage-no-compression
Do not compress rootfs archive in mkimage.sh.
Upstream-commit: 8c2836399338e72eeaaa079a893488c768da97c1
Component: engine
2015-07-23 10:22:07 -07:00
f26842120f Merge pull request #14855 from ewindisch/apparmor-unconfined
Introduce a dedicated unconfined AA policy
Upstream-commit: ac9fc03c74e65a6a18bc0854d4a2841637fe1acf
Component: engine
2015-07-23 10:21:51 -07:00
f7e4d6020e Complete all known driver options if no log driver was specified
Without this fix, `docker --log-opt ` would not complete anything
because the completions were driver specific.

Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: de40f3997a7aae94e925d8f694e2161b1b1b92bb
Component: engine
2015-07-23 14:19:13 +02:00
f7f00cecc7 Fix problem with = in completion of docker global options
Without this fix, `docker --log-driver fluentd --log-opt fluentd-tag=b`
would complete `b` to `build`.
Completion of the commands has to be nailed to __docker_pos_first_nonflag

Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: 6de8dd1a6e37ea6ef04d779c6348452c1a3c2370
Component: engine
2015-07-23 13:52:06 +02:00
Lei
b278b668e9 Add ulimit to docker build.
Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: 877dbbbde8aaf6583a81d9946e4c83db8e356b1a
Component: engine
2015-07-23 10:26:06 +08:00
76ec388f40 Merge pull request #14864 from ewindisch/apparmor-engine-policy
Add AppArmor policy for the docker binary
Upstream-commit: a7d84503128720612022d46f5c9c04602cb19f05
Component: engine
2015-07-22 13:56:33 -07:00
6e935ab7ff actually update deb dockerfiles
Signed-off-by: Jessica Frazelle <princess@docker.com>
Upstream-commit: 1fff0a5cc5503ed2af0fd0b9bf775ebd41917a44
Component: engine
2015-07-22 13:06:04 -07:00
45caf3ce23 Update init scripts to use docker daemon.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 346ce4f8d24de0db5ccc17151f2207cee10abc2e
Component: engine
2015-07-22 11:24:38 -07:00
ae18180fac Add AppArmor policy for the engine
Wraps the engine itself with an AppArmor policy.

This restricts what may be done by applications
we call out to, such as 'xz'.

Significantly, this policy also restricts the policies
to which a container may be spawned into. By default,
users will be able to transition to an unconfined
policy or any policy prefaced with 'docker-'.

Local operators may add new local policies prefaced
with 'docker-' without needing to modify this policy.
Operators choosing to disable privileged containers
will need to modify this policy to remove access
to change_policy to unconfined.

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 39dae54a3f40035b1b7e5ca86c53d05dec832ed2
Component: engine
2015-07-22 14:20:50 -04:00
9f8e7b5fed Introduce a dedicated unconfined AA policy
By using the 'unconfined' policy for privileged
containers, we have inherited the host's apparmor
policies, which really make no sense in the
context of the container's filesystem.

For instance, policies written against
the paths of binaries such as '/usr/sbin/tcpdump'
can be easily circumvented by moving the binary
within the container filesystem.

Fixes GH#5490

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 87376c3add7dcd48830060652554e7ae43d11881
Component: engine
2015-07-22 11:28:32 -04:00
417958d0e1 Merge pull request #14770 from albers/completion-log-opt
Bash completion for log drivers and their options
Upstream-commit: 052b23e2901131393737829b03a7e8a37e9232f6
Component: engine
2015-07-21 19:58:12 -07:00
797e2bf06e Merge pull request #14677 from vincentbernat/fix/zsh-completion-update-4
zsh: update zsh completion for docker command
Upstream-commit: 162ae444afd9a82af4c3448654bef03fedb11d04
Component: engine
2015-07-21 19:56:03 -07:00
84681c30e3 Merge pull request #14609 from ewindisch/apparmor-policy
Move AppArmor policy to contrib & deb packaging
Upstream-commit: 380959dd68cd56e60a2ea93cd7f26c8d88135483
Component: engine
2015-07-21 08:48:02 -07:00
74cf202b4f Move AppArmor policy to contrib & deb packaging
The automatic installation of AppArmor policies prevents the
management of custom, site-specific apparmor policies for the
default container profile. Furthermore, this change will allow
a future policy for the engine itself to be written without demanding
the engine be able to arbitrarily create and manage AppArmor policies.

- Add deb package suggests for apparmor.
- Ubuntu postinst use aa-status & fix policy path
- Add the policies to the debian packages.
- Add apparmor tests for writing proc files
Additional restrictions against modifying files in proc
are enforced by AppArmor. Ensure that AppArmor is preventing
access to these files, not simply Docker's configuration of proc.
- Remove /proc/k?mem from AA policy
The path to mem and kmem are in /dev, not /proc
and cannot be restricted successfully through AppArmor.
The device cgroup will need to be sufficient here.
- Load contrib/apparmor during integration tests
Note that this is somewhat dirty because we
cannot restore the host to its original configuration.
However, it should be noted that prior to this patch
series, the Docker daemon itself was loading apparmor
policy from within the tests, so this is no dirtier or
uglier than the status-quo.

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 80d99236c1ef9d389dbaca73c1a949da16b56b42
Component: engine
2015-07-21 11:05:53 -04:00
0bc52bd67f Second level completions for --log-opt
Advanced completion for some log driver options:
gelf-address, syslog-address, syslog-facility.

Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: d5aeb3398b6438ea5a1b3de4ec1e5f35d441f462
Component: engine
2015-07-21 08:25:14 +02:00
9acb0cc0fc Remove reference to CENTOS6 from generate script
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
Upstream-commit: 18ca5d7c0e8582bf4e31a8ca1f5c6a5dbc58d55b
Component: engine
2015-07-21 01:21:33 +02:00
d43954849c Completion: Add support for '=' in arguments to __docker_pos_first_nonflag
This solves several problems that arise from the special treatment of
"=" in Bash.
The fix was required as some log drivers have options in a key=value
form. It also addresses the --option=value and the negated boolean syntax
(--boolean=false).

Note that this is not a general fix for these problems, it is limited to
the __docker_pos_first_nonflag function.

Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: 38acec94c49e6730ae6bdef86b85f529c1dddda6
Component: engine
2015-07-20 21:22:56 +02:00
62e6e49ea2 Driver-specific completions for --log-opt
Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: faa8b658e7e7a0e827cf7e05f64dcd2e843452ac
Component: engine
2015-07-20 20:24:01 +02:00
b663092054 Add missing log drivers to bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: e09d0febe644f440e95a7a87e6fdfae8104743d6
Component: engine
2015-07-20 20:13:59 +02:00
0be39dfb3a zsh: update zsh completion for docker command
zsh completion is updated with the content of
felixr/docker-zsh-completion.

 - felixr/docker-zsh-completion@a93e1cb7bd Fix completion of repositories with tags
 - felixr/docker-zsh-completion@590ea70596 Respect provided `--host` flag when invoking docker
 - felixr/docker-zsh-completion@6c557babaa Several cosmetic improvements
 - felixr/docker-zsh-completion@5b63cc591a Update completion for `inspect`
 - felixr/docker-zsh-completion@b7d8f2f7cc Order completions alphabetically
 - felixr/docker-zsh-completion@63f6a06224 Factor completion for `build`, `create` and `run`
 - felixr/docker-zsh-completion@ade49ee47f Enforce positional arguments being last
 - felixr/docker-zsh-completion@850b6b6d95 Update completion for build/commit/export/exec/history/import
 - felixr/docker-zsh-completion@01bfd8c075 Remove completion for `insert` and duplicate of `import`
 - felixr/docker-zsh-completion@c64a1d730a Update completion for `stats` to add `--no-stream` flag
 - felixr/docker-zsh-completion@5e81d78b52 Update completion for `log` to add `--since` flag
 - felixr/docker-zsh-completion@b3c146a1a2 Update completion for `run` to add `--group-add` flag
 - felixr/docker-zsh-completion@8d4f196ad8 Don't trigger expensive completion function for flags
 - felixr/docker-zsh-completion@bd5aaa124d Add completion for `--help` everywhere
 - felixr/docker-zsh-completion@3a67a0e8c4 Return appropriate status code on completion
 - felixr/docker-zsh-completion@4dfcb450ea Add Steve as a regular contributor.
 - felixr/docker-zsh-completion@996a1c6def Add completion for top-level flags
 - felixr/docker-zsh-completion@b6df75905f Ensure short/long option are not allowed twice
 - felixr/docker-zsh-completion@75b6a500a0 Complete repositories with tags only on repository match
 - felixr/docker-zsh-completion@5e6292135f Factorize completion of images/repositories/tags
 - felixr/docker-zsh-completion@1c504eb677 Handle repositories with ":"
 - felixr/docker-zsh-completion@0a05bf818b Update completion for `pause' and `unpause'
 - felixr/docker-zsh-completion@b3a63253e2 Containers name can include Swarm host

In summary:

 - Swarm support
 - Handling repositories with ":"
 - Rework how completion of images/repositories/tags work:
    - felixr/docker-zsh-completion@5e6292135f
    - felixr/docker-zsh-completion@75b6a500a0
    - felixr/docker-zsh-completion@a93e1cb7bd

The remaining changes are here to sync changes done in Docker repository
(mostly from PR #14074 and #14555, by @sdurrheimer). With some minor changes:

 - boolean flags don't complete their arguments (true/false)
 - reuse of `--host` argument is done with `$opt_arg` to avoid parsing
   error
 - build/create/run common options are factorized out
 - `--help` flag is handled differently
 - `pause` and `unpause` accepts several containers as far as I know, so
   the change is reverted
 - some more, but difficult to notice (more completion for some flags I think)

Some labels are reverted, mostly because I did the merge by copy/pasting
new options instead of modifying existing options.

This commit is partial. The way the `--help` option is handled triggered
a major change due to the way things are quoted. Those changes were
partially and programmaticaly reverted in this commit only to minimize
the changes to review. The next commit will restore the full changes.

Signed-off-by: Vincent Bernat <vincent@bernat.im>
Upstream-commit: 3a1596f0f5e004f59b0d140b728ca255206ef68f
Component: engine
2015-07-20 14:25:48 +02:00
30e998cb02 remove centos6 from rpm builder
Signed-off-by: Jessica Frazelle <princess@docker.com>
Upstream-commit: af5fb9b7d0722783d6ffcc9d36e36e158d1b84b0
Component: engine
2015-07-19 14:30:48 -07:00
9b0a67a80d Updated usage information because of removed short parameters.
Signed-off-by: Robin Schneider <ypid@riseup.net>
Upstream-commit: 397de38ae68ed580dccae1421bd02bfedd4ababa
Component: engine
2015-07-16 10:44:58 +02:00
13b2b9e4b5 add tianon's suites.sh file
Signed-off-by: Jessica Frazelle <princess@docker.com>
Upstream-commit: 4a5fd6c0f9014456e70a369c5b31e3edb3b8d5a1
Component: engine
2015-07-15 12:48:49 -07:00
b069af9e3e Merge pull request #14555 from sdurrheimer/master
Zsh completion updates and improvements
Upstream-commit: 386f11a63dec0f918e5d118bb5835ddde56a7b41
Component: engine
2015-07-15 10:40:41 -07:00
4fb7b8e2f2 Merge pull request #14608 from vincentbernat/fix/zsh-reviewers
zsh: remove Vincent Bernat from reviewers for ZSH completion
Upstream-commit: cf09e435c843516af8bbe0460cd5e1f014c0e01a
Component: engine
2015-07-14 07:08:06 -07:00
e313011735 Several cosmetic improvements in zsh completion
Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
Upstream-commit: 91a2d9cc7d4ed47d4f255ad3d6da8295483e6a89
Component: engine
2015-07-14 11:34:33 +02:00
05b319b1cb Zsh completion update for the following commits:
- Add fluentd logging driver to zsh completion #12876
- Add inspect --type flag to zsh completion #13187
- Respect -H option in zsh completion #13195
- Fix number of argument limit for pause and unpause in zsh completion

Signed-off-by: Steve Durrheimer <s.durrheimer@gmail.com>
Upstream-commit: 12f67141f932db15fa9178b3304c7efbd485fd69
Component: engine
2015-07-14 11:32:26 +02:00
3c6e2ebd6f zsh: remove Vincent Bernat from reviewers for ZSH completion
Signed-off-by: Vincent Bernat <vincent@bernat.im>
Upstream-commit: 5dbb217bcb8eb33c4c152f7ba1b5f7fec0b579dd
Component: engine
2015-07-13 23:15:16 +02:00
1e751a74cb Removed short parameters and use Bash features to make code shorter. Thanks to @tianon.
Signed-off-by: Robin Schneider <ypid@riseup.net>
Upstream-commit: 3f0fa1f6436d2bf38388d8cc331cf0ed31da8837
Component: engine
2015-07-13 22:56:15 +02:00
8a8cd3160c Adds documentation for additional groups.
Signed-off-by: Mrunal Patel <mrunalp@gmail.com>
Upstream-commit: d77d0268eb1f419509ceb6670ff7aaa298314218
Component: engine
2015-07-13 14:47:28 -04:00
8014aa30a4 Merge pull request #14426 from albers/completion-events
Add some missing events to bash completion
Upstream-commit: 0badebe7348af1b56bce002bb8d1fca03dbdb872
Component: engine
2015-07-13 10:05:36 -07:00
13a7ed0799 Updated docker-engine.spec to build on Oracle Linux 6.
Signed-off-by: Avi Miller <avi.miller@oracle.com>
Upstream-commit: 865d3a148875485a3749be83b67ea7449830e6b6
Component: engine
2015-07-11 09:53:00 +10:00
68020cd75e Change generate.sh so that the yum command for packages remains generic across distros.
Signed-off-by: Avi Miller <avi.miller@oracle.com>
Upstream-commit: f18c4f23cc98ba4fd4fb3241571ce31062eda717
Component: engine
2015-07-10 07:34:47 +10:00
414a101271 Add support for building docker-engine RPM on Oracle Linux 7.
Signed-off-by: Avi Miller <avi.miller@oracle.com>
Upstream-commit: 0117330ae7da7dc77d27c551fb298d842afc3890
Component: engine
2015-07-08 16:12:19 +10:00
9147778cbe Merge pull request #14369 from maximkulkin/14123-dockerize-disk-with-non-en-locale
Fix dockerize-disk.sh working in non-en locale
Upstream-commit: 16f8afb4519ff9dbbb2ed386d0d00d3da54997b9
Component: engine
2015-07-07 17:51:29 -07:00
527b90ee8b Add some missing events to bash completion
Signed-off-by: Harald Albers <github@albersweb.de>
Upstream-commit: ea26b3878421fd39e40ec264e604e9efa114592d
Component: engine
2015-07-07 09:04:15 +02:00