Commit Graph

20395 Commits

Author SHA1 Message Date
34abbb9020 Add test
Upstream-commit: 1328be7c299417aa8c8740ac4901a978724afa9b
Component: engine
2013-10-03 15:21:14 +00:00
7dc11f73be Random improvments
Upstream-commit: 8b2f4aab232880cb0d7faa18ae12adb33f483b2c
Component: engine
2013-10-02 20:18:15 -07:00
788a1fc558 Update Dockerfile and hack to support compiling device-mapper code statically (using go1.2rc1)
Upstream-commit: 06d0843a61843e6b16a56d518e21032a5652098b
Component: engine
2013-10-03 10:32:47 -06:00
e87cd90363 rebase
Upstream-commit: deb05a36e8cb0361c7900b128e594cd6db06ba73
Component: engine
2013-10-03 15:49:28 +00:00
705988989e disable: don't create device nodes manually if udev is not availabile as we don't have it in dind
Upstream-commit: 55189307d0ec6992f76572fae675bd371cc36cff
Component: engine
2013-10-03 15:47:38 +00:00
716ed9c609 Fix #2017 Merge branch '2017-api-details'
Upstream-commit: ff4f32d58f64ee7fc8bab26bc0dd410fb1c7dc5e
Component: engine
2013-10-02 18:20:44 -07:00
0d5f83ca5f Merge branch 'hint-api-details' of git://github.com/cdunklau/docker into 2017-api-details
Conflicts:
	docs/sources/api/docker_remote_api.rst
Upstream-commit: 462ac1efcfbbe32a57f1178b28d0bc1733b86675
Component: engine
2013-10-02 18:18:46 -07:00
6963be7e37 Merge pull request #2015 from dsissitka/1927
Configured FPM to make /etc/init/docker.conf a config file.
Upstream-commit: 1332f400f7281aa726e4148b0831e5ccfec14a4d
Component: engine
2013-10-02 18:18:16 -07:00
02e5d0abf7 Merge pull request #2069 from philips/add-xz-to-runtime-dependencies
fix(hack/PACKAGERS): add xz utils as a runtime dep
Upstream-commit: a292c04ddb3d61f17f191c2eb57d0e6af5c5baea
Component: engine
2013-10-02 17:37:56 -07:00
6087f9fa5b Merge pull request #2060 from mastahyeti/patch-1
Add `apt-get install curl` to Ubuntu docs
Upstream-commit: 37c4513cf91c73c01f8ebdf148c22f157499e592
Component: engine
2013-10-02 16:46:00 -07:00
2727640067 Merge pull request #2063 from dhrp/doc-template-fix
Doc template fix
Upstream-commit: b584c21ca419d81cdce86089bca3ee163540102e
Component: engine
2013-10-02 16:31:47 -07:00
dfb1941bb6 Merge pull request #2073 from tianon/gentoo-no-more-1422-hack
Remove Gentoo install notes about #1422 workaround
Upstream-commit: c92507341dce1ffcd4e59aca945e0e74dae57041
Component: engine
2013-10-02 16:24:11 -07:00
e12efc74cd Merge pull request #2065 from kyleconroy/fix_ping_endpoint
Fix Ping endpoint documentation
Upstream-commit: 9f0feaa2e1b69f085631ed8397471c125df9f0a1
Component: engine
2013-10-02 16:22:49 -07:00
742265d87b Update ubuntu docs to use wget instead of curl
Ubuntu doesn't come with curl.

wget instead of curl

nicer wget syntax

remove /dev/null
Upstream-commit: 0f830aa431b513d5ac2ee4f9e1239d860bbb4a01
Component: engine
2013-10-02 16:27:34 -06:00
f1f4164997 Remove Gentoo install notes about #1422 workaround
Upstream-commit: 5f05cb481760d551dcc3607b3c4dd48897b59cbd
Component: engine
2013-10-02 16:06:22 -06:00
7e8f18e24f Merge pull request #2066 from tianon/vendor-bump-kr-pty
Bump vendor kr/pty to commit 3b1f6487b (syscall.O_NOCTTY)
Upstream-commit: 4778039dd2724accdba870cdaf1315d34bb67831
Component: engine
2013-10-02 14:44:07 -07:00
28014b74a7 Merge pull request #2014 from alexlarsson/allow_set_file_cap
* Runtime: lxc: Allow set_file_cap capability in container
Upstream-commit: b180770b1de71f6863cfc6cfd3896a574348c018
Component: engine
2013-10-02 14:38:50 -07:00
9a40945c21 fix(hack/PACKAGERS): add xz utils as a runtime dep
Upstream-commit: 4f5c2cbccc2ef80f5372ebb4abb38d33343f2c86
Component: engine
2013-10-02 12:06:19 -07:00
22c64c0aa6 Merge pull request #2047 from Thermionix/patch-1
Update archlinux.rst
Upstream-commit: c3acd9bece0aef08e035544122d2d9270f5d76c9
Component: engine
2013-10-02 10:57:48 -07:00
1ada892daf Bump vendor kr/pty to commit 3b1f6487b (syscall.O_NOCTTY)
Upstream-commit: cb21a4049052a012fd71dcaceef2bb57e1ed36f8
Component: engine
2013-10-01 19:48:50 -06:00
e2a3c979d5 Cleanup
Upstream-commit: 5025b4d09443019e1e8636288f3e6dbb085253cd
Component: engine
2013-10-01 16:32:56 -07:00
c9a5101a95 Add/modified the canonical link to work with all /index/ links. Added style for "danger'
Upstream-commit: 509e25cf04cf1984ae0c9112a8c380492d177be8
Component: engine
2013-10-01 16:26:14 -07:00
8b264261cb testing, issue #1948: Increase TestAttachDetach and TestRunDetach timeout
Upstream-commit: 135c1fce90eeaee9f6aef5d0119028cd017a1a73
Component: engine
2013-10-01 15:59:52 -07:00
0091aaec1e Fix Ping endpoint documentation
Upstream-commit: d517fd3d77cea103008e7f937f1629048cdba24a
Component: engine
2013-10-01 15:49:32 -07:00
6cd78bd3a4 Fix ironic typo in changelog
Upstream-commit: 45bd52d472c3131c7ad5077cf8b20a241d82c555
Component: engine
2013-10-01 18:16:10 +02:00
a2b13fee1d fix logo path
Upstream-commit: 534a991cff405a469754f6afc4fd8aa4be79e444
Component: engine
2013-09-30 16:54:04 -07:00
615792fa5b Image: Fix time setting for old kernels
This is a better fix for futimes() on kernels not supporting O_PATH.
The previous fix broke when copying a device, as it tried to open it
and got and error.
Upstream-commit: 55e1782d6623b59af3f1aea1eb9646a36bbb5579
Component: engine
2013-09-30 17:35:02 -06:00
6420d1eea7 go fmt and aufs support removed
Upstream-commit: 152302e379eaa5b2dfc27d901934da0a18b46beb
Component: engine
2013-09-30 17:35:02 -06:00
bc0e976e11 Revert "add a -mount-method flag"
This reverts commit e52d756f40c9ccf8b37ca496cb72be057c909ed7.
Upstream-commit: 72a08a5458d5d8248dec431c82241a7b18b2657b
Component: engine
2013-09-30 17:35:02 -06:00
0728d1e89a add a -mount-method flag
Upstream-commit: aeb89ffbbac8c5625ad4dbba66938e2ef3f5c638
Component: engine
2013-09-30 17:35:02 -06:00
8ed20571fc RootIsShared: Fix root detection
Column 4 is the mount position, column 3 will not always be
"/" for the root. On one of my system its "/root".
Upstream-commit: 0484b2c3254238a6c534f7d417c12c10b694f0d0
Component: engine
2013-09-30 17:35:02 -06:00
1d7e574dd4 Tests: Clean up any old devmapper leftovers before starting tests
Upstream-commit: be6fef02544d9bc31321b2a21d039e261dc02bd8
Component: engine
2013-09-30 17:35:02 -06:00
1461717d2e Image.Changes: Deactivate image device after unmounting it
There is no need to keep the image device around if we were the
onces creating the device.
Upstream-commit: 071cc18b58408eaa71575e0233a056475196b199
Component: engine
2013-09-30 17:35:02 -06:00
64c3059ad8 Add DeviceSet.HasActivatedDevice()
This lets you see if a device has been activated
Upstream-commit: 6ec5585501c6029ef10a474597503511d5074e10
Component: engine
2013-09-30 17:35:02 -06:00
890bafe58d image: Unmount before removing device in error paths
The device remove fails unless we unmount first
Upstream-commit: 6f57e8025a0a03da8052edc30157f7677f65f208
Component: engine
2013-09-30 17:35:02 -06:00
5fc36fa5bf runtime test: Ensure all containers are unmounted at nuke()
Otherwise we may leave around e.g. devmapper mounts
Upstream-commit: b0a9147fd5f0197931b73e18163a12b04ad8e826
Component: engine
2013-09-30 17:35:02 -06:00
c5a71d7b11 ShellQuoteArguments: Fix quoting
This accidentally used two quotes to start/end each quoted string.
Upstream-commit: a7e876e3571965de64615d2012e63fae9c3ebbf8
Component: engine
2013-09-30 17:35:01 -06:00
17aec56f2a Image: unmount device before removing it on failures
If we don't do this the remove will fail due to EBUSY
Upstream-commit: ecdbdfdaea5497c34a0299e7efd97b8a44bd7314
Component: engine
2013-09-30 17:35:01 -06:00
6101a0a475 image: Handle systems that don't support O_PATH when updating timestamp
Older kernel can't handle O_PATH in open() so this will
fail on dirs and symlinks. For dirs wa can fallback to
the normal Utimes, but for symlinks there is not much to do
but ignore their timestamps.
Upstream-commit: 2c71710b74829787a0c78f7e02f45d31935a996f
Component: engine
2013-09-30 17:35:01 -06:00
2af8abef3d devmapper: Fix loopback mount code
Typo in the loop-control code made it always fall back to the
old method of opening loopback devices.
Upstream-commit: bbc72c85f7733fefda499cb0e96f1dda2ce90625
Component: engine
2013-09-30 17:35:01 -06:00
91d411052a applyLayer() use btrfs reflinks if availible
We use the new file copy helper which uses btrfs reflinks if availible.
Upstream-commit: 1a082ed245aaf55cc92e884c988865b195ea0cb7
Component: engine
2013-09-30 17:35:01 -06:00
08576d6eaf Add CopyFile that can use btrfs reflinks if availible
Upstream-commit: 86421e8b5e84452d66e6b16b5cb1a5a438f8fa1f
Component: engine
2013-09-30 17:35:01 -06:00
19c4006853 Remove accidental commit that enabled MountMethodFilesystem
Upstream-commit: 91c69fd3532eaa92cfc21c6331699a995fdbe2a6
Component: engine
2013-09-30 17:35:01 -06:00
9f8a6e47d8 Add trivial copy-based CoW backend
This creates a container by copying the corresponding files
from the layers into the containers. This is not gonna be very useful
on a developer setup, as there is no copy-on-write or general diskspace
sharing. It also makes container instantiation slower.

However, it may be useful in deployment where we don't always have a lot
of containers running (long-running daemons) and where we don't
do a lot of docker commits.
Upstream-commit: 43a7d3d0e9e2fafcdc90cb84855e1bb3869d2729
Component: engine
2013-09-30 17:35:01 -06:00
6dae654f9c Add Changes.ChangesLayers()
This calculates the difference between a set of layers and a
directory tree.
Upstream-commit: 60f552cac3d165dbe4c8d65c1ab82d31700dcc5d
Component: engine
2013-09-30 17:35:01 -06:00
3953036d64 Changes: Better metadata comparison
Change the comparison to better handle files that are copied during
container creation but not actually changed:

* Inode - this will change during a copy
* ctime - this will change during a copy (as we can't set it back)
* blocksize - this will change for sparse files during copy
* size for directories - this can change anytime but doesn't
  necessarily reflect an actual contents change
* Compare mtimes at microsecond precision (as this is what utimes has)
Upstream-commit: ad402763e160ded1924c9b154983d81614e90deb
Component: engine
2013-09-30 17:35:01 -06:00
84b4aeca21 Image.applyLayer: Be better at creating identical files
There are some changes here that make the file metadata better match
the layer files:

* Set the mode of the file after the chown, as otherwise the per-group/uid
  specific flags and e.g. sticky bit is lost
* Use lchown instead of chown
* Delay mtime updates to after all other changes so that later file
  creation doesn't change the mtime for the parent directory
* Use Futimes in combination with O_PATH|O_NOFOLLOW to set mtime on symlinks
Upstream-commit: 5d2ace3424516bd7cc8d4a57fcaddd00fa1c4b5d
Component: engine
2013-09-30 17:35:01 -06:00
ce9d889436 Change how ChangesDirs() works
Rather than scan the files in the old directory twice to detect the
deletions we now scan both directories twice and then do all the
diffing on the in-memory structure.

This is more efficient, but it also lets us diff more complex things
later that are not exact on-disk trees.
Upstream-commit: 727e7fcccadf1d3e286f5a3c8d1aa388f6b4dab8
Component: engine
2013-09-30 17:35:01 -06:00
ff5de9f609 RootIsShared() - Fix array out of bounds error
This happened for me on the last (empty) line, but better safe than sorry
so we make the check general.
Upstream-commit: 7d566b4f761e8942cf9679e96774b320b8496b2f
Component: engine
2013-09-30 17:35:01 -06:00
74b00e51f4 devmapper: Move init layer to top rather than bottom
The init layer needs to be topmost to make sure certain files
are always there (for instance, the ubuntu:12.10 image wrongly
has /dev/shm being a symlink to /run/shm, and we need to override
that). However, previously the devmapper code implemented the
init layer by putting it in the base devmapper device, which meant
layers above it could override these files (so that ubuntu:12.10
broke).

So, instead we put the base layer in *each* images devmapper device.
This is "safe" because we still have the pristine layer data
in the layer directory. Also, it means we diff the container
against the image with the init layer applied, so it won't show
up in diffs/commits.
Upstream-commit: fdbc2695fe00d522c5c1a962f9be2f802bf53943
Component: engine
2013-09-30 17:35:01 -06:00