Commit Graph

2601 Commits

Author SHA1 Message Date
Jess Frazelle
e07769bc5a Merge pull request #18351 from LK4D4/fix_rm_race
Fix race between two ContainerRm
2015-12-02 08:13:52 -08:00
Antonio Murdaca
2969abc6c5 Move defaultSHMSize in daemon pkg
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-12-02 10:28:10 +01:00
Alexander Morozov
4d1007d75c Fix race between two ContainerRm
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-12-01 20:13:18 -08:00
Alexander Morozov
5efb37616f Merge pull request #18308 from mountkin/delete-graphdb-later
fix 2 corner cases in container create cleanup and container removal
2015-12-01 13:19:59 -08:00
Shijiang Wei
4953ea1eae fix 2 corner cases in container create cleanup and container removal
- avoid empty Names in container list API when fails to remove
    a container
  - avoid dead containers when fails to create a container

Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2015-12-02 01:37:50 +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
Phil Estes
c8891158bd Merge pull request #18310 from rhvgoyal/log-fs-creation
devmapper: Log start and end of filesystem creation
2015-12-01 09:49:13 -05:00
Sebastiaan van Stijn
c6a2bce919 Merge pull request #18331 from runcom/fix-typo
daemon: daemon_experimental.go: fix typo
2015-12-01 15:48:10 +01:00
Vivek Goyal
a489e685c0 devmapper: Log start and end of filesystem creation
ext4 filesystem creation can take a long time on 100G thin device and
systemd might time out and kill docker service. Often user is left thinking
why docker is taking so long and logs don't give any hint. Log an info
message in journal for start and end of filesystem creation. That way
a user can look at logs and figure out that filesystem creation is
taking long time.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2015-12-01 13:05:46 +00:00
Antonio Murdaca
4c8088268c daemon: daemon_experimental.go: fix typo
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-12-01 12:03:50 +01:00
David Calavera
d7117a1b71 Make sure container start doesn't make the DNS fields nil.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-11-30 22:46:31 -05:00
Jess Frazelle
e852959fad Merge pull request #18178 from jfrazelle/apparmor-we-meet-again
Fix docker-default profile handing signals
2015-11-30 11:34:34 -08:00
Alexandre Beslic
0f0cf267e8 Merge pull request #18204 from mavenugo/dhb
Configurable discovery ttl and heartbeat timer
2015-11-30 11:00:53 -08:00
Jessica Frazelle
f8db9a09e0 check version for docker-default aa profile
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-11-30 10:18:12 -08:00
Jess Frazelle
360a106511 Merge pull request #18303 from runcom/lxc-leftover
daemon: remove sysInitPath, lxc leftover
2015-11-30 09:37:05 -08:00
Alexander Morozov
377e1d75f9 Merge pull request #18239 from jfrazelle/17783-fix-regex
Fix parsing of apparmor pcre syntax
2015-11-30 09:15:25 -08:00
Antonio Murdaca
1b726b29b2 daemon: remove sysInitPath, lxc leftover
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-11-30 10:04:13 +01:00
Qiang Huang
dd7b4fd651 Fix kernel memory limit
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2015-11-28 09:47:25 +08:00
Alexander Morozov
b8c21783f0 Merge pull request #17108 from coolljt0725/fix_remove_image
Fix docker rmi trying to remove a being used parent
2015-11-26 12:21:30 -08:00
Brian Goff
9ebf7dfae3 Merge pull request #18252 from aaronlehmann/tarstream-readcloser
Make TarStream return an io.ReadCloser
2015-11-25 21:35:21 -05:00
Lei Jitang
0bbc9f1d2d Fix docker rmi trying to remove a being used parent
Signed-off-by: Lei Jitang <leijitang@huawei.com>
2015-11-26 09:57:20 +08:00
Aaron Lehmann
21278efaee Make TarStream return an io.ReadCloser
Currently, the resources associated with the io.Reader returned by
TarStream are only freed when it is read until EOF. This means that
partial uploads or exports (for example, in the case of a full disk or
severed connection) can leak a goroutine and open file. This commit
changes TarStream to return an io.ReadCloser. Resources are freed when
Close is called.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2015-11-25 16:39:54 -08:00
Tonis Tiigi
20e759ab56 Validate adding digests to tagstore with go types
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-11-25 15:06:51 -08:00
Jessica Frazelle
c0f7fdc025 Fix parsing of apparmor pcre syntax
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2015-11-25 10:38:18 -08:00
Madhu Venugopal
2efdb8cbf5 Make discovery ttl and heartbeat configurable
Docker daemon uses kv-store as the host-discovery backend.
Discovery module tracks the liveness of a node through a simple
keepalive mechanism.  The keepalive mechanism depends on every
node performing heartbeat by registering itself with the discovery
module (via KV-Store Put operation). And for every Put operation,
the discovery module in all other nodes will receive a Watch
notification. That keeps the node alive.
Any node that fails to register itself within the TTL timer is
considered dead and removed from the discovery database.

The default timer (heartbeat = 20 seconds & ttl = 60 seconds)
works fine for small clusters.  But for large clusters, these
default timers are extremely aggressive and that causes high CPU
& most of the processing is spent managing the node discovery
and that impacts normal daemon operation.

Hence we need a way to make the discovery ttl and heartbeat
configurable.  As the cluster size grows, the user can change
these timers to make sure the daemon scales.

Signed-off-by: Madhu Venugopal <madhu@docker.com>
2015-11-25 06:51:55 -08:00
David Calavera
38abba9e2c Move versioned references of inspect functions to the daemon.
Leaving only one versioned main function that a backend must implement.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-11-24 14:03:39 -05: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
Stefan Berger
5cd6b3eca2 Adjust docker-default profile when docker daemon is confined
Adjust the docker-default profile for when the docker daemon is running in
AppArmor confinement. To enable 'docker kill' we need to allow the container
to receive kill signals from the daemon.

Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2015-11-23 15:20:01 -08:00
Stefan Scherer
6f6f10a75f prevent journald from being built on ARM
Signed-off-by: Govinda Fichtner <govinda.fichtner@googlemail.com>
2015-11-21 15:17:31 +01:00
David Calavera
9ca2e4e81c Move exec store to its own package inside the daemon.
Remove double reference between containers and exec configurations by
keeping only the container id.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-11-20 17:40:16 -05:00
Michael Crosby
b5c507750f Merge pull request #18051 from calavera/extract_streams
Extract StreamConfig struct out of the daemon package.
2015-11-20 13:45:13 -08:00
David Calavera
3f5b8f712d Extract StreamConfig struct out of the daemon package.
This is a small configuration struct used in two scenarios:

1. To attach I/O pipes to a running containers.
2. To attach to execution processes inside running containers.

Although they are similar, keeping the struct in the same package
than exec and container can generate cycled dependencies if we
move any of them outside the daemon, like we want to do
with the container.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-11-20 15:04:27 -05:00
Vincent Demeester
f064b9941c Merge pull request #18073 from runcom/hostconfig-resources
runconfig: split resources into a struct
2015-11-20 20:29: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
Antonio Murdaca
1a0b483e02 runconfig: split resources into a struct
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-11-20 19:40:01 +01: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
Alexander Morozov
8e6e38990c Merge pull request #18084 from wenchma/18054_exec_start_fix
Update docs and test of exec create api return codes
2015-11-19 13:51:46 -08:00
Alexander Morozov
24fb3659df Merge pull request #18076 from rhvgoyal/unmount-recursive
Unmount recursively to unmount volumes
2015-11-19 13:46:48 -08:00
Alexander Morozov
37f64ded44 Merge pull request #17908 from calavera/carry_17059
[Carry 17059] allow filtering containers by any status
2015-11-19 13:24:43 -08:00
Vivek Goyal
b9e701b203 Use lazy unmount to unmount volumes
Volumes can have more mount points beneath them and unmount will fail. This
is the case when a bind mounted directory on host already had a mount point
underneath it. So use lazy unmount instead.

Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
2015-11-19 20:46:07 +00:00
Kamil Domański
f30364c583 allow filtering containers by any status
Signed-off-by: Kamil Domański <kamil@domanski.co>
(cherry picked from commit 9ada6a06c57ce4ed4bfad50f603962b7b9ce6fb1)
2015-11-19 14:11:41 -05:00
John Howard
37d2a70038 Windows: [TP4] docker info crashes
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-11-19 11:02:25 -08:00
Wen Cheng Ma
01b86d612c Update docs and test of exec create api return codes
Fixes issue #18054

Signed-off-by: Wen Cheng Ma <wenchma@cn.ibm.com>
2015-11-19 22:22:27 +08:00
Vincent Demeester
c32f8bb36a Merge pull request #17704 from LK4D4/default_cgroupfs
Use fs cgroups by default
2015-11-19 14:01:13 +01:00
Alexander Morozov
419fd7449f Use fs cgroups by default
Our implementation of systemd cgroups is mixture of systemd api and
plain filesystem api. It's hard to keep it up to date with systemd and
it already contains some nasty bugs with new versions. Ideally it should
be replaced with some daemon flag which will allow to set parent systemd
slice.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2015-11-18 16:16:13 -08:00
Michael Crosby
877fe61f75 Merge pull request #18065 from calavera/one_container_constructor_to_rule_them_all
Remove the container initializers per platform.
2015-11-18 14:06:47 -08:00
David Calavera
060f4ae617 Remove the container initializers per platform.
By removing deprecated volume structures, now that windows mount volumes we don't need a initializer per platform.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-11-18 08:41:46 -05:00
Kenjiro Nakayama
84781a5df7 docker info suppports case-insensitive proxy env settings
Signed-off-by: Kenjiro Nakayama <nakayamakenjiro@gmail.com>
2015-11-18 10:58:19 +09:00
Michael Crosby
3f508f08de Merge pull request #17261 from mountkin/remove-unused-daemon-config
remove the unused DefaultNetwork member from daemon.Config
2015-11-17 16:33:11 -08:00