Commit Graph

3409 Commits

Author SHA1 Message Date
3fad97e978 Image: Deactivate image device when unmounting container
There is no need to keep all the device-mapper devices active, we
can just activate them on demand if needed.
Upstream-commit: a89a51128ecdf2db02a333a406752416de8a1db6
Component: engine
2013-09-26 15:08:54 +00:00
f67c857087 Image: Initial support for device-mapper mounts
This supports creating images from layers and mounting them
for running a container.

Not supported yet are:
* Creating diffs between images/containers
* Creating layers for new images from a device-mapper container
Upstream-commit: fcd41fe51ae0418d583f3d33dfac7fc0879ca30e
Component: engine
2013-09-26 15:08:54 +00:00
d814a010c6 Runtime: Add MountMethod to allow AUFS and device-mapper to coexist
Upstream-commit: 53851474c0b8127442ce11ab38fa0ae8d5c694f0
Component: engine
2013-09-26 15:08:54 +00:00
19e1e13936 Runtime: Add DeviceSet singleton
This adds a DeviceSet singleton to the Runtime object which will be used for
any DeviceMapper dependent code.
Upstream-commit: f317a6b6fe31685445ac97a1475136c5ab7860b5
Component: engine
2013-09-26 15:08:54 +00:00
676dd4d044 Server: Pass in device-mapper DeviceSet to server
This makes docker (but not docker-init) link to libdevmapper and will
allow it to use the DeviceSet
Upstream-commit: 87e248f52458eca2a40ed6e54e36de89228f6790
Component: engine
2013-09-26 15:08:54 +00:00
056e5df9a6 Add DeviceSet interface
This interface matches the device-mapper implementation (DeviceSetDM)
but is free from any dependencies. This allows core docker code
to refer to a DeviceSet without having an explicit dependency on
the devmapper package.

This is important, because the devmapper package has external
dependencies which are not wanted in the docker client app, as it
needs to run with minimal dependencies in the docker image.
Upstream-commit: ac194fc696fb95045ee5b634d04a9f7093f45685
Component: engine
2013-09-26 15:08:54 +00:00
dc920bde90 Image: Add runtime and container id args to Mount()
We will later need the runtime to get access to the VolumeSet
singleton, and the container id to have a name for the volume
for the container
Upstream-commit: 8637ba710e8bd10ee36aa5c71f5ef54ab9037dfa
Component: engine
2013-09-26 15:08:54 +00:00
600d1bb0c4 Runtime: Automatically use docker-init if it exists
In some builds the main docker binary is not statically linked,
and as such not usable in as the .dockerinit binary, for those
cases we look for a separately shipped docker-init binary and
use that instead.
Upstream-commit: 0f5ccf934e01c75e467e6f35e883cf95bae74f2c
Component: engine
2013-09-26 15:08:54 +00:00
e6cab9d688 Add a separate docker-init binary
This may be used for the .dockerinit case if the main binary is not
statically linked.
Upstream-commit: 250bc3f61547c6bcdc17ffe41e8a9a0307099cc3
Component: engine
2013-09-26 15:08:54 +00:00
167815c85c devmapper: Add simple tool to test the DeviceSet commands
Upstream-commit: 2b1dc8a8a3b99e6edbdf2cc71bf5461d81b9c354
Component: engine
2013-09-26 15:08:54 +00:00
51bfa55a02 devmapper: Add DeviceSet device-mapper helper
This is a module that uses the device-mapper create CoW snapshots
You instantiate a DeviceSetDM object on a specified root (/var/lib/docker),
and it will create a subdirectory there called "loopback". It will
contain two sparse files which are loopback mounted into
a thin-pool device-mapper device called "docker-pool".

We then create a base snapshot in the pool with an empty filesystem
which can be used as a base for docker snapshots. It also keeps track
of the mapping between docker image ids and the snapshots in the pool.

Typical use of is something like (without error checking):

devices = NewDeviceSetDM("/var/lib/docker")
devices.AddDevice(imageId, "") // "" is the base image id
devices.MountDevice(imageId, "/mnt/image")
 ... extract base image to /mnt/image
devices.AddDevice(containerId, imageId)
devices.MountDevice(containerId, "/mnt/container")
... start container at /mnt/container
Upstream-commit: 0b12702c0c9753cbb18a942bac2600b036e4f80e
Component: engine
2013-09-26 15:08:54 +00:00
d06f87abd9 Add libdevmapper wrapper
Upstream-commit: 739af0a17f6a5a9956bbc9fd1e81e4d40bff8167
Component: engine
2013-09-26 15:08:54 +00:00
07130a5623 Merge pull request #2000 from tianon/deprecated-docker-latest-tgz
Replace deprecated upgrading reference to docker-latest.tgz, which hasn't been updated since 0.5.3
Upstream-commit: 06c1f000e8791b9cc62eeb2e5edbeeb326a03de6
Component: engine
2013-09-25 13:47:48 -07:00
0599141435 Merge pull request #2001 from tianon/gentoo-tree
Update Gentoo installation documentation now that we're in the portage tree proper
Upstream-commit: 00b3acb8ab5ad97aded2e3e7c6d554e47a28467d
Component: engine
2013-09-25 13:45:51 -07:00
23aacffbbb Merge pull request #2004 from kencochrane/master
fix the error message so it is the same as the regex issue #1999
Upstream-commit: 420ba9c85a2cc53449f1050d638392e4420bf3e9
Component: engine
2013-09-25 09:46:15 -07:00
d2ca23a4cb fix the error message so it is the same as the regex issue #1999
Upstream-commit: 0f829bf5cf6fd05c89a8f2aac47e5eec9143b150
Component: engine
2013-09-25 11:33:09 -04:00
544a69ed4d Merge pull request #1989 from alexlarsson/setsid
Container: Always create a new session for the container
Upstream-commit: 1363de0934ce65bda21f831a6b55f28b3e0d13e7
Component: engine
2013-09-25 07:40:51 -07:00
ba85aaa194 Update Gentoo installation documentation now that we're in the portage tree proper
We're officially a first-class Gentoo citizen now, which is very exciting.  Many thanks to @gregkh for helping us get here.

I started just adapting sections of language in this document, and realized several bits needed to just be rewritten entirely to be more clear.
Upstream-commit: d06116d2e8a70477b3d8b02cd9e57f7465edc0ce
Component: engine
2013-09-24 23:26:36 -06:00
c149784acb Replace deprecated upgrading reference to docker-latest.tgz, which hasn't been updated since 0.5.3
Upstream-commit: 595210a3706ecad29c03b3c6753794440b18f992
Component: engine
2013-09-24 21:25:45 -06:00
fe99936b97 Update VERSION to 0.6.3-dev
Upstream-commit: c9b916b2938654d4663b0b2bed1ac439129981bd
Component: engine
2013-09-24 19:54:13 -07:00
b5810facb7 Merge branch 'release'
Upstream-commit: 1e6370fd4b4547e278a352bfd37e8758f3375a1e
Component: engine
2013-09-24 19:54:06 -07:00
14d5f1616b Merge pull request #1968 from tianon/hack-build-instructions
* Hack: Add several of the small make.sh fixes from #1920, and make the output more consistent and contributor-friendly
Upstream-commit: a59a66528baef4eb7593827515016814fdf1ef3e
Component: engine
2013-09-24 17:38:39 -07:00
e431d024f4 Merge pull request #1983 from blissdev/patch-1
various command fixes in postgres example
Upstream-commit: b048e9dffcbab35ed684f031f7ca874ea5a9325e
Component: engine
2013-09-24 14:03:48 -07:00
fb1ac0f2c2 revert removal of slash betwixt user/repo
Upstream-commit: c000e6a7fce11aaddae916853cc551d4801c1f8e
Component: engine
2013-09-24 15:51:21 -05:00
23abc9f334 Add several of the small make.sh fixes from #1920, and make the output more consistent and contributor-friendly, since release instructions already exist in release.sh
Upstream-commit: aa3de0b8499f8f42e0414099b2397179df35358b
Component: engine
2013-09-24 14:36:20 -06:00
beff202e28 Merge pull request #1972 from dotcloud/bump_0.6.3
Bump to version v0.6.3
Upstream-commit: 648d759517b62ca751dc3506f7abce5e9fefc62d
Component: engine
2013-09-24 11:20:27 -07:00
fa7d59102d Merge pull request #1970 from dotcloud/cleanup-hack
Cleanup and reorganize docs and tooling for contributors and maintainers
Upstream-commit: 03fe5632d0bba0ce1c7436fe9d94b595069efc6e
Component: engine
2013-09-24 10:38:21 -07:00
918be128f6 Merge pull request #1982 from modcloth-labs/spelling-fix-for-the-word-protocol
Minor spelling correction of protocoll -> protocol
Upstream-commit: 7447867edd3d778fe8963e91cd42e82cf38a96b2
Component: engine
2013-09-24 07:40:21 -07:00
58c06a4f26 Container: Always create a new session for the container
We never want the container to be in the same process group as the
daemon, as then the container will receive signals sent to the
process group of the container.
Upstream-commit: c1c74cb0b1e83c4836b51828888daff181f52742
Component: engine
2013-09-24 14:57:29 +02:00
6fd51a9a7d use su instead of sudo
Upstream-commit: 17b7194d91ba91e044155edf7ae0a485c2dd9c0b
Component: engine
2013-09-24 02:25:16 -05:00
69887d2da0 various command fixes
Indicating the repository and tag should be separated by a space and not a '/'. Also fixed a quote typo.
Upstream-commit: 15ad2915b95bd13067691ed3c7dcab67f529d37f
Component: engine
2013-09-24 02:12:24 -05:00
94f91b70ab Merge pull request #1883 from tianon/mkimage-debian
Several small tweaks/fixes for contrib/mkimage-debian.sh
Upstream-commit: d6887b769cff4140915ea7f97a076aecec7a05f3
Component: engine
2013-09-23 22:44:16 -07:00
57f2e4e14d Add a few tweaks and fixes to contrib/mkimage-debian.sh
Add simple workaround for #1755 to contrib/mkimage-debian.sh

Add simple echo patch in contrib/mkimage-debian.sh to prevent init scripts from running during apt-get installs/updates

Add `apt-get clean` to mkimage-debian.sh for slightly smaller images

Add more small apt tweaks to mkimage-debian.sh thanks to @jpetazzo and @spahl
Upstream-commit: 10362870dbdd5063e62dde919f4bab764145d3e2
Component: engine
2013-09-23 22:39:57 -06:00
0f5b1c7220 Minor spelling correction of protocoll -> protocol
Upstream-commit: a7db1254807307b0ac4d9bb0dc784d12caa54237
Component: engine
2013-09-23 23:14:42 -04:00
45a3edf527 Hack: correct typo in release checklist
Upstream-commit: f6c64827c899b1fd737df0fcd018cc33dd9a91b9
Component: engine
2013-09-23 18:43:08 -07:00
7ae1ed533a Merge pull request #1973 from metalivedev/1969-formatfix
Fix #1969 formatting, add information about multiline json
Upstream-commit: 30b759ffa979b9424a9b3db81f683db6b9a253c7
Component: engine
2013-09-23 13:17:55 -07:00
8dca6b9f4e Merge pull request #1975 from tianon/patch-1
Add @tianon to hack/MAINTAINERS
Upstream-commit: 35ca35ffb613947a9b0f8215aedbe9e001c49720
Component: engine
2013-09-23 12:21:36 -07:00
8e947a6f47 Add @tianon to hack/MAINTAINERS
Upstream-commit: a4067b1b441fac478d2c745981c464390f73a357
Component: engine
2013-09-23 12:39:14 -06:00
423f17f388 Bump to version v0.6.3
Upstream-commit: b0a49a30c78e8cafecac455aa0a306ac1792a644
Component: engine
2013-09-23 11:29:11 -07:00
a34a99a3e4 Fix #1969 formatting, add information about multiline json
Upstream-commit: 6097644e4b79fec180173d7278da884ac0484b8a
Component: engine
2013-09-23 11:29:08 -07:00
7057328389 Hack: update README
Upstream-commit: fa3837abf1fd796cf8142a62eaece8decfa2ec6b
Component: engine
2013-09-23 11:26:05 -07:00
ca189d7192 Update maintainer's manual: every change should be done in a pull request.
Upstream-commit: baff72bc82281b7fa545e0782722b9804240cf6e
Component: engine
2013-09-23 11:26:05 -07:00
4a859df333 Hack: update release checklist and reference it in REAMDE
Upstream-commit: 99377de7d2c48e25cb13928605c90ea40eab5b35
Component: engine
2013-09-23 11:26:04 -07:00
d9a3a46bf0 hack/MAINTAINERS.md: a maintainer's manual.
Upstream-commit: 0ef5bcb17d77e575c808003856c7a6ed134b04f2
Component: engine
2013-09-23 11:26:04 -07:00
02fca5dc5a Hack: remove deprecated files
Upstream-commit: fd1c43f0e05133249ef441444a740b81db3b90ce
Component: engine
2013-09-23 11:26:03 -07:00
f1898819e5 Merge pull request #1967 from dotcloud/vendor-update-tar
Update tar dependency to newest version
Upstream-commit: dc06496dc8449604e71b43cb2cd3b83daa2205d7
Component: engine
2013-09-23 10:44:42 -07:00
acea376687 Update tar dependency to newest version
Upstream-commit: cfbe76e5595b66e43447d6e1f3de40946af066f4
Component: engine
2013-09-23 09:59:04 -07:00
775cc7de8b Merge pull request #1948 from dotcloud/fix_attach
Fix attach issue
Upstream-commit: 2fafe1efce32c7560151e036c43e0dddb7faaa14
Component: engine
2013-09-23 02:15:51 -07:00
2a3202f318 Merge pull request #1820 from dotcloud/1647-api-group
packaging, issue #1647: Add docker groupname on the package release
Upstream-commit: 8240e37b87b5af209053b5c95489378b9b78e4f6
Component: engine
2013-09-22 14:21:26 -07:00
f4fdcdb53f Merge pull request #1934 from dotcloud/host-permissions
Only copy files and change permissions with non bindmount
Upstream-commit: 23cf3c7a3318b893ea1dd50cc9f05d4705bcc6df
Component: engine
2013-09-22 09:40:52 -07:00