Commit Graph

2987 Commits

Author SHA1 Message Date
d7b0abae1e Merge pull request #14432 from coolljt0725/umount_rootf_on_cp_fail
Always umount container rootfs and volumes on docker cp failed
Upstream-commit: 045ccc4326c596c808711beda9a4f566d3ad5d61
Component: engine
2015-07-07 21:04:16 -04:00
682ea83bb3 Warn when udev_sync is not supported.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: e27131519f610178fd8adfc4b87c7bc2521a562f
Component: engine
2015-07-07 15:10:24 -06:00
c17c7fce57 Revert "Fix implicit DeviceMapper selection"
This reverts commit 0a376291b2213699f986a7bca1cc8c4f4ed00f8d.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 9af7afb9eb138bdba33c22445f36f41e5aa26bd1
Component: engine
2015-07-07 12:27:19 -07:00
017d6047d5 added ability to iterate over all indexes and use index.Iterate() instead of ReadDir() to walk over the graph
Signed-off-by: Roman Strashkin <roman.strashkin@gmail.com>
Upstream-commit: cc955ae73c8aa234e0c41bdb65f111be79b32b90
Component: engine
2015-07-07 22:13:28 +03:00
5ce830016b devicemapper: Check loop devices of existing pool
Often it happens that docker is not able to shutdown/remove the thin
pool it created because some device has leaked into some mount name
space. That means device is in use and that means pool can't be removed.

Docker will leave pool as it is and exit. Later when user starts the
docker, it finds pool is already there and docker uses it. But docker
does not know it is same pool which is using the loop devices. Now
docker thinks loop devices are not being used. That means it does not
display the data correctly in "docker info", giving user wrong information.

This patch tries to detect if loop devices as created by docker are
being used for pool and fills in the right details in "docker info".

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Upstream-commit: bebf53443981c70a6a714ea518dc966a0e2b6558
Component: engine
2015-07-07 14:13:29 -04:00
eb7ca7510b Always umount container rootfs and volumes on docker cp failed
Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: 13c36ce65ec02c7d2ac564ccc9d4f69e92760d9a
Component: engine
2015-07-07 20:27:45 +08:00
800d4df14d Windows: Win32 event for sigusr1 linux equivalence
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: f4b08c7f5eed2eece239086f260eee9e736ee227
Component: engine
2015-07-06 18:58:53 -07:00
5d5c8a740d Validate status= filter to docker ps
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 7bf26d44b08de167b18257b5ddf5912585c840df
Component: engine
2015-07-02 16:12:42 -07:00
716fca6f61 Merge pull request #14349 from hqhq/hq_error_for_todisk
Show error message when todisk failed
Upstream-commit: 5b2d14fbbf1f4c237cf8f2a3c1b6ec802a68f135
Component: engine
2015-07-02 15:56:56 -07:00
793088ed0a Make /proc, /sys, /dev readonly for readonly containers
If a container is read-only, also set /proc, /sys,
& /dev to read-only. This should apply to both privileged and
unprivileged containers.

Note that when /dev is read-only, device files may still be
written to. This change will simply prevent the device paths
from being modified, or performing mknod of new devices within
the /dev path.

Tests are included for all cases. Also adds a test to ensure
that /dev/pts is always mounted read/write, even in the case of a
read-write rootfs. The kernel restricts writes here naturally and
bad things will happen if we mount it ro.

Signed-off-by: Eric Windisch <eric@windisch.us>
Upstream-commit: 5400d8873f730e6099d29af49fe45931665c3b49
Component: engine
2015-07-02 19:08:00 +00:00
bc7c7e9f54 Merge pull request #14292 from calavera/fix_driver_detection
Fix implicit DeviceMapper selection
Upstream-commit: f0ed68f852e33ed21420959790be4741725b03b1
Component: engine
2015-07-02 11:33:55 -07:00
740b021c6a Fix implicit DeviceMapper selection
DeviceMapper must be explicitly selected because the Docker binary might not be linked to the right devmapper library.

With this change, Docker fails fast if the driver detection finds the devicemapper directory but the driver is not the default option.
The option `override_udev_sync_check` doesn't make sense anymore, since the user must be explicit to select devicemapper, so it's being removed.
Docker fails to use devicemapper only if Docker has been built statically unless the option was explicit.

Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 0a376291b2213699f986a7bca1cc8c4f4ed00f8d
Component: engine
2015-07-02 09:21:27 -07:00
842ad32482 Replace latest log by logrus
Related to #11618 and #11614

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 10e114fb956db1b1a8bc9308cc6d14cbf30a5bab
Component: engine
2015-07-02 16:11:52 +02:00
fb988a52e9 add support for maximum log size, and max number of log files
Signed-off-by: wlan0 <sidharthamn@gmail.com>
Upstream-commit: 9b782d3af322bd8d9cf857d63eb7f2e0fe484c90
Component: engine
2015-07-02 06:26:06 -07:00
2639bef2c5 Show error message when todisk failed
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: af7f81878f561ecdab32936d4bea72f0ab26ce0e
Component: engine
2015-07-02 18:24:35 +08:00
e43d7e0bfd Merge pull request #14324 from aboch/ds
Stats API to retrieve nw stats from libnetwork
Upstream-commit: 75864dcb385e7f27870e5b0c2383dfd0e0748258
Component: engine
2015-07-01 15:19:46 -07:00
4d0125faee Fix regression in parsing capabilities list when a single string is given
Signed-off-by: Antonio Murdaca <runcom@linux.com>
Upstream-commit: 10a3061c5f342477703e96d9b8b2e877d9cdddf5
Component: engine
2015-07-01 21:28:02 +02:00
908ab87a15 Stats API to retrieve nw stats from libnetwork
- Container networking statistics are no longer
  retrievable from libcontainer after the introduction
  of libnetwork. This change adds the missing code
  for docker daemon to retireve the nw stats from
  Endpoint.

Signed-off-by: Alessandro Boch <aboch@docker.com>
Upstream-commit: 8b40e44c395fb307cceb6f179ffe02030b316535
Component: engine
2015-07-01 11:15:16 -07:00
5607e48f25 Fix regression in containers attach/wsattach api, return not found before hijacking
Signed-off-by: Antonio Murdaca <runcom@linux.com>
Upstream-commit: 88d32a6109a15633481f758c4d0689516ae58aef
Component: engine
2015-07-01 18:16:17 +02:00
5290116562 Nat was moved to pkg/nat
Somehow this import was missed

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: d9af8551f82aff9e4fdaed2a8d250845b12dcf53
Component: engine
2015-06-30 16:48:17 -04:00
7f87043716 Merge pull request #14294 from mavenugo/bnone
fixed incorrect assumption on --bridge=none treated as disable network
Upstream-commit: a2621ac6dacf87bf713ac327f7c0e14eb77e52bc
Component: engine
2015-06-30 13:40:52 -07:00
7f4872fe6c Merge pull request #14297 from pwaller/move-nat-pkg
Move /nat to /pkg/nat
Upstream-commit: caa4acc7b11cbefb74d0b066d4a0752f4a11c5ee
Component: engine
2015-06-30 13:23:30 -07:00
521162c904 fixed incorrect assumption on --bridge=none treated as disable network
libnetwork host, none and bridge driver initialization is incorrectly
disabled if the daemon flag --bridge=none. The expected behavior of
setting --bridge as none is to disable the bridge driver alone and let
all other modes to be operational.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: c9328c6ccf120abda297d11fcfc7e60c7c31ec21
Component: engine
2015-06-30 13:04:28 -07:00
748772ece4 Validate Port specifications on daemon side
Fixes #14230

Signed-off-by: Ankush Agarwal <ankushagarwal11@gmail.com>
Upstream-commit: 477201a2954349bfe7ab63f73b11cd19d0f782d0
Component: engine
2015-06-30 12:14:49 -07:00
d99f89f02c Merge pull request #14268 from unclejack/lower_allocations_execdriver
daemon: lower allocations
Upstream-commit: bb364ff459e8ebcc601a13057a1477336646474b
Component: engine
2015-06-30 12:12:06 -07:00
9161e24479 Move /nat to /pkg/nat
By convention /pkg is safe to use from outside the docker tree, for example
if you're building a docker orchestrator.

/nat currently doesn't have any dependencies outside of /pkg, so it seems
reasonable to move it there.

This rename was performed with:

```
gomvpkg -vcs_mv_cmd="git mv {{.Src}} {{.Dst}}" \
	-from github.com/docker/docker/nat \
        -to   github.com/docker/docker/pkg/nat

```

Signed-off-by: Peter Waller <p@pwaller.net>
Upstream-commit: 9c2374d19623581028f070bc93fa4c60a660dce4
Component: engine
2015-06-30 17:43:17 +01:00
b565b94e85 daemon: lower allocations
Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com>
Upstream-commit: c1477db04fc32621652cf6a8fd2976b6bbf2066e
Component: engine
2015-06-30 01:45:31 +03:00
f1c962082a Merge pull request #14133 from Microsoft/10662-netmode
Windows: Refactor network modes
Upstream-commit: 18d5d3ba0332f95a294f09cd8c3ac9aeada0a4a5
Component: engine
2015-06-29 15:02:42 -07:00
fec4b99167 Merge pull request #14218 from calavera/fix_exec_user
Default process user to container config user.
Upstream-commit: 475ae0889e2d460084e6ba9bb047b8acbc87c535
Component: engine
2015-06-29 14:31:45 -07:00
0a2b0f80c4 Windows: Refactor network modes
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: c5e6a4b307d93c066c07b7664ffc676708b42391
Component: engine
2015-06-29 13:13:55 -07:00
73973301dc Default process user to container config user.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 0faa4518ed2dad592bb238838b4df2b34d2171c3
Component: engine
2015-06-29 12:52:05 -07:00
a8c9aef74e Merge pull request #14061 from runcom/clean-builder-daemon-config
Add struct to configure Builder commit
Upstream-commit: d543a01e17ace181261dd7809bbeec0c6580b867
Component: engine
2015-06-29 11:04:05 -07:00
4f74d3f3bd Closes #13323 and carries
Entering comments

Signed-off-by: Mary Anthony <mary@docker.com>
Upstream-commit: 078b23a37daf95101bf31bafc7f8396af7ad7d98
Component: engine
2015-06-29 06:18:41 -07:00
786eafcf79 Merge pull request #14120 from mdavranche/tempDir
tempDir (in the root dir), must be created after the root dir.
Upstream-commit: 2d15b35f7afaf496ecfbfd61e2c102033255386e
Component: engine
2015-06-26 11:46:55 -07:00
22652d4dad Add new logging driver: fluentd
Signed-off-by: TAGOMORI Satoshi <tagomoris@gmail.com>
Upstream-commit: 361a582ba0bccea04a8ea1799e68779fa66abb9f
Component: engine
2015-06-26 11:03:11 +09:00
c5288d75d1 overlay: Export metadata for container and image in docker-inspect
Export metadata for container and image in docker-inspect when overlay
graphdriver is in use. Right now it is done only for devicemapper graph
driver.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Upstream-commit: 67473c6d06f084f58467ef257e2de4b2c0161240
Component: engine
2015-06-25 17:33:20 -04:00
f74cf65168 Merge pull request #14030 from estesp/init-memory-swappiness
Initialize swappiness in libcontainer cgroups template
Upstream-commit: c2815496101e7523c8bc2e459026f8c5e84cdb08
Component: engine
2015-06-25 11:36:54 -07:00
a6a8015e93 Merge pull request #13907 from chenchun/exitcode
Set exit code of old running container as 137
Upstream-commit: e8b87cfce10551ec132b470036c26374f1971fe1
Component: engine
2015-06-25 10:57:48 -07:00
92372b77d4 Set exit code of old running container as 137
Signed-off-by: Chun Chen <chenchun.feed@gmail.com>
Upstream-commit: b0b2f979c7c43e2975d5e39340c168da2da42d1d
Component: engine
2015-06-25 22:30:09 +08:00
5ec67f98b1 Fix endpoint leave failure for --net=host mode
When a container is started with `--net=host` with
a particular name and it is subsequently destroyed,
then all subsequent creations of the container with
the same name will fail. This is because in `--net=host`
the namespace is shared i.e the host namespace so
trying to destroy the host namespace by calling
`LeaveAll` will fail and the endpoint is left with
the dangling state. So the fix is, for this mode, do
not attempt to destroy the namespace but just cleanup
the endpoint state and return.

Signed-off-by: Jana Radhakrishnan <mrjana@docker.com>
Upstream-commit: 9bb69f9726e7f8cba0cdf681e5060e47b9c45298
Component: engine
2015-06-24 12:33:52 -07:00
892d0c95d1 Merge pull request #13810 from d23/syslog-facility
Add syslog-facility option
Upstream-commit: 4dd1d1bfa5ddb7295d001c5df35865da34ac048b
Component: engine
2015-06-23 12:05:15 -07:00
9a58f60656 Merge pull request #13833 from Microsoft/10662-dockerbuild
Windows: Start docker build working
Upstream-commit: d5721f03854f33300f84186554321c3371a28319
Component: engine
2015-06-23 11:46:56 -07:00
c7e221d5e4 tempDir (in the root dir), must be created after the root dir.
Signed-off-by: mikael.davranche <mikael.davranche@corp.ovh.net>
Upstream-commit: 41f69883d25cc62ae2fb1efdf79f2e7df539c56a
Component: engine
2015-06-23 14:53:18 +02:00
f157b240b8 Add --log-opt to specify facility for syslog driver
Signed-off-by: Dennis Docter <dennis@d23.nl>
Upstream-commit: 609e7b0a55d4082fce40eabae3a06ca57c188ba5
Component: engine
2015-06-23 14:04:25 +02:00
eb72177bf2 fix the goroutine leak in the stats API if the container is not running
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
Upstream-commit: 1cbf5a54dae86e34d8e65508c5640b17cda0eed8
Component: engine
2015-06-23 19:38:15 +08:00
359585c9ee Merge pull request #12812 from sharidas/8373-display-docker-ps-host
Display when a container is in --net=host in docker ps
Upstream-commit: 74be85500acb7ebbca166a2ef82e09dddf83b424
Component: engine
2015-06-22 14:06:07 -07:00
4992f31e42 Merge pull request #14071 from mavenugo/mhnet
Vendoring libnetwork 83743db8ceb2bdbfa0960d9a54ed2f98df4ea846
Upstream-commit: f39b9a0b0f77c528a6fb8bf14be5cdea11ce338d
Component: engine
2015-06-22 08:35:18 -07:00
058521db69 Adding container to secondary network to support port mapping
With publish-service and default-network support, a container could be
connected to a user-defined network that is backed by any driver/plugin.
But if the user uses port mapping or expose commands, the expectation
for that container is to behave like existing bridge network.
Thanks to the Libnetwork's CNM model, containers can be connected
to the bridge network as a secondary network in addition to the
user-specified network.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: 739996c1d78976f7435c7274300b3e8f2e598b17
Component: engine
2015-06-22 04:15:57 -07:00
ef111c5452 Reworked ReleaseNetwork to make use of libnetwork's new LeaveAll API
Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: 1e59169509449e2e9e4c7cd6aec7e29c1673123f
Component: engine
2015-06-22 04:15:57 -07:00
4a5258148d Vendoring in libnetwork for native multihost networking
- brings in vxlan based native multihost networking
- added a daemon flag required by libkv for dist kv operations
- moved the daemon flags to experimental

Signed-off-by: Madhu Venugopal <madhu@docker.com>
Upstream-commit: 508065a7adc84e5e63f47b00c379dad6a79d3c5e
Component: engine
2015-06-22 04:15:41 -07:00