Commit Graph

7073 Commits

Author SHA1 Message Date
Alexander Larsson 5f846085d9 cgroups: Add systemd implementation of cgroups
This implements cgroup.Apply() using the systemd apis.
We create a transient unit called "docker-$id.scope" that contains
the container processes. We also have a way to set unit specific
properties, currently only defining the Slice to put the
scope in.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: 6c7835050e53b733181ddfca6152c358fd625400
Component: engine
2014-03-27 22:44:31 +01:00
Alexander Larsson a2c3f01761 Add systemd.SdBooted()
This is a conversion of sd_booted() from libsystemd to go and checks
if the system was booted with systemd.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: 1296d5ce9ad43d8d833f6e5661da45aef6d4c26b
Component: engine
2014-03-27 22:44:31 +01:00
Alexander Larsson 931e59cc5b pkg/systemd: Drop our copy-pasted version of go-systemd/activation
Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: cb43fd007133fc05b6bb2b0d3d58fef8b1e60537
Component: engine
2014-03-27 22:44:31 +01:00
Alexander Larsson 4b9413542a Vendor github.com/godbus/dbus and github.com/coreos/go-systemd
We need this to do systemd API calls.

We also add the static_build tag to make godbus not use
os/user which is problematic for static builds.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: d4725801b3401d04b3f35b5783bdc0fc362f7f00
Component: engine
2014-03-27 22:44:26 +01:00
Alexander Larsson cf568a7031 cgroups: Join groups by writing to cgroups.procs, not tasks
cgroups.procs moves all the threads of the process, and "tasks" just
the one thread. I believe there is a risk that we move the main thread,
but then we accidentally fork off one of the other threads if the go
scheduler randomly switched to another thread. So, it seems safer (and
more correct) to use cgroups.procs.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: 9294d7f2af6ecb7c18be11fb5043fad4a61d8f09
Component: engine
2014-03-27 21:47:47 +01:00
Alexander Larsson 4a0326289d cgroups: Splity out Apply/Cleanup to separate file/interface
This leaves only the generic cgroup helper functions in cgroups.go and
will allow easy implementations of other cgroup managers.

This also wires up the call to Cleanup the cgroup which was missing
before.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: 7f7d8419a71d49b25e4d38196b36e93b568bb61d
Component: engine
2014-03-27 21:47:47 +01:00
Alexander Larsson 9e1caa6b4a Add --opt arguments for drivers
In order to handle special configuration for different drivers we
make the Config field a map to string array. This lets
us use it for lxc, by using the "lxc" key for those, and we can
later extend it easily for other backend-specific options.

Docker-DCO-1.1-Signed-off-by: Alexander Larsson <alexl@redhat.com> (github: alexlarsson)
Upstream-commit: 7a3070a6000963d12be9dcd2698d911b848a33b6
Component: engine
2014-03-27 21:47:47 +01:00
Tianon Gravi 13e17899e1 Merge pull request #4613 from tianon/add-cgroupfs-mention-to-packagers
Add mention of mounting cgroupfs properly to PACKAGERS.md
Upstream-commit: be5c65c2a2df00df806c497cf9d5d70c635eb38f
Component: engine
2014-03-27 13:26:31 -06:00
Tianon Gravi 6c925a0b3c Merge pull request #4865 from creack/fix_fish_completion
Fix fish completion when having alias on awk or grep
Upstream-commit: 94538fe022b8f905e2cc6a132242375f7f120fb5
Component: engine
2014-03-27 13:07:11 -06:00
Michael Crosby f731a44bb1 Merge pull request #4818 from viirya/fix_working_dir_not_dir
fix the problem when setting existing file as working dir
Upstream-commit: ba9f9b3c9268a1b201bcb10045da77b135d869d1
Component: engine
2014-03-27 11:41:18 -07:00
Tianon Gravi fac202530a Merge pull request #4879 from gorsuch/exec-upstart
Use "exec" in the upstart script to let upstart manage the docker process instead of a shell
Upstream-commit: db20cb0e1ac877ca3b51c66d179185f55e5b899b
Component: engine
2014-03-27 12:15:30 -06:00
unclejack e14a0de6e1 Merge pull request #4838 from crosbymichael/btrfs-ftw
Promote btrfs
Upstream-commit: 303a954151f89dc7d2c485417fd0a9bacabe9ad0
Component: engine
2014-03-27 19:55:25 +02:00
Michael Gorsuch 45a3d3da44 upstart: use exec here so upstart can monitor the process and not just a shell
Docker-DCO-1.1-Signed-off-by: Michael Gorsuch <michael.gorsuch@gmail.com> (github: gorsuch)
Upstream-commit: 73ee4879afd557a3ddd0740b0a281024060f2436
Component: engine
2014-03-27 12:44:33 -05:00
Tianon Gravi ef8b9a6c77 Merge pull request #4211 from rhatdan/master
Add SELinux support
Upstream-commit: 79e8ef28e43817e14d3df0779711fc4ca00b36d1
Component: engine
2014-03-27 10:26:05 -06:00
Dan Walsh f757666ccd This patch adds SELinux labeling support.
docker will run the process(es) within the container with an SELinux label and will label
all of  the content within the container with mount label.  Any temporary file systems
created within the container need to be mounted with the same mount label.

The user can override the process label by specifying

-Z With a string of space separated options.

-Z "user=unconfined_u role=unconfined_r type=unconfined_t level=s0"

Would cause the process label to run with unconfined_u:unconfined_r:unconfined_t:s0"

By default the processes will run execute within the container as svirt_lxc_net_t.
All of the content in the container as svirt_sandbox_file_t.

The process mcs level is based of the PID of the docker process that is creating the container.

If you run the container in --priv mode, the labeling will be disabled.

Docker-DCO-1.1-Signed-off-by: Dan Walsh <dwalsh@redhat.com> (github: rhatdan)
Upstream-commit: 4c4356692580afb3971094e322aea64abe0e2500
Component: engine
2014-03-26 15:30:40 -04:00
Guillaume J. Charmes aa3273eb2a Merge pull request #4855 from unclejack/update_release_v0.9.1
Update master for release 0.9.1
Upstream-commit: ab00619c56738c0704374c68fb43f4dd90b8887e
Component: engine
2014-03-26 11:43:13 -07:00
Guillaume J. Charmes 70613c0a32 Fix fish completion when having alias on awk or grep
Docker-DCO-1.1-Signed-off-by: Guillaume J. Charmes <guillaume@charmes.net> (github: creack)
Upstream-commit: e7f3234c1e4926c966f4c9e4cf08d9aae60d21bb
Component: engine
2014-03-26 09:05:21 -07:00
unclejack 40b880e003 Change version to 0.9.1-dev
Docker-DCO-1.1-Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com> (github: unclejack)
Upstream-commit: b2721e05ce4d6026855718ad9b01eb7dec797cd2
Component: engine
2014-03-26 00:18:45 +02:00
unclejack a34af92d8d Bump to version v0.9.1
Docker-DCO-1.1-Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com> (github: unclejack)

Conflicts:
	VERSION
Upstream-commit: d36176652ef8f0220a1cff5dc00933400c69a562
Component: engine
2014-03-26 00:18:19 +02:00
Victor Vieux 365103a8e5 Merge pull request #4840 from vbatts/vbatts-load_from_input
docker load: add --input flag
Upstream-commit: 5506e4b62dfad9d79fbeed91b9696fb51c736631
Component: engine
2014-03-25 14:37:27 -07:00
Victor Vieux da42bdb7df Merge pull request #4628 from kippandrew/port-allocator
Fix port collision with dynamically allocated ports
Upstream-commit: abef5cb0fcd107c751b7390bc7eb45e3ecd675e6
Component: engine
2014-03-25 14:30:10 -07:00
Victor Vieux e9aaf94539 Merge pull request #4794 from alexlarsson/dm-better-shutdown
devicemapper: Better/faster shutdown
Upstream-commit: 6643cc20fe16f36ffb3342bec61a3c0f24d2a9df
Component: engine
2014-03-25 14:03:00 -07:00
Tianon Gravi d977af9bd0 Merge pull request #4842 from pda/installer-devicemapper-comment
Update AUFS comment in install.sh
Upstream-commit: e99297e4ebb716b37197f0f72bf35ad59399f669
Component: engine
2014-03-25 14:29:46 -06:00
Paul Annesley 6acb821d1b install.sh (get.docker.io) aufs comment updated.
devicemapper has landed, but the TODO hasn't been actioned presumably
because aufs is still preferred over devicemapper when available[1].

Comment updated accordingly.

Citation [1]: https://github.com/crosbymichael/docker/blob/267ca39921c35826ccbdb84fbbc0690bfef385d7/runtime/graphdriver/driver.go#L40-L46

Docker-DCO-1.1-Signed-off-by: Paul Annesley <paul@annesley.cc> (github: pda)
Upstream-commit: 576278102e0fa9166711f8cf23ec972fcccc085e
Component: engine
2014-03-25 11:33:16 -07:00
Vincent Batts 70fdc926f2 docker load: added example of a multiple tag image
Docker-DCO-1.1-Signed-off-by: Vincent Batts <vbatts@redhat.com> (github: vbatts)
Upstream-commit: 2517370088ad11765f99d75c16b58e93fe18f85a
Component: engine
2014-03-25 08:30:59 -04:00
Sven Dowideit 674da9e17c Merge pull request #4845 from noducks/link_fix
Force flag to prevent file already exists error.
Upstream-commit: d9c11163035d3bd3d3b4a6eea46f5f57e5428b56
Component: engine
2014-03-25 21:03:04 +10:00
noducks 05ba4a16d9 Force flag to prevent file already exists error.
Docker-DCO-1.1-Signed-off-by: No Ducks <onemannoducks@gmail.com> (github: noducks)
Upstream-commit: 8e434c314ef74618001cc95466c2b567fa0283e2
Component: engine
2014-03-25 10:26:45 +00:00
Sven Dowideit f32e1ed77b Merge pull request #4814 from noducks/master
Reminder for OSX users not to use SUDO
Upstream-commit: 30d25a3d27a80f0fcf0b9641e5d811f98e225d20
Component: engine
2014-03-25 20:15:39 +10:00
viirya 2ce68073b6 check if working dir is a directory and raise corresponding errors when making dir.
Docker-DCO-1.1-Signed-off-by: Liang-Chi Hsieh <viirya@gmail.com> (github: viirya)
Upstream-commit: 293157b8b38dd5ea5fa49d90501cc3c86717da40
Component: engine
2014-03-25 17:47:08 +08:00
noducks df52e0a2f8 Reminder for OSX users not to use SUDO
Useful for those who haven't made it to the examples page yet. https://github.com/chadoh/docker/commit/dad4a998dc716e506c874ce0e792989b9df28748

Docker-DCO-1.1-Signed-off-by: No Ducks <onemannoducks@gmail.com> (github: noducks)
Upstream-commit: 69087f2d2397b18d6dd2d7b994e24ea9814e4bcd
Component: engine
2014-03-25 09:42:59 +00:00
Vincent Batts e26ac10f84 docker load: doc clarification
Docker-DCO-1.1-Signed-off-by: Vincent Batts <vbatts@redhat.com> (github: vbatts)
Upstream-commit: c6c7c03cddc852c42b9f047fbd5c2fb6cecf39eb
Component: engine
2014-03-24 23:36:07 -04:00
Sven Dowideit 2e34f473ea Merge pull request #4839 from bflad/chef-docker-docs
Add Chef usage documentation
Upstream-commit: 267ca39921c35826ccbdb84fbbc0690bfef385d7
Component: engine
2014-03-25 12:38:45 +10:00
Brian Flad 1bb9a4e471 Fix typo in Using Chef documentation description
Docker-DCO-1.1-Signed-off-by: Brian Flad <bflad417@gmail.com> (github: bflad)
Upstream-commit: c84ff187c62060f20b7039a5005a44012898df7b
Component: engine
2014-03-24 22:29:54 -04:00
Vincent Batts deed2b6616 docker load: add --input flag
for those that do not care to read from redirected stdin

Docker-DCO-1.1-Signed-off-by: Vincent Batts <vbatts@redhat.com> (github: vbatts)
Upstream-commit: 84e1fdf35d9d6493d389a8e8be3ab41190004b30
Component: engine
2014-03-24 21:43:26 -04:00
Brian Flad 68d9a195f9 Add Chef usage documentation
Docker-DCO-1.1-Signed-off-by: Brian Flad <bflad417@gmail.com> (github: bflad)
Upstream-commit: bb034c6b42c347ffdfae834960bf2386429e1980
Component: engine
2014-03-24 21:39:15 -04:00
Sven Dowideit 3c6aacdcbb Merge pull request #4786 from SvenDowideit/run--lxc-conf-is-lxc-driver-only-atm
add a note that --lxc-conf is lxc-driver only.
Upstream-commit: 0b2b5a594b6aadaffeab1d6ce823717390111f1e
Component: engine
2014-03-25 11:21:06 +10:00
Michael Crosby 6bdc8cd953 Merge pull request #4751 from enokd/master
Fixes #3369 Repeated slash-'/' characters; harmonize across all name-related commands 
Upstream-commit: 4585d2da3e62a8c41c212f32cd77b510a2f123b0
Component: engine
2014-03-24 17:43:02 -07:00
Tianon Gravi 8832e97391 Merge pull request #4837 from crosbymichael/remove-ci
Remove docker-ci code from the repo
Upstream-commit: e1035535ec878c8c837bd1fdd433169dd9b5da42
Component: engine
2014-03-24 18:01:26 -06:00
Michael Crosby 186280f667 Merge pull request #4778 from vbatts/vbatts-save_to_output
`docker save --output` flags
Upstream-commit: a258d048a221d2598f7317ee8e64765cb20fd588
Component: engine
2014-03-24 16:52:08 -07:00
Guillaume J. Charmes 665275b36f Merge pull request #4835 from crosbymichael/reverst-stop-kill
Revert back to the default stop functionality of SIGKILL after timeout
Upstream-commit: c3ff1f41bbc03ad8fd6dad6461660ecf6c6ee67d
Component: engine
2014-03-24 16:33:38 -07:00
Michael Crosby ac424b1fd8 Merge pull request #4832 from LK4D4/fix_events_hanging_#4804
Workaround for hanging events. Fixes #4804
Upstream-commit: dece260f3aef2c98c95f3f06ff5ffbf1da3b1f39
Component: engine
2014-03-24 16:26:50 -07:00
LK4D4 ec5934f5dd Workaround for hanging events. Fixes #4804
Docker-DCO-1.1-Signed-off-by: LK4D4 <lk4d4math@gmail.com> (github: LK4D4)
Upstream-commit: c7540b3e94d7712b6b91ba80de0155f20156f3f3
Component: engine
2014-03-24 22:31:32 +04:00
Michael Crosby f6d78803bd Promote btrfs
Docker-DCO-1.1-Signed-off-by: Michael Crosby <michael@crosbymichael.com> (github: crosbymichael)
Upstream-commit: 68dd722e3c54995e609b2524bad501ab1d4d15d6
Component: engine
2014-03-24 14:15:04 +00:00
Michael Crosby aa4d9df883 As far as I know this code is not used or maintained
Docker-DCO-1.1-Signed-off-by: Michael Crosby <michael@crosbymichael.com> (github: crosbymichael)
Upstream-commit: f41135bc11b9a4da896e5054a73afa112b2e835f
Component: engine
2014-03-24 12:39:56 +00:00
Michael Crosby aa948163e7 Revert "Disable automatic killing of containers when docker stop fails"
This reverts commit 8b5cf51d600dc4f3611cf063c52cf3448e7b01e5.

Docker-DCO-1.1-Signed-off-by: Michael Crosby <michael@crosbymichael.com> (github: crosbymichael)
Upstream-commit: d503714285143013d9fa6932ee5775fd155d26d2
Component: engine
2014-03-24 12:03:56 +00:00
Michael Crosby a7b2642223 Revert "fix failing test to use kill instead of stop"
This reverts commit 4434dcee89f7d0d0239f6b492b24e940cdbafb21.

Docker-DCO-1.1-Signed-off-by: Michael Crosby <michael@crosbymichael.com> (github: crosbymichael)
Upstream-commit: f1bd79ec97c125148c690d66ebd3ac5ab3f388b2
Component: engine
2014-03-24 12:03:41 +00:00
Michael Crosby 90b90efe51 Merge pull request #4775 from LK4D4/remove_duplicate_dns_#4714
Remove duplication of Dns in config merging.
Upstream-commit: 5294bf7e67a67b2f0643c61fb126814d82a1979d
Component: engine
2014-03-21 17:08:06 -07:00
Victor Vieux 08c755a87a Merge pull request #4800 from vieux/rename_network_driver
rename lxc to bridge
Upstream-commit: 97e5295f437bbb9eae26c99842b269aae1b427c2
Component: engine
2014-03-21 16:52:40 -07:00
Michael Crosby f79fdc8091 Merge pull request #4761 from ichik1/fix-display-of-since-time-exit
Fix since time exit display when s.FinishedAt is zero
Upstream-commit: de450b23bea244747953229c2ba43ca4a78c7368
Component: engine
2014-03-21 16:48:30 -07:00
Tianon Gravi 90b35c5f04 Add mention of mounting cgroupfs properly to PACKAGERS.md
Docker-DCO-1.1-Signed-off-by: Andrew Page <admwiggin@gmail.com> (github: tianon)
Upstream-commit: 708ecd7da2125a47abb9678ed382893c7b30f10f
Component: engine
2014-03-21 14:17:09 -06:00