Commit Graph

1372 Commits

Author SHA1 Message Date
54739fa6d1 Mount RO for timer_stats and latency_stats in proc
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Upstream-commit: 27ae108b4eda48a621afc5bf2157ef11c314a858
Component: engine
2015-05-07 14:42:23 -07:00
f9ca327070 Mount /proc/fs as readonly
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
Upstream-commit: 42c8c1b0b884c91efa518568181d276afd9d866f
Component: engine
2015-05-07 14:42:23 -07:00
50f626562d Prevent write access to /proc/asound
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

Conflicts:
	integration-cli/docker_cli_run_test.go
Upstream-commit: d87da59c79eabb794087f731d3ad51ea98f7a3cc
Component: engine
2015-05-07 14:42:23 -07:00
2ee6387cbc Merge pull request #12165 from icecrime/optional_userland_proxy
Optional userland proxy
Upstream-commit: 74bfa3675353aaf10ca760e82a79d758bea0ff6b
Component: engine
2015-05-07 14:01:16 -07:00
cba2f6d1b5 Merge pull request #13067 from burke/faster-commit-for-overlay
overlay: skip superfluous metadata sets on commit
Upstream-commit: 93536cfa76fe57b8bc319c747596be935b385871
Component: engine
2015-05-07 13:58:46 -07:00
0b0c4b0dfa overlay: skip superfluous metadata sets on commit
Signed-off-by: Burke Libbey <burke.libbey@shopify.com>
Upstream-commit: bc5503f46bdc0816d90d99bd516afaa81717346a
Component: engine
2015-05-07 16:15:54 -04:00
aae3d1533f Merge pull request #12966 from cpuguy83/cleanup_the_lxc_cleanup
Cleanup container reg for lxc special case
Upstream-commit: 3d2cd92b2d7229b2088f2f03ed46cf039361a6f6
Component: engine
2015-05-07 10:19:46 -07:00
7d4cfe310d Merge pull request #12965 from tianon/libcontainer-logrus
Update libcontainer and make it the source of truth on logrus version
Upstream-commit: db26564864f5ef1f2402792ad8dd22bb62b3570c
Component: engine
2015-05-07 10:10:28 -07:00
f36df344d5 Cleanup container reg for lxc special case
The lxc code here is doing the exact same thing on calling
execdriver.Terminate, so let's just use that.

Also removes some dead comments originally introduced
50144aeb42283848db730b936d6b5b6332ec6565 but no longer relevant since we
have restart policies.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 44cd599e29451647492b3a5341ba23252a69ca27
Component: engine
2015-05-06 23:01:46 -04:00
c2f0a6e87e Logs with follow=1 immediately send HTTP response
Signed-off-by: Anthony Baire <Anthony.Baire@irisa.fr>
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
Upstream-commit: 589de35651ce8c91a2f01be2a5c99274d548d9ae
Component: engine
2015-05-06 14:39:45 -07:00
b0726ee2a6 Merge pull request #13017 from cpuguy83/12859_fix_lxc_wait_exitcodes
Fix LXC stop signals
Upstream-commit: 71c1a7ea7f28a4e4bf3412af228524a28226ebeb
Component: engine
2015-05-06 11:21:44 -07:00
9c90d3e520 Fix LXC stop signals
`lxc-stop` does not support sending arbitrary signals.
By default, `lxc-stop -n <id>` would send `SIGPWR`.
The lxc driver was always sending `lxc-stop -n <id> -k`, which always
sends `SIGKILL`. In this case `lxc-start` returns an exit code of `0`,
regardless of what the container actually exited with.
Because of this we must send signals directly to the process when we
can.

Also need to set quiet mode on `lxc-start` otherwise it reports an error
on `stderr` when the container exits cleanly (ie, we didn't SIGKILL it),
this error is picked up in the container logs... and isn't really an
error.

Also cleaned up some potential races for waitblocked test.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: d2c4ee37c6a4114b33a915b7dae6de70e27e7965
Component: engine
2015-05-06 11:56:48 -04:00
d6fea09c44 Merge pull request #12947 from runcom/11577-readonly-special-file-if-readonlyfs
Make /etc/hosts, /etc/resolv.conf, /etc/hostname read only if --read-only enabled
Upstream-commit: 77266a67e0e1fc9ec2b026bf0a57a14188ec5224
Component: engine
2015-05-05 09:45:24 -07:00
da6438ab18 Merge pull request #10766 from cpuguy83/stats_pull_once
Allow pulling stats once and disconnecting.
Upstream-commit: 91fb4d672a8536d2f0437aeeb2dfc7b9e51aac16
Component: engine
2015-05-04 22:28:01 -07:00
d7e8665b03 Add --userland-proxy daemon flag
The `--userland-proxy` daemon flag makes it possible to rely on hairpin
NAT and additional iptables routes instead of userland proxy for port
publishing and inter-container communication.

Usage of the userland proxy remains the default as hairpin NAT is
unsupported by older kernels.

Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
Upstream-commit: f42348e18f73d1d775d77ac75bc96466aae56d7c
Component: engine
2015-05-04 16:07:45 -07:00
11e5be135f Merge pull request #12190 from rhvgoyal/deferred-removal
Devicemapper: Provide deferred device removal capability
Upstream-commit: 56c991781564e8cc292166d3b3e27e304c240468
Component: engine
2015-05-04 14:22:52 -07:00
141582c6c7 Make /etc/hosts, /etc/resolv.conf, /etc/hostname read only if --read-only is enable
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 7d371c0b470334189720840854b2d5acbb1c7909
Component: engine
2015-05-04 21:30:52 +02:00
366be0f240 Merge pull request #12865 from larsks/bug/12864
journald log driver: use CONTAINER_ID field for container id
Upstream-commit: 0c1c2726876bdffad4e600456f07e256bc1361a1
Component: engine
2015-05-04 10:53:58 -07:00
a4975c3e58 Merge pull request #12937 from runcom/daemon-as-a-service
Refactor server to use daemon as the service layer in controllers
Upstream-commit: 4895a887e2e88699a07ab6fea9113a5ff13d2450
Component: engine
2015-05-04 13:03:28 -04:00
fccc1b566d Update libcontainer and make it the source of truth on logrus version
To help avoid version mismatches between libcontainer and Docker, this updates libcontainer to be the source of truth for which version of logrus the project is using.  This should help avoid potential incompatibilities in the future, too. 👍

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
Upstream-commit: 80a895142e7101b44ff71910bb2da994b1cc4f5f
Component: engine
2015-05-04 11:02:44 -06:00
5221178681 Merge pull request #12958 from Mashimiao/cleanup-container-functions
Cleanup: move container's functions to its own file
Upstream-commit: 4f5272320cef76dd33a3895f228e2080d9d3a13b
Component: engine
2015-05-04 09:36:55 -07:00
9eba4b1b6c Merge pull request #11034 from HuKeping/oom_kill_disable
enable cgroups memory.oom_control
Upstream-commit: ac324e5e52af1f2489320f3bdb7e2ebbd83ee869
Component: engine
2015-05-04 11:53:05 -04:00
a580a2dfa9 Merge pull request #12903 from rhvgoyal/disable-discards
devmapper: Disable mount option "discard" by default
Upstream-commit: 2e49281bd085d84babe8b3243de1e97c2d12dac1
Component: engine
2015-05-04 18:35:25 +03:00
9531505238 Allow pulling stats once and disconnecting.
Adds a `stream` query param to the stats API which allows API users to
only collect one stats entry and disconnect instead of keeping the
connection alive to stream more stats.

Also adds a `--no-stream` flag to `docker stats` which does the same

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: f3023a93d1a0a96a7312de441a550c758ac0c17d
Component: engine
2015-05-04 10:49:13 -04:00
5306450032 cleanup: move container's functions to its file
Signed-off-by: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
Upstream-commit: 1be7a10b89506afdcb80f109f323b6e47d2e466c
Component: engine
2015-05-04 21:37:44 +08:00
ad3d66108b Feature: option for disable OOM killer
Add cgroup support for disable OOM killer.

Signed-off-by: Hu Keping <hukeping@huawei.com>
Upstream-commit: a4a924e1b6c50f0f02460489259d73468a6c282e
Component: engine
2015-05-04 21:11:29 +08:00
809dae68ab Remove unused error return
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 4aff563282c4d467575aed006642a22d673d4cb7
Component: engine
2015-05-02 15:57:57 +02:00
d6d6bba166 Refactor server to use daemon as the service layer in controllers
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: c7cfdb65aa43a4561adb919d170bba5e86d69bee
Component: engine
2015-05-02 03:12:58 +02:00
63fe58e0de devmapper: Disable mount option "discard" by default
Right now devicemapper mounts thin device using online discards by default
and passes mount option "discard". Generally people discourage usage of
online discards as they can be a drain on performance. Instead it is 
recommended to use fstrim once in a while to reclaim the space.

In case of  containers, we recommend to keep data volumes separate. So
there might not be lot of rm, unlink operations going on and there might
not be lot of space being freed by containers. So it might not matter
much if we don't reclaim that free space in pool.

User can still pass mount option explicitly using dm.mountopt=discard to
enable discards if they would like to.

So this is more like setting the containers by default for better performance
instead of better space efficiency in pool. And user can change the behavior
if they don't like default behavior.

Reported-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Vivek Goyal <vgoyal@redhat.com>
Upstream-commit: 04adaaf1ee1688ff48cb8f541dcb80e965f45080
Component: engine
2015-05-01 09:16:31 -04:00
964532d377 Merge pull request #12772 from Microsoft/10662-moveworkdirchecktoserver
Windows: Move workdir check daemon-side
Upstream-commit: 79d086c47d61f6da522a0e586005a02dae9b5ede
Component: engine
2015-05-01 00:24:40 -04:00
46a5d01a59 Merge pull request #12767 from Microsoft/10662-commitdefertarclose
Windows: Commit() rwTar defer close
Upstream-commit: 66077a9d692d8f5b5dd71bc848c359d3df092998
Component: engine
2015-04-30 18:06:09 -07:00
bdf088b5fb Merge pull request #12829 from Microsoft/10662-execdriver-driver-refactor
Windows: Start refactor execdriver/driver.go
Upstream-commit: e9c9682333499f6a063404ad9df5db1385e75bbf
Component: engine
2015-04-30 20:36:10 -04:00
74df4d944e Windows: Factor out LXC
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 10e2dbf375b1aebe33bce0646a3a95d34c48d4f8
Component: engine
2015-04-30 14:28:35 -07:00
17b585ec32 Windows: Start refactor execdriver/driver.go
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: b255c565ca66b778e87ccf1f8d46963feaee94a0
Component: engine
2015-04-30 14:21:04 -07:00
045d2db914 Windows: Move workdir check daemon-side
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: 03eb0d065db006ac1df1bca62436a844674f4d2b
Component: engine
2015-04-30 14:16:45 -07:00
fc1f799f60 Windows: Commit() rwTar defer close
Signed-off-by: John Howard <jhoward@microsoft.com>
Upstream-commit: f9c7772b83e2382f1c3f0539180e9e6f5644fbbc
Component: engine
2015-04-30 12:17:33 -07:00
72fc3b7751 journald log driver: use CONTAINER_ID field for container id
This patch modifies the journald log driver to store the container ID in
a field named CONTAINER_ID, rather than (ab)using the MESSAGE_ID field.
Additionally, this adds the CONTAINER_ID_FULL field containing the
complete container ID and CONTAINER_NAME, containing the container name.

When using the journald log driver, this permits you to see log messages
from a particular container like this:

    # journalctl CONTAINER_ID=a9238443e193

Example output from "journalctl -o verbose" includes the following:

    CONTAINER_ID=27aae7361e67
    CONTAINER_ID_FULL=27aae7361e67e2b4d3864280acd2b80e78daf8ec73786d8b68f3afeeaabbd4c4
    CONTAINER_NAME=web

Closes: #12864
Signed-off-by: Lars Kellogg-Stedman <lars@redhat.com>
Upstream-commit: 869ecba652294e069874c83591d6f1b469d7cc32
Component: engine
2015-04-30 10:42:27 -04:00
016ac4bf61 Remove engine mechanism
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 531f4122bdcd4de289f613a5ef010f4c1989f098
Component: engine
2015-04-30 01:35:16 +02:00
99358033cc Merge pull request #12439 from Mashimiao/add-err-check-before-getting-term
Add error check before getting term
Upstream-commit: 2c4fe2aba3adc4416d09e76e669341e2217ae894
Component: engine
2015-04-29 17:57:01 -04:00
031175bb41 Merge pull request #11526 from mizzy/append-drop-rule-not-insert
Append DROP rule with --icc=false, not insert
Upstream-commit: 6c46c9c83936689937701b3259d969255bcf4ca6
Component: engine
2015-04-29 10:28:11 -07:00
ce3a344378 Merge pull request #10427 from jfrazelle/option-to-disable-systemd-cgroups
Option to configure cgroup manager (adds --exec-opt)
Upstream-commit: 53bef64804c6dae6662a7d55c3bb3e48b3e5dfdf
Component: engine
2015-04-29 10:00:41 -07:00
12da32d151 Merge pull request #11190 from cyphar/expose-path-sanitisation-wrappers
Expose the getResourcePath and getRootResourcePath wrappers.
Upstream-commit: d2f0b9ed976987576483387bc919cb7ffbfa38e8
Component: engine
2015-04-28 18:45:36 -04:00
14fa064d31 Merge pull request #12826 from cpuguy83/12825_fix_leftover_container_json
Fix undead containers
Upstream-commit: 67da055cebcaccd059daec88080a339b4c9e6b2c
Component: engine
2015-04-28 08:11:40 -04:00
1a116000d5 option to configure cgroups
Signed-off-by: Jessica Frazelle <jess@docker.com>
Upstream-commit: 2afcd10202283478cbafb21e8c5f90f1236acccc
Component: engine
2015-04-27 17:50:39 -07:00
0b5b481a6d Merge pull request #12828 from tdmackey/trivial-spelling
trivial: typo cleanup
Upstream-commit: 0153edcda1527cd19f5952046b51c4e8358d01ed
Component: engine
2015-04-27 17:05:46 -04:00
e4ed8d93e4 Fix undead containers
When a container has errors on removal, it gets flagged as dead.
If you `docker rm -f` a dead container the container is dereffed from
the daemon and doesn't show up on `docker ps` anymore... except that the
container JSON file may still be lingering around and becomes undead
when you restart the daemon.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: c3c08f76bec023218b632e4c688ff9fcda11fcef
Component: engine
2015-04-27 16:45:51 -04:00
ae74d9f34f trivial: typo cleanup
Signed-off-by: David Mackey <tdmackey@booleanhaiku.com>
Upstream-commit: 3941623fbc3fa724d61f53121513ffd87d03b61c
Component: engine
2015-04-27 13:35:08 -07:00
954f940156 Small if err cleaning
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 844538142d95c1b7dda1bb2903179510105fe9b5
Component: engine
2015-04-27 21:50:33 +02:00
a8e7d51077 Merge pull request #12819 from Microsoft/10662-volumesrefactor
Windows: Refactor volumes
Upstream-commit: f9c27bda1ec9be667520900e1baa0e996f46f80e
Component: engine
2015-04-27 10:25:41 -07:00
b2c23588b8 Merge pull request #12793 from runcom/bye-unmarshal
Replace json.Unmarshal() with json.Decoder().Decode()
Upstream-commit: 4ddd448490ba2a98a158bd3339e958b568fdc804
Component: engine
2015-04-27 13:19:43 -04:00