Solomon Hykes
77ae9789d3
Internal cleanup: use the mounted container filesystem instead of manipulating the aufs layers directly
2013-11-07 20:30:56 +00:00
Solomon Hykes
98c3693acf
Integrate devmapper and aufs into the common "graphdriver" framework.
...
aufs is still enabled by default, no mechanism for switching drivers
yet.
2013-11-04 17:28:35 +00:00
Solomon Hykes
36c7a7ae94
Partial merge of devmapper/ in order to integrate it as a backend
...
plugin.
The merge is inert, in other words the devmapper code is not called
and the primary aufs backend is untouched.
2013-11-01 04:24:17 +00:00
Michael Crosby
699a1074fb
Initial work on moving aufs to a subpackage
2013-10-31 18:07:54 -07:00
Michael Crosby
96d1e9bb5a
Move archive.go to sub package
2013-10-31 16:57:45 -07:00
Brian Olsen
1c3a674444
Fixed problem with variables containing \n.
...
The /.dockerenv file is now a marshalled json array so that environment
variables with \n and other weird values are supported.
2013-10-31 01:19:32 +01:00
Brian Olsen
25c4c87c86
Support copying value from env with -e option.
2013-10-31 01:19:09 +01:00
Brian Olsen
be7eb4bfcb
Set environment variables using a file.
2013-10-31 00:48:12 +01:00
Michael Crosby
746ba127bf
Hotfix: Migrate public mappings after upgrade
2013-10-30 08:15:12 -07:00
Victor Vieux
e0b59ab52b
Enable sig-proxy by default in run and attach
2013-10-29 11:18:34 -07:00
Michael Crosby
0d2924408b
Add -name for docker run
...
Remove docker link
Do not add container id as default name
Create an auto generated container name if not
specified at runtime.
2013-10-28 18:09:08 -07:00
Tianon Gravi
cf86e2bb22
Rename all cases of "docker-init" to "dockerinit" for consistency
2013-10-25 15:13:25 -07:00
Alexander Larsson
d063c8d941
Move ListOps to utils submodule
...
This will be needed for later use in docker-init without a docker
dependency
2013-10-25 15:13:24 -07:00
Michael Crosby
1cbdaebaa1
Add links for container relationships and introspection
2013-10-25 15:13:24 -07:00
Michael Crosby
ff567f8729
Merge pull request #2385 from dotcloud/suppress_even_more_warnings_test
...
Improve tests again, remove warnings and prevent some mount issues
2013-10-25 15:04:56 -07:00
Victor Vieux
a675e249b1
fix workdir, hostname tests and a bunch on mount issue
2013-10-24 16:57:35 -07:00
Jérôme Petazzoni
b9eb5e04ae
Ignore ErrClosedPipe for stdin in Container.Attach.
...
But pass `err` in the error channel anyway; don't ignore it anymore.
2013-10-24 15:04:58 -07:00
Victor Vieux
10e10c9573
fix race condition in docker build with verbose + cleanup hostIntegration debug
2013-10-22 15:01:06 -07:00
Guillaume J. Charmes
3e014aa662
Fix attach race condition, improve unit tests, make sure the container is started before unblocking Start
2013-10-18 16:26:16 -07:00
Guillaume J. Charmes
333bc23f21
Fix issue killing container while sending signal
...
Fix rebase issue
Update docs
2013-10-18 16:19:27 -07:00
Guillaume J. Charmes
4918769b1a
Add -nostdin and -proxy to docker attach, allow arbirary signal to be sent via docker kill api endpoint
...
Allow attach from `docker start`
Add host integration script generation
Update doc with host integration
2013-10-18 16:16:29 -07:00
Guillaume J. Charmes
e9ee860c91
Merge branch 'master' into dm
...
Conflicts:
Dockerfile
buildfile.go
container.go
hack/make/test
runtime_test.go
utils/utils.go
2013-10-18 12:38:29 -07:00
Guillaume J. Charmes
c2175ae736
Switch back some Errorf to Debugf.
2013-10-18 12:29:16 -07:00
Michael Crosby
3ba9893786
Merge pull request #2242 from jpetazzo/remove-spurious-errors-and-errclosedpipe
...
Fix error/debug messages in Container.Attach and recover from ErrClosedPipe
2013-10-16 17:27:23 -07:00
Victor Vieux
e40fd1e3e1
fix panic
2013-10-16 21:39:03 +00:00
Guillaume J. Charmes
ed6ca109bf
Refactor container.Start()
2013-10-16 13:12:56 -07:00
Victor Vieux
664acd2971
Add clean if start fail
2013-10-16 19:48:24 +00:00
Jérôme Petazzoni
fc659b68e4
Fix error/debug messages in Container.Attach and recover from ErrClosedPipe conditions.
2013-10-16 11:35:45 -07:00
Michael Crosby
80bd64245f
Add filesystemtype for containers
...
If no type is specified then assume aufs.
2013-10-15 11:49:13 -07:00
Karl Grzeszczak
ad723bbfe7
Initial steps to fix Issue #936
...
Use utils.Errorf instead of utils.Debugf
2013-10-11 08:04:40 -05:00
Solomon Hykes
1804fcba93
Merged master into device-mapper branch
2013-10-10 12:50:30 -07:00
Victor Vieux
152302e379
go fmt and aufs support removed
2013-09-30 17:35:02 -06:00
Alexander Larsson
b0a9147fd5
runtime test: Ensure all containers are unmounted at nuke()
...
Otherwise we may leave around e.g. devmapper mounts
2013-09-30 17:35:02 -06:00
Alexander Larsson
43a7d3d0e9
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.
2013-09-30 17:35:01 -06:00
Alexander Larsson
429587779a
lxc: Work around lxc-start need for private mounts
...
lxc-start requires / to be mounted private, otherwise the changes
it does inside the container (both mounts and unmounts) will propagate
out to the host.
We work around this by starting up lxc-start in its own namespace where
we set / to rprivate.
Unfortunately go can't really execute any code between clone and exec,
so we can't do this in a nice way. Instead we have a horrible hack that
use the unshare command, the shell and the mount command...
2013-09-30 17:35:01 -06:00
Alexander Larsson
c138801073
Container: Inject into the mount, not the rwPath
...
For device-mapper setups we can't just push the file into the rwPath.
2013-09-30 17:35:01 -06:00
Alexander Larsson
b0626f403b
Implement container.ExportRW() on device-mapper
2013-09-30 17:34:59 -06:00
Alexander Larsson
fda6ff9c27
Make TarFilter more useful
...
There are a few changes:
* Callers can specify if they want recursive behaviour or not
* All file listings to tar are sent on stdin, to handle long lists better
* We can pass in a list of filenames which will be created as empty
files in the tarball
This is exactly what we want for the creation of layer tarballs given
a container fs, a set of files to add and a set of whiteout files to create.
2013-09-30 17:34:59 -06:00
Alexander Larsson
1c5dc26a7c
Implement docker diff for device-mapper
...
To do diffing we just compare file metadata, so this relies
on things like size and mtime/ctime to catch any changes.
Its *possible* to trick this by updating a file without
changing the size and setting back the mtime/ctime, but
that seems pretty unlikely to happen in reality, and lets
us avoid comparing the actual file data.
2013-09-30 17:34:59 -06:00
Alexander Larsson
a9ec1dbc9b
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.
2013-09-30 17:34:59 -06:00
Alexander Larsson
e368c8bb01
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
2013-09-30 17:34:58 -06:00
Victor Vieux
bcce3cbdd1
Merge pull request #1995 from dotcloud/fix_attach_2
...
Fix the attach behavior with -i
2013-09-30 03:29:19 -07:00
Guillaume J. Charmes
537149829a
Fix the attach behavior with -i
2013-09-27 11:10:55 -07:00
Michael Crosby
723de87681
Move run -rm to the cli only
2013-09-26 14:52:37 -07:00
Michael Crosby
db869ecce5
Merge pull request #1589 from unclejack/479-add_rm_support_to_docker_run
...
Add -rm to docker run for removing a container on exit
2013-09-27 11:45:32 -07:00
unclejack
22e7e107ad
automatically remove container via -rm
...
add AutoRemove to HostConfig
add -rm flag to docker run
add TestRunAutoRemove to test -rm
docs: add -rm to commandline/command/run
add hostConfig to container monitor
make monitor destroy the container via -rm
This adds support for automatically removing a container after it
exits. The removal of the container is handled on the server side.
2013-09-27 17:43:12 +03:00
Alexander Larsson
c1c74cb0b1
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.
2013-09-24 14:57:29 +02:00
Victor Vieux
2fafe1efce
Merge pull request #1948 from dotcloud/fix_attach
...
Fix attach issue
2013-09-23 02:15:51 -07:00
Michael Crosby
23cf3c7a33
Merge pull request #1934 from dotcloud/host-permissions
...
Only copy files and change permissions with non bindmount
2013-09-22 09:40:52 -07:00
Guillaume J. Charmes
e97364ecd7
Improve detach unit tests
2013-09-20 13:36:19 -07:00