Commit Graph

12 Commits

Author SHA1 Message Date
018bd0f92c Clean config path of bind mount volume
Signed-off-by: Chun Chen <chenchun.feed@gmail.com>
Upstream-commit: f4acfeebda431239c98e07ed8c0d55422e165d4e
Component: engine
2014-11-19 10:13:10 +08:00
ec75c9da78 volume: stream JSON & Decode
Docker-DCO-1.1-Signed-off-by: Cristian Staretu <cristian.staretu@gmail.com> (github: unclejack)
Upstream-commit: f665be55fe832086202e54449402c1513cf4f195
Component: engine
2014-11-04 16:15:07 +02:00
bad39206ea Mass gofmt
Signed-off-by: Alexandr Morozov <lk4d4@docker.com>
Upstream-commit: ee7dd44c017458c8fe0be8e09569b1238366dca3
Component: engine
2014-10-24 15:11:48 -07:00
2d56e3cbc6 Use logrus everywhere for logging
Fixed #8761

Signed-off-by: Alexandr Morozov <lk4d4@docker.com>
Upstream-commit: 7c62cee51edc91634046b4faa6c6f1841cd53ec1
Component: engine
2014-10-24 15:03:06 -07:00
f69339516b Merge pull request #8665 from cpuguy83/8659_clean_paths_for_volumes
Clean volume paths
Upstream-commit: cf44d6f9cc8f1a84ea6e3c35a9f2d9b232d08d9b
Component: engine
2014-10-21 11:17:03 -04:00
94f641a2fe Make container.Copy support volumes
Fixes #1992

Right now when you `docker cp` a path which is in a volume, the cp
itself works, however you end up getting files that are in the
container's fs rather than the files in the volume (which is not in the
container's fs).
This makes it so when you `docker cp` a path that is in a volume it
follows the volume to the real path on the host.

archive.go has been modified so that when you do `docker cp mydata:/foo
.`, and /foo is the volume, the outputed folder is called "foo" instead
of the volume ID (because we are telling it to tar up
`/var/lib/docker/vfs/dir/<some id>` and not "foo", but the user would be
expecting "foo", not the ID

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: ef98fe0763024abd90bd5a573fec816895ee92e4
Component: engine
2014-10-20 20:23:01 -04:00
13b9038a18 Clean volume paths
Fixes #8659

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 964f9965c75b89f95060c62ba512ed6ceb525992
Component: engine
2014-10-20 19:07:56 -04:00
153b47b46a Restore volume refs after daemon restart
Volume refs were not being restored on daemon restart.
This made it possible to remove a volume being used by other containers
after a daemon restart.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 9acf7c765c7e074f6c75eaf162ca06ecfe40d692
Component: engine
2014-10-08 14:17:27 -04:00
5bef25580f Make volume.Containers private
Also wrap access in mutex.
Makes sure we don't have any pontential for races in accessing this.
It also doesn't really need to be/shouldn't be in the config.json anyway

Docker-DCO-1.1-Signed-off-by: Brian Goff <bgoff@cpuguy83-mbp.home> (github: cpuguy83)
Upstream-commit: c5e728c953e29b8008cdfb8367910e33ba28b99c
Component: engine
2014-10-02 20:46:17 -04:00
70be95d803 Fix potential race in volume creation
Docker-DCO-1.1-Signed-off-by: Brian Goff <cpuguy83@gmail.com> (github: cpuguy83)
Upstream-commit: 8d7c7bd2e3aba3bba72264d477c56444c5dc6350
Component: engine
2014-09-29 14:56:04 -04:00
e55f8da518 Fix #8259 - Can't reuse symlink'd bindmount
volumes.Get was not checking for symlinked paths meanwhile when adding a
new volume it was following the symlink.
So when trying to use a bind-mount that is a symlink, the volume is
added with the correct path, but when another container tries to use the
same volume it got a "Volume exists" error because volumes.Get returned
nil and as such attempted to create a new volume.

Docker-DCO-1.1-Signed-off-by: Brian Goff <cpuguy83@gmail.com> (github: cpuguy83)
Upstream-commit: 882223c0f8a55c2011277aba08f1487a2930c075
Component: engine
2014-09-26 14:36:44 -04:00
1ce355084d Split volumes out from daemon
Docker-DCO-1.1-Signed-off-by: Brian Goff <cpuguy83@gmail.com> (github: cpuguy83)
Upstream-commit: 45407cf00af95b04dd2ff11ce330dd397bf1e095
Component: engine
2014-09-19 17:47:47 -05:00