Browse code

update go import path and libcontainer

Docker-DCO-1.1-Signed-off-by: Victor Vieux <vieux@docker.com> (github: vieux)

Victor Vieux authored on 2014/07/25 07:19:50
Showing 200 changed files
... ...
@@ -193,7 +193,7 @@ Jean-Baptiste Barth <jeanbaptiste.barth@gmail.com>
193 193
 Jean-Baptiste Dalido <jeanbaptiste@appgratis.com>
194 194
 Jeff Lindsay <progrium@gmail.com>
195 195
 Jeremy Grosser <jeremy@synack.me>
196
-Jérôme Petazzoni <jerome.petazzoni@dotcloud.com>
196
+Jérôme Petazzoni <jerome.petazzoni@docker.com>
197 197
 Jesse Dubay <jesse@thefortytwo.net>
198 198
 Jilles Oldenbeuving <ojilles@gmail.com>
199 199
 Jim Alateras <jima@comware.com.au>
... ...
@@ -418,7 +418,7 @@ Tzu-Jung Lee <roylee17@gmail.com>
418 418
 Ulysse Carion <ulyssecarion@gmail.com>
419 419
 unclejack <unclejacksons@gmail.com>
420 420
 vgeta <gopikannan.venugopalsamy@gmail.com>
421
-Victor Coisne <victor.coisne@dotcloud.com>
421
+Victor Coisne <victor.coisne@docker.com>
422 422
 Victor Lyuboslavsky <victor@victoreda.com>
423 423
 Victor Marmol <vmarmol@google.com>
424 424
 Victor Vieux <victor.vieux@docker.com>
... ...
@@ -6,7 +6,7 @@ feels wrong or incomplete.
6 6
 
7 7
 ## Reporting Issues
8 8
 
9
-When reporting [issues](https://github.com/dotcloud/docker/issues) on
9
+When reporting [issues](https://github.com/docker/docker/issues) on
10 10
 GitHub please include your host OS (Ubuntu 12.04, Fedora 19, etc).
11 11
 Please include:
12 12
 
... ...
@@ -53,7 +53,7 @@ else is working on the same thing.
53 53
 ### Create issues...
54 54
 
55 55
 Any significant improvement should be documented as [a GitHub
56
-issue](https://github.com/dotcloud/docker/issues) before anybody
56
+issue](https://github.com/docker/docker/issues) before anybody
57 57
 starts working on it.
58 58
 
59 59
 ### ...but check for existing issues first!
... ...
@@ -180,7 +180,7 @@ One way to automate this, is customize your git `commit.template` by adding
180 180
 a `prepare-commit-msg` hook to your Docker repository:
181 181
 
182 182
 ```
183
-curl -sSL -o .git/hooks/prepare-commit-msg https://raw.githubusercontent.com/dotcloud/docker/master/contrib/prepare-commit-msg.hook && chmod +x .git/hooks/prepare-commit-msg
183
+curl -sSL -o .git/hooks/prepare-commit-msg https://raw.githubusercontent.com/docker/docker/master/contrib/prepare-commit-msg.hook && chmod +x .git/hooks/prepare-commit-msg
184 184
 ```
185 185
 
186 186
 * Note: the above script expects to find your GitHub user name in `git config --get github.user`
... ...
@@ -6,7 +6,7 @@
6 6
 # docker build -t docker .
7 7
 #
8 8
 # # Mount your source in an interactive container for quick testing:
9
-# docker run -v `pwd`:/go/src/github.com/dotcloud/docker --privileged -i -t docker bash
9
+# docker run -v `pwd`:/go/src/github.com/docker/docker --privileged -i -t docker bash
10 10
 #
11 11
 # # Run the test suite:
12 12
 # docker run --privileged docker hack/make.sh test
... ...
@@ -62,7 +62,7 @@ RUN	cd /usr/local/lvm2 && ./configure --enable-static_link && make device-mapper
62 62
 # Install Go
63 63
 RUN	curl -sSL https://go.googlecode.com/files/go1.2.1.src.tar.gz | tar -v -C /usr/local -xz
64 64
 ENV	PATH	/usr/local/go/bin:$PATH
65
-ENV	GOPATH	/go:/go/src/github.com/dotcloud/docker/vendor
65
+ENV	GOPATH	/go:/go/src/github.com/docker/docker/vendor
66 66
 RUN	cd /usr/local/go/src && ./make.bash --no-clean 2>&1
67 67
 
68 68
 # Compile Go for cross compilation
... ...
@@ -94,11 +94,11 @@ RUN groupadd -r docker
94 94
 RUN useradd --create-home --gid docker unprivilegeduser
95 95
 
96 96
 VOLUME	/var/lib/docker
97
-WORKDIR	/go/src/github.com/dotcloud/docker
97
+WORKDIR	/go/src/github.com/docker/docker
98 98
 ENV	DOCKER_BUILDTAGS	apparmor selinux
99 99
 
100 100
 # Wrap all commands in the "docker-in-docker" script to allow nested containers
101 101
 ENTRYPOINT	["hack/dind"]
102 102
 
103 103
 # Upload docker source
104
-COPY	.	/go/src/github.com/dotcloud/docker
104
+COPY	.	/go/src/github.com/docker/docker
... ...
@@ -10,7 +10,7 @@ GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD 2>/dev/null)
10 10
 GITCOMMIT := $(shell git rev-parse --short HEAD 2>/dev/null)
11 11
 DOCKER_IMAGE := docker$(if $(GIT_BRANCH),:$(GIT_BRANCH))
12 12
 DOCKER_DOCS_IMAGE := docker-docs$(if $(GIT_BRANCH),:$(GIT_BRANCH))
13
-DOCKER_MOUNT := $(if $(BINDDIR),-v "$(CURDIR)/$(BINDDIR):/go/src/github.com/dotcloud/docker/$(BINDDIR)")
13
+DOCKER_MOUNT := $(if $(BINDDIR),-v "$(CURDIR)/$(BINDDIR):/go/src/github.com/docker/docker/$(BINDDIR)")
14 14
 
15 15
 DOCKER_RUN_DOCKER := docker run --rm -it --privileged -e TESTFLAGS -e TESTDIRS -e DOCKER_GRAPHDRIVER -e DOCKER_EXECDRIVER $(DOCKER_MOUNT) "$(DOCKER_IMAGE)"
16 16
 # to allow `make DOCSDIR=docs docs-shell`
... ...
@@ -10,9 +10,9 @@ import (
10 10
 	"strings"
11 11
 	"text/template"
12 12
 
13
-	flag "github.com/dotcloud/docker/pkg/mflag"
14
-	"github.com/dotcloud/docker/pkg/term"
15
-	"github.com/dotcloud/docker/registry"
13
+	flag "github.com/docker/docker/pkg/mflag"
14
+	"github.com/docker/docker/pkg/term"
15
+	"github.com/docker/docker/registry"
16 16
 )
17 17
 
18 18
 var funcMap = template.FuncMap{
... ...
@@ -22,19 +22,19 @@ import (
22 22
 	"text/template"
23 23
 	"time"
24 24
 
25
-	"github.com/dotcloud/docker/api"
26
-	"github.com/dotcloud/docker/archive"
27
-	"github.com/dotcloud/docker/dockerversion"
28
-	"github.com/dotcloud/docker/engine"
29
-	"github.com/dotcloud/docker/nat"
30
-	"github.com/dotcloud/docker/opts"
31
-	"github.com/dotcloud/docker/pkg/signal"
32
-	"github.com/dotcloud/docker/pkg/term"
33
-	"github.com/dotcloud/docker/pkg/units"
34
-	"github.com/dotcloud/docker/registry"
35
-	"github.com/dotcloud/docker/runconfig"
36
-	"github.com/dotcloud/docker/utils"
37
-	"github.com/dotcloud/docker/utils/filters"
25
+	"github.com/docker/docker/api"
26
+	"github.com/docker/docker/archive"
27
+	"github.com/docker/docker/dockerversion"
28
+	"github.com/docker/docker/engine"
29
+	"github.com/docker/docker/nat"
30
+	"github.com/docker/docker/opts"
31
+	"github.com/docker/docker/pkg/signal"
32
+	"github.com/docker/docker/pkg/term"
33
+	"github.com/docker/docker/pkg/units"
34
+	"github.com/docker/docker/registry"
35
+	"github.com/docker/docker/runconfig"
36
+	"github.com/docker/docker/utils"
37
+	"github.com/docker/docker/utils/filters"
38 38
 )
39 39
 
40 40
 const (
... ...
@@ -11,10 +11,10 @@ import (
11 11
 	"runtime"
12 12
 	"strings"
13 13
 
14
-	"github.com/dotcloud/docker/api"
15
-	"github.com/dotcloud/docker/dockerversion"
16
-	"github.com/dotcloud/docker/pkg/term"
17
-	"github.com/dotcloud/docker/utils"
14
+	"github.com/docker/docker/api"
15
+	"github.com/docker/docker/dockerversion"
16
+	"github.com/docker/docker/pkg/term"
17
+	"github.com/docker/docker/utils"
18 18
 )
19 19
 
20 20
 func (cli *DockerCli) dial() (net.Conn, error) {
... ...
@@ -17,12 +17,12 @@ import (
17 17
 	"strings"
18 18
 	"syscall"
19 19
 
20
-	"github.com/dotcloud/docker/api"
21
-	"github.com/dotcloud/docker/dockerversion"
22
-	"github.com/dotcloud/docker/engine"
23
-	"github.com/dotcloud/docker/pkg/term"
24
-	"github.com/dotcloud/docker/registry"
25
-	"github.com/dotcloud/docker/utils"
20
+	"github.com/docker/docker/api"
21
+	"github.com/docker/docker/dockerversion"
22
+	"github.com/docker/docker/engine"
23
+	"github.com/docker/docker/pkg/term"
24
+	"github.com/docker/docker/registry"
25
+	"github.com/docker/docker/utils"
26 26
 )
27 27
 
28 28
 var (
... ...
@@ -5,9 +5,9 @@ import (
5 5
 	"mime"
6 6
 	"strings"
7 7
 
8
-	"github.com/dotcloud/docker/engine"
9
-	"github.com/dotcloud/docker/pkg/version"
10
-	"github.com/dotcloud/docker/utils"
8
+	"github.com/docker/docker/engine"
9
+	"github.com/docker/docker/pkg/version"
10
+	"github.com/docker/docker/utils"
11 11
 )
12 12
 
13 13
 const (
... ...
@@ -22,14 +22,14 @@ import (
22 22
 
23 23
 	"code.google.com/p/go.net/websocket"
24 24
 
25
-	"github.com/dotcloud/docker/api"
26
-	"github.com/dotcloud/docker/engine"
27
-	"github.com/dotcloud/docker/pkg/listenbuffer"
28
-	"github.com/dotcloud/docker/pkg/systemd"
29
-	"github.com/dotcloud/docker/pkg/user"
30
-	"github.com/dotcloud/docker/pkg/version"
31
-	"github.com/dotcloud/docker/registry"
32
-	"github.com/dotcloud/docker/utils"
25
+	"github.com/docker/docker/api"
26
+	"github.com/docker/docker/engine"
27
+	"github.com/docker/docker/pkg/listenbuffer"
28
+	"github.com/docker/docker/pkg/systemd"
29
+	"github.com/docker/docker/pkg/user"
30
+	"github.com/docker/docker/pkg/version"
31
+	"github.com/docker/docker/registry"
32
+	"github.com/docker/docker/utils"
33 33
 	"github.com/gorilla/mux"
34 34
 )
35 35
 
... ...
@@ -11,9 +11,9 @@ import (
11 11
 	"strings"
12 12
 	"testing"
13 13
 
14
-	"github.com/dotcloud/docker/api"
15
-	"github.com/dotcloud/docker/engine"
16
-	"github.com/dotcloud/docker/pkg/version"
14
+	"github.com/docker/docker/api"
15
+	"github.com/docker/docker/engine"
16
+	"github.com/docker/docker/pkg/version"
17 17
 )
18 18
 
19 19
 func TestGetBoolParam(t *testing.T) {
... ...
@@ -16,9 +16,9 @@ import (
16 16
 	"strings"
17 17
 	"syscall"
18 18
 
19
-	"github.com/dotcloud/docker/pkg/system"
20
-	"github.com/dotcloud/docker/utils"
21
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
19
+	"github.com/docker/docker/pkg/system"
20
+	"github.com/docker/docker/utils"
21
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
22 22
 )
23 23
 
24 24
 type (
... ...
@@ -11,7 +11,7 @@ import (
11 11
 	"testing"
12 12
 	"time"
13 13
 
14
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
14
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
15 15
 )
16 16
 
17 17
 func TestCmdStreamLargeStderr(t *testing.T) {
... ...
@@ -11,9 +11,9 @@ import (
11 11
 	"syscall"
12 12
 	"time"
13 13
 
14
-	"github.com/dotcloud/docker/pkg/system"
15
-	"github.com/dotcloud/docker/utils"
16
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
14
+	"github.com/docker/docker/pkg/system"
15
+	"github.com/docker/docker/utils"
16
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
17 17
 )
18 18
 
19 19
 type ChangeType int
... ...
@@ -10,7 +10,7 @@ import (
10 10
 	"strings"
11 11
 	"syscall"
12 12
 
13
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
13
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
14 14
 )
15 15
 
16 16
 // Linux device nodes are a bit weird due to backwards compat with 16 bit device nodes.
... ...
@@ -2,7 +2,7 @@ package archive
2 2
 
3 3
 import (
4 4
 	"bytes"
5
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
5
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
6 6
 	"io/ioutil"
7 7
 )
8 8
 
... ...
@@ -3,14 +3,14 @@ package builtins
3 3
 import (
4 4
 	"runtime"
5 5
 
6
-	"github.com/dotcloud/docker/api"
7
-	apiserver "github.com/dotcloud/docker/api/server"
8
-	"github.com/dotcloud/docker/daemon/networkdriver/bridge"
9
-	"github.com/dotcloud/docker/dockerversion"
10
-	"github.com/dotcloud/docker/engine"
11
-	"github.com/dotcloud/docker/registry"
12
-	"github.com/dotcloud/docker/server"
13
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/api"
7
+	apiserver "github.com/docker/docker/api/server"
8
+	"github.com/docker/docker/daemon/networkdriver/bridge"
9
+	"github.com/docker/docker/dockerversion"
10
+	"github.com/docker/docker/engine"
11
+	"github.com/docker/docker/registry"
12
+	"github.com/docker/docker/server"
13
+	"github.com/docker/docker/utils"
14 14
 )
15 15
 
16 16
 func Register(eng *engine.Engine) error {
... ...
@@ -3,7 +3,7 @@ package main
3 3
 import (
4 4
 	"flag"
5 5
 	"fmt"
6
-	"github.com/dotcloud/docker/daemon/graphdriver/devmapper"
6
+	"github.com/docker/docker/daemon/graphdriver/devmapper"
7 7
 	"os"
8 8
 	"path"
9 9
 	"sort"
... ...
@@ -19,7 +19,7 @@ ENV		GOROOT	  /goroot
19 19
 ENV		GOPATH	  /go
20 20
 ENV		PATH	  $GOROOT/bin:$PATH
21 21
 
22
-RUN		go get github.com/dotcloud/docker && cd /go/src/github.com/dotcloud/docker && git checkout v0.6.3
22
+RUN		go get github.com/docker/docker && cd /go/src/github.com/docker/docker && git checkout v0.6.3
23 23
 ADD		manager.go	/manager/
24 24
 RUN		cd /manager && go build -o /usr/bin/manager
25 25
 
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"encoding/json"
6 6
 	"flag"
7 7
 	"fmt"
8
-	"github.com/dotcloud/docker"
8
+	"github.com/docker/docker"
9 9
 	"os"
10 10
 	"strings"
11 11
 	"text/template"
... ...
@@ -37,7 +37,7 @@ if [ ! -e "manager/$script" ]; then
37 37
 	exit 1
38 38
 fi
39 39
 
40
-# TODO https://github.com/dotcloud/docker/issues/734 (docker inspect formatting)
40
+# TODO https://github.com/docker/docker/issues/734 (docker inspect formatting)
41 41
 #if command -v docker > /dev/null 2>&1; then
42 42
 #	image="$(docker inspect -f '{{.Image}}' "$cid")"
43 43
 #	if [ "$image" ]; then
... ...
@@ -50,7 +50,7 @@ start() {
50 50
         pid=$!
51 51
         touch $lockfile
52 52
         # wait up to 10 seconds for the pidfile to exist.  see
53
-        # https://github.com/dotcloud/docker/issues/5359
53
+        # https://github.com/docker/docker/issues/5359
54 54
         tries=0
55 55
         while [ ! -f $pidfile -a $tries -lt 10 ]; do
56 56
             sleep 1
... ...
@@ -144,7 +144,7 @@ if [ -z "$strictDebootstrap" ]; then
144 144
 	#  initctl (for some pesky upstart scripts)
145 145
 	sudo chroot . dpkg-divert --local --rename --add /sbin/initctl
146 146
 	sudo ln -sf /bin/true sbin/initctl
147
-	# see https://github.com/dotcloud/docker/issues/446#issuecomment-16953173
147
+	# see https://github.com/docker/docker/issues/446#issuecomment-16953173
148 148
 	
149 149
 	# shrink the image, since apt makes us fat (wheezy: ~157.5MB vs ~120MB)
150 150
 	sudo chroot . apt-get clean
... ...
@@ -83,7 +83,7 @@ if [ -d "$rootfsDir/etc/apt/apt.conf.d" ]; then
83 83
 		Dir::Cache::srcpkgcache "";
84 84
 
85 85
 		# Note that we do realize this isn't the ideal way to do this, and are always
86
-		# open to better suggestions (https://github.com/dotcloud/docker/issues).
86
+		# open to better suggestions (https://github.com/docker/docker/issues).
87 87
 	EOF
88 88
 
89 89
 	# remove apt-cache translations for fast "apt-get update"
... ...
@@ -1,6 +1,6 @@
1 1
 #!/bin/sh
2 2
 #       Auto sign all commits to allow them to be used by the Docker project.
3
-#       see https://github.com/dotcloud/docker/blob/master/CONTRIBUTING.md#sign-your-work
3
+#       see https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
4 4
 #
5 5
 GH_USER=$(git config --get github.user)
6 6
 SOB=$(git var GIT_AUTHOR_IDENT | sed -n "s/^\(.*>\).*$/Docker-DCO-1.1-Signed-off-by: \1 \(github: $GH_USER\)/p")
... ...
@@ -3,7 +3,7 @@ package daemon
3 3
 import (
4 4
 	"io"
5 5
 
6
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/utils"
7 7
 )
8 8
 
9 9
 func (daemon *Daemon) Attach(container *Container, stdin io.ReadCloser, stdinCloser io.Closer, stdout io.Writer, stderr io.Writer) chan error {
... ...
@@ -17,19 +17,19 @@ import (
17 17
 
18 18
 	"github.com/docker/libcontainer/devices"
19 19
 	"github.com/docker/libcontainer/label"
20
-	"github.com/dotcloud/docker/archive"
21
-	"github.com/dotcloud/docker/daemon/execdriver"
22
-	"github.com/dotcloud/docker/daemon/graphdriver"
23
-	"github.com/dotcloud/docker/engine"
24
-	"github.com/dotcloud/docker/image"
25
-	"github.com/dotcloud/docker/links"
26
-	"github.com/dotcloud/docker/nat"
27
-	"github.com/dotcloud/docker/pkg/networkfs/etchosts"
28
-	"github.com/dotcloud/docker/pkg/networkfs/resolvconf"
29
-	"github.com/dotcloud/docker/pkg/symlink"
30
-	"github.com/dotcloud/docker/runconfig"
31
-	"github.com/dotcloud/docker/utils"
32
-	"github.com/dotcloud/docker/utils/broadcastwriter"
20
+	"github.com/docker/docker/archive"
21
+	"github.com/docker/docker/daemon/execdriver"
22
+	"github.com/docker/docker/daemon/graphdriver"
23
+	"github.com/docker/docker/engine"
24
+	"github.com/docker/docker/image"
25
+	"github.com/docker/docker/links"
26
+	"github.com/docker/docker/nat"
27
+	"github.com/docker/docker/pkg/networkfs/etchosts"
28
+	"github.com/docker/docker/pkg/networkfs/resolvconf"
29
+	"github.com/docker/docker/pkg/symlink"
30
+	"github.com/docker/docker/runconfig"
31
+	"github.com/docker/docker/utils"
32
+	"github.com/docker/docker/utils/broadcastwriter"
33 33
 )
34 34
 
35 35
 const DefaultPathEnv = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
... ...
@@ -1,7 +1,7 @@
1 1
 package daemon
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/nat"
4
+	"github.com/docker/docker/nat"
5 5
 	"testing"
6 6
 )
7 7
 
... ...
@@ -13,27 +13,27 @@ import (
13 13
 	"time"
14 14
 
15 15
 	"github.com/docker/libcontainer/label"
16
-	"github.com/dotcloud/docker/archive"
17
-	"github.com/dotcloud/docker/daemon/execdriver"
18
-	"github.com/dotcloud/docker/daemon/execdriver/execdrivers"
19
-	"github.com/dotcloud/docker/daemon/execdriver/lxc"
20
-	"github.com/dotcloud/docker/daemon/graphdriver"
21
-	_ "github.com/dotcloud/docker/daemon/graphdriver/vfs"
22
-	_ "github.com/dotcloud/docker/daemon/networkdriver/bridge"
23
-	"github.com/dotcloud/docker/daemon/networkdriver/portallocator"
24
-	"github.com/dotcloud/docker/daemonconfig"
25
-	"github.com/dotcloud/docker/dockerversion"
26
-	"github.com/dotcloud/docker/engine"
27
-	"github.com/dotcloud/docker/graph"
28
-	"github.com/dotcloud/docker/image"
29
-	"github.com/dotcloud/docker/pkg/graphdb"
30
-	"github.com/dotcloud/docker/pkg/namesgenerator"
31
-	"github.com/dotcloud/docker/pkg/networkfs/resolvconf"
32
-	"github.com/dotcloud/docker/pkg/sysinfo"
33
-	"github.com/dotcloud/docker/pkg/truncindex"
34
-	"github.com/dotcloud/docker/runconfig"
35
-	"github.com/dotcloud/docker/utils"
36
-	"github.com/dotcloud/docker/utils/broadcastwriter"
16
+	"github.com/docker/docker/archive"
17
+	"github.com/docker/docker/daemon/execdriver"
18
+	"github.com/docker/docker/daemon/execdriver/execdrivers"
19
+	"github.com/docker/docker/daemon/execdriver/lxc"
20
+	"github.com/docker/docker/daemon/graphdriver"
21
+	_ "github.com/docker/docker/daemon/graphdriver/vfs"
22
+	_ "github.com/docker/docker/daemon/networkdriver/bridge"
23
+	"github.com/docker/docker/daemon/networkdriver/portallocator"
24
+	"github.com/docker/docker/daemonconfig"
25
+	"github.com/docker/docker/dockerversion"
26
+	"github.com/docker/docker/engine"
27
+	"github.com/docker/docker/graph"
28
+	"github.com/docker/docker/image"
29
+	"github.com/docker/docker/pkg/graphdb"
30
+	"github.com/docker/docker/pkg/namesgenerator"
31
+	"github.com/docker/docker/pkg/networkfs/resolvconf"
32
+	"github.com/docker/docker/pkg/sysinfo"
33
+	"github.com/docker/docker/pkg/truncindex"
34
+	"github.com/docker/docker/runconfig"
35
+	"github.com/docker/docker/utils"
36
+	"github.com/docker/docker/utils/broadcastwriter"
37 37
 )
38 38
 
39 39
 // Set the max depth to the aufs default that most
... ...
@@ -3,10 +3,10 @@
3 3
 package daemon
4 4
 
5 5
 import (
6
-	"github.com/dotcloud/docker/daemon/graphdriver"
7
-	"github.com/dotcloud/docker/daemon/graphdriver/aufs"
8
-	"github.com/dotcloud/docker/graph"
9
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/daemon/graphdriver"
7
+	"github.com/docker/docker/daemon/graphdriver/aufs"
8
+	"github.com/docker/docker/graph"
9
+	"github.com/docker/docker/utils"
10 10
 )
11 11
 
12 12
 // Given the graphdriver ad, if it is aufs, then migrate it.
... ...
@@ -3,5 +3,5 @@
3 3
 package daemon
4 4
 
5 5
 import (
6
-	_ "github.com/dotcloud/docker/daemon/graphdriver/btrfs"
6
+	_ "github.com/docker/docker/daemon/graphdriver/btrfs"
7 7
 )
... ...
@@ -3,5 +3,5 @@
3 3
 package daemon
4 4
 
5 5
 import (
6
-	_ "github.com/dotcloud/docker/daemon/graphdriver/devmapper"
6
+	_ "github.com/docker/docker/daemon/graphdriver/devmapper"
7 7
 )
... ...
@@ -3,7 +3,7 @@
3 3
 package daemon
4 4
 
5 5
 import (
6
-	"github.com/dotcloud/docker/daemon/graphdriver"
6
+	"github.com/docker/docker/daemon/graphdriver"
7 7
 )
8 8
 
9 9
 func migrateIfAufs(driver graphdriver.Driver, root string) error {
... ...
@@ -2,10 +2,10 @@ package execdrivers
2 2
 
3 3
 import (
4 4
 	"fmt"
5
-	"github.com/dotcloud/docker/daemon/execdriver"
6
-	"github.com/dotcloud/docker/daemon/execdriver/lxc"
7
-	"github.com/dotcloud/docker/daemon/execdriver/native"
8
-	"github.com/dotcloud/docker/pkg/sysinfo"
5
+	"github.com/docker/docker/daemon/execdriver"
6
+	"github.com/docker/docker/daemon/execdriver/lxc"
7
+	"github.com/docker/docker/daemon/execdriver/native"
8
+	"github.com/docker/docker/pkg/sysinfo"
9 9
 	"path"
10 10
 )
11 11
 
... ...
@@ -19,9 +19,9 @@ import (
19 19
 	"github.com/docker/libcontainer/cgroups"
20 20
 	"github.com/docker/libcontainer/label"
21 21
 	"github.com/docker/libcontainer/mount/nodes"
22
-	"github.com/dotcloud/docker/daemon/execdriver"
23
-	"github.com/dotcloud/docker/pkg/term"
24
-	"github.com/dotcloud/docker/utils"
22
+	"github.com/docker/docker/daemon/execdriver"
23
+	"github.com/docker/docker/pkg/term"
24
+	"github.com/docker/docker/utils"
25 25
 	"github.com/kr/pty"
26 26
 )
27 27
 
... ...
@@ -10,7 +10,7 @@ import (
10 10
 	"syscall"
11 11
 
12 12
 	"github.com/docker/libcontainer/netlink"
13
-	"github.com/dotcloud/docker/daemon/execdriver"
13
+	"github.com/docker/docker/daemon/execdriver"
14 14
 )
15 15
 
16 16
 // Clear environment pollution introduced by lxc-start
... ...
@@ -10,9 +10,9 @@ import (
10 10
 	"github.com/docker/libcontainer/namespaces"
11 11
 	"github.com/docker/libcontainer/security/capabilities"
12 12
 	"github.com/docker/libcontainer/utils"
13
-	"github.com/dotcloud/docker/daemon/execdriver"
14
-	"github.com/dotcloud/docker/daemon/execdriver/native/template"
15
-	"github.com/dotcloud/docker/pkg/system"
13
+	"github.com/docker/docker/daemon/execdriver"
14
+	"github.com/docker/docker/daemon/execdriver/native/template"
15
+	"github.com/docker/docker/pkg/system"
16 16
 )
17 17
 
18 18
 func setHostname(hostname string) error {
... ...
@@ -2,7 +2,7 @@
2 2
 
3 3
 package lxc
4 4
 
5
-import "github.com/dotcloud/docker/daemon/execdriver"
5
+import "github.com/docker/docker/daemon/execdriver"
6 6
 
7 7
 func setHostname(hostname string) error {
8 8
 	panic("Not supported on darwin")
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"text/template"
6 6
 
7 7
 	"github.com/docker/libcontainer/label"
8
-	"github.com/dotcloud/docker/daemon/execdriver"
8
+	"github.com/docker/docker/daemon/execdriver"
9 9
 )
10 10
 
11 11
 const LxcTemplate = `
... ...
@@ -14,7 +14,7 @@ import (
14 14
 	"time"
15 15
 
16 16
 	"github.com/docker/libcontainer/devices"
17
-	"github.com/dotcloud/docker/daemon/execdriver"
17
+	"github.com/docker/docker/daemon/execdriver"
18 18
 )
19 19
 
20 20
 func TestLXCConfig(t *testing.T) {
... ...
@@ -8,7 +8,7 @@ import (
8 8
 	"strings"
9 9
 
10 10
 	"github.com/docker/libcontainer"
11
-	"github.com/dotcloud/docker/pkg/units"
11
+	"github.com/docker/docker/pkg/units"
12 12
 )
13 13
 
14 14
 type Action func(*libcontainer.Config, interface{}, string) error
... ...
@@ -4,7 +4,7 @@ import (
4 4
 	"testing"
5 5
 
6 6
 	"github.com/docker/libcontainer/security/capabilities"
7
-	"github.com/dotcloud/docker/daemon/execdriver/native/template"
7
+	"github.com/docker/docker/daemon/execdriver/native/template"
8 8
 )
9 9
 
10 10
 // Checks whether the expected capability is specified in the capabilities.
... ...
@@ -13,9 +13,9 @@ import (
13 13
 	"github.com/docker/libcontainer/devices"
14 14
 	"github.com/docker/libcontainer/mount"
15 15
 	"github.com/docker/libcontainer/security/capabilities"
16
-	"github.com/dotcloud/docker/daemon/execdriver"
17
-	"github.com/dotcloud/docker/daemon/execdriver/native/configuration"
18
-	"github.com/dotcloud/docker/daemon/execdriver/native/template"
16
+	"github.com/docker/docker/daemon/execdriver"
17
+	"github.com/docker/docker/daemon/execdriver/native/configuration"
18
+	"github.com/docker/docker/daemon/execdriver/native/template"
19 19
 )
20 20
 
21 21
 // createContainer populates and configures the container type with the
... ...
@@ -20,9 +20,9 @@ import (
20 20
 	"github.com/docker/libcontainer/cgroups/systemd"
21 21
 	"github.com/docker/libcontainer/namespaces"
22 22
 	"github.com/docker/libcontainer/syncpipe"
23
-	"github.com/dotcloud/docker/daemon/execdriver"
24
-	"github.com/dotcloud/docker/pkg/system"
25
-	"github.com/dotcloud/docker/pkg/term"
23
+	"github.com/docker/docker/daemon/execdriver"
24
+	"github.com/docker/docker/pkg/system"
25
+	"github.com/docker/docker/pkg/term"
26 26
 )
27 27
 
28 28
 const (
... ...
@@ -5,7 +5,7 @@ package native
5 5
 import (
6 6
 	"fmt"
7 7
 
8
-	"github.com/dotcloud/docker/daemon/execdriver"
8
+	"github.com/docker/docker/daemon/execdriver"
9 9
 )
10 10
 
11 11
 func NewDriver(root, initPath string) (execdriver.Driver, error) {
... ...
@@ -5,7 +5,7 @@ package native
5 5
 import (
6 6
 	"fmt"
7 7
 
8
-	"github.com/dotcloud/docker/daemon/execdriver"
8
+	"github.com/docker/docker/daemon/execdriver"
9 9
 )
10 10
 
11 11
 func NewDriver(root, initPath string) (execdriver.Driver, error) {
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"strings"
6 6
 
7 7
 	"github.com/docker/libcontainer/security/capabilities"
8
-	"github.com/dotcloud/docker/utils"
8
+	"github.com/docker/docker/utils"
9 9
 )
10 10
 
11 11
 func TweakCapabilities(basics, adds, drops []string) ([]string, error) {
... ...
@@ -31,10 +31,10 @@ import (
31 31
 	"syscall"
32 32
 
33 33
 	"github.com/docker/libcontainer/label"
34
-	"github.com/dotcloud/docker/archive"
35
-	"github.com/dotcloud/docker/daemon/graphdriver"
36
-	mountpk "github.com/dotcloud/docker/pkg/mount"
37
-	"github.com/dotcloud/docker/utils"
34
+	"github.com/docker/docker/archive"
35
+	"github.com/docker/docker/daemon/graphdriver"
36
+	mountpk "github.com/docker/docker/pkg/mount"
37
+	"github.com/docker/docker/utils"
38 38
 )
39 39
 
40 40
 var (
... ...
@@ -4,8 +4,8 @@ import (
4 4
 	"crypto/sha256"
5 5
 	"encoding/hex"
6 6
 	"fmt"
7
-	"github.com/dotcloud/docker/archive"
8
-	"github.com/dotcloud/docker/daemon/graphdriver"
7
+	"github.com/docker/docker/archive"
8
+	"github.com/docker/docker/daemon/graphdriver"
9 9
 	"io/ioutil"
10 10
 	"os"
11 11
 	"path"
... ...
@@ -1,7 +1,7 @@
1 1
 package aufs
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/utils"
4
+	"github.com/docker/docker/utils"
5 5
 	"os/exec"
6 6
 	"syscall"
7 7
 )
... ...
@@ -16,8 +16,8 @@ import (
16 16
 	"syscall"
17 17
 	"unsafe"
18 18
 
19
-	"github.com/dotcloud/docker/daemon/graphdriver"
20
-	"github.com/dotcloud/docker/pkg/mount"
19
+	"github.com/docker/docker/daemon/graphdriver"
20
+	"github.com/docker/docker/pkg/mount"
21 21
 )
22 22
 
23 23
 func init() {
... ...
@@ -1,7 +1,7 @@
1 1
 package btrfs
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/daemon/graphdriver/graphtest"
4
+	"github.com/docker/docker/daemon/graphdriver/graphtest"
5 5
 	"testing"
6 6
 )
7 7
 
... ...
@@ -7,7 +7,7 @@ import (
7 7
 	"os"
8 8
 	"syscall"
9 9
 
10
-	"github.com/dotcloud/docker/utils"
10
+	"github.com/docker/docker/utils"
11 11
 )
12 12
 
13 13
 func stringToLoopName(src string) [LoNameSize]uint8 {
... ...
@@ -19,9 +19,9 @@ import (
19 19
 	"time"
20 20
 
21 21
 	"github.com/docker/libcontainer/label"
22
-	"github.com/dotcloud/docker/daemon/graphdriver"
23
-	"github.com/dotcloud/docker/pkg/units"
24
-	"github.com/dotcloud/docker/utils"
22
+	"github.com/docker/docker/daemon/graphdriver"
23
+	"github.com/docker/docker/pkg/units"
24
+	"github.com/docker/docker/utils"
25 25
 )
26 26
 
27 27
 var (
... ...
@@ -9,7 +9,7 @@ import (
9 9
 	"runtime"
10 10
 	"syscall"
11 11
 
12
-	"github.com/dotcloud/docker/utils"
12
+	"github.com/docker/docker/utils"
13 13
 )
14 14
 
15 15
 type DevmapperLogger interface {
... ...
@@ -3,7 +3,7 @@
3 3
 package devmapper
4 4
 
5 5
 import (
6
-	"github.com/dotcloud/docker/daemon/graphdriver/graphtest"
6
+	"github.com/docker/docker/daemon/graphdriver/graphtest"
7 7
 	"testing"
8 8
 )
9 9
 
... ...
@@ -8,9 +8,9 @@ import (
8 8
 	"os"
9 9
 	"path"
10 10
 
11
-	"github.com/dotcloud/docker/daemon/graphdriver"
12
-	"github.com/dotcloud/docker/pkg/mount"
13
-	"github.com/dotcloud/docker/utils"
11
+	"github.com/docker/docker/daemon/graphdriver"
12
+	"github.com/docker/docker/pkg/mount"
13
+	"github.com/docker/docker/utils"
14 14
 )
15 15
 
16 16
 func init() {
... ...
@@ -6,8 +6,8 @@ import (
6 6
 	"os"
7 7
 	"path"
8 8
 
9
-	"github.com/dotcloud/docker/archive"
10
-	"github.com/dotcloud/docker/pkg/mount"
9
+	"github.com/docker/docker/archive"
10
+	"github.com/docker/docker/pkg/mount"
11 11
 )
12 12
 
13 13
 type FsMagic uint64
... ...
@@ -7,7 +7,7 @@ import (
7 7
 	"syscall"
8 8
 	"testing"
9 9
 
10
-	"github.com/dotcloud/docker/daemon/graphdriver"
10
+	"github.com/docker/docker/daemon/graphdriver"
11 11
 )
12 12
 
13 13
 var (
... ...
@@ -3,7 +3,7 @@ package vfs
3 3
 import (
4 4
 	"bytes"
5 5
 	"fmt"
6
-	"github.com/dotcloud/docker/daemon/graphdriver"
6
+	"github.com/docker/docker/daemon/graphdriver"
7 7
 	"os"
8 8
 	"os/exec"
9 9
 	"path"
... ...
@@ -1,7 +1,7 @@
1 1
 package vfs
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/daemon/graphdriver/graphtest"
4
+	"github.com/docker/docker/daemon/graphdriver/graphtest"
5 5
 	"testing"
6 6
 )
7 7
 
... ...
@@ -4,8 +4,8 @@ import (
4 4
 	"encoding/json"
5 5
 	"fmt"
6 6
 
7
-	"github.com/dotcloud/docker/engine"
8
-	"github.com/dotcloud/docker/runconfig"
7
+	"github.com/docker/docker/engine"
8
+	"github.com/docker/docker/runconfig"
9 9
 )
10 10
 
11 11
 func (daemon *Daemon) ContainerInspect(job *engine.Job) engine.Status {
... ...
@@ -1,8 +1,8 @@
1 1
 package daemon
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/engine"
5
-	"github.com/dotcloud/docker/nat"
4
+	"github.com/docker/docker/engine"
5
+	"github.com/docker/docker/nat"
6 6
 )
7 7
 
8 8
 // FIXME: move deprecated port stuff to nat to clean up the core.
... ...
@@ -9,14 +9,14 @@ import (
9 9
 	"sync"
10 10
 
11 11
 	"github.com/docker/libcontainer/netlink"
12
-	"github.com/dotcloud/docker/daemon/networkdriver"
13
-	"github.com/dotcloud/docker/daemon/networkdriver/ipallocator"
14
-	"github.com/dotcloud/docker/daemon/networkdriver/portallocator"
15
-	"github.com/dotcloud/docker/daemon/networkdriver/portmapper"
16
-	"github.com/dotcloud/docker/engine"
17
-	"github.com/dotcloud/docker/pkg/iptables"
18
-	"github.com/dotcloud/docker/pkg/networkfs/resolvconf"
19
-	"github.com/dotcloud/docker/utils"
12
+	"github.com/docker/docker/daemon/networkdriver"
13
+	"github.com/docker/docker/daemon/networkdriver/ipallocator"
14
+	"github.com/docker/docker/daemon/networkdriver/portallocator"
15
+	"github.com/docker/docker/daemon/networkdriver/portmapper"
16
+	"github.com/docker/docker/engine"
17
+	"github.com/docker/docker/pkg/iptables"
18
+	"github.com/docker/docker/pkg/networkfs/resolvconf"
19
+	"github.com/docker/docker/utils"
20 20
 )
21 21
 
22 22
 const (
... ...
@@ -158,7 +158,7 @@ func InitDriver(job *engine.Job) engine.Status {
158 158
 
159 159
 	bridgeNetwork = network
160 160
 
161
-	// https://github.com/dotcloud/docker/issues/2768
161
+	// https://github.com/docker/docker/issues/2768
162 162
 	job.Eng.Hack_SetGlobalVar("httpapi.bridgeIP", bridgeNetwork.IP)
163 163
 
164 164
 	for name, f := range map[string]engine.Handler{
... ...
@@ -6,7 +6,7 @@ import (
6 6
 	"strconv"
7 7
 	"testing"
8 8
 
9
-	"github.com/dotcloud/docker/engine"
9
+	"github.com/docker/docker/engine"
10 10
 )
11 11
 
12 12
 func findFreePort(t *testing.T) int {
... ...
@@ -3,7 +3,7 @@ package ipallocator
3 3
 import (
4 4
 	"encoding/binary"
5 5
 	"errors"
6
-	"github.com/dotcloud/docker/daemon/networkdriver"
6
+	"github.com/docker/docker/daemon/networkdriver"
7 7
 	"net"
8 8
 	"sync"
9 9
 )
... ...
@@ -6,9 +6,9 @@ import (
6 6
 	"net"
7 7
 	"sync"
8 8
 
9
-	"github.com/dotcloud/docker/daemon/networkdriver/portallocator"
10
-	"github.com/dotcloud/docker/pkg/iptables"
11
-	"github.com/dotcloud/docker/pkg/proxy"
9
+	"github.com/docker/docker/daemon/networkdriver/portallocator"
10
+	"github.com/docker/docker/pkg/iptables"
11
+	"github.com/docker/docker/pkg/proxy"
12 12
 )
13 13
 
14 14
 type mapping struct {
... ...
@@ -1,9 +1,9 @@
1 1
 package portmapper
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/daemon/networkdriver/portallocator"
5
-	"github.com/dotcloud/docker/pkg/iptables"
6
-	"github.com/dotcloud/docker/pkg/proxy"
4
+	"github.com/docker/docker/daemon/networkdriver/portallocator"
5
+	"github.com/docker/docker/pkg/iptables"
6
+	"github.com/docker/docker/pkg/proxy"
7 7
 	"net"
8 8
 	"testing"
9 9
 )
... ...
@@ -1,7 +1,7 @@
1 1
 package daemon
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/utils"
4
+	"github.com/docker/docker/utils"
5 5
 )
6 6
 
7 7
 type Server interface {
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"sync"
6 6
 	"time"
7 7
 
8
-	"github.com/dotcloud/docker/pkg/units"
8
+	"github.com/docker/docker/pkg/units"
9 9
 )
10 10
 
11 11
 type State struct {
... ...
@@ -4,8 +4,8 @@ import (
4 4
 	"fmt"
5 5
 	"strings"
6 6
 
7
-	"github.com/dotcloud/docker/nat"
8
-	"github.com/dotcloud/docker/runconfig"
7
+	"github.com/docker/docker/nat"
8
+	"github.com/docker/docker/runconfig"
9 9
 )
10 10
 
11 11
 func migratePortMappings(config *runconfig.Config, hostConfig *runconfig.HostConfig) error {
... ...
@@ -3,8 +3,8 @@ package daemon
3 3
 import (
4 4
 	"testing"
5 5
 
6
-	"github.com/dotcloud/docker/runconfig"
7
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/runconfig"
7
+	"github.com/docker/docker/utils"
8 8
 )
9 9
 
10 10
 func TestMergeLxcConfig(t *testing.T) {
... ...
@@ -8,9 +8,9 @@ import (
8 8
 	"strings"
9 9
 	"syscall"
10 10
 
11
-	"github.com/dotcloud/docker/archive"
12
-	"github.com/dotcloud/docker/daemon/execdriver"
13
-	"github.com/dotcloud/docker/pkg/symlink"
11
+	"github.com/docker/docker/archive"
12
+	"github.com/docker/docker/daemon/execdriver"
13
+	"github.com/docker/docker/pkg/symlink"
14 14
 )
15 15
 
16 16
 type BindMap struct {
... ...
@@ -1,8 +1,8 @@
1 1
 package daemonconfig
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/daemon/networkdriver"
5
-	"github.com/dotcloud/docker/engine"
4
+	"github.com/docker/docker/daemon/networkdriver"
5
+	"github.com/docker/docker/engine"
6 6
 	"net"
7 7
 )
8 8
 
... ...
@@ -12,15 +12,15 @@ import (
12 12
 	"runtime"
13 13
 	"strings"
14 14
 
15
-	"github.com/dotcloud/docker/api"
16
-	"github.com/dotcloud/docker/api/client"
17
-	"github.com/dotcloud/docker/builtins"
18
-	"github.com/dotcloud/docker/dockerversion"
19
-	"github.com/dotcloud/docker/engine"
20
-	"github.com/dotcloud/docker/opts"
21
-	flag "github.com/dotcloud/docker/pkg/mflag"
22
-	"github.com/dotcloud/docker/sysinit"
23
-	"github.com/dotcloud/docker/utils"
15
+	"github.com/docker/docker/api"
16
+	"github.com/docker/docker/api/client"
17
+	"github.com/docker/docker/builtins"
18
+	"github.com/docker/docker/dockerversion"
19
+	"github.com/docker/docker/engine"
20
+	"github.com/docker/docker/opts"
21
+	flag "github.com/docker/docker/pkg/mflag"
22
+	"github.com/docker/docker/sysinit"
23
+	"github.com/docker/docker/utils"
24 24
 )
25 25
 
26 26
 const (
... ...
@@ -154,7 +154,7 @@ func main() {
154 154
 			log.Fatal(err)
155 155
 		}
156 156
 
157
-		// handle the pidfile early. https://github.com/dotcloud/docker/issues/6973
157
+		// handle the pidfile early. https://github.com/docker/docker/issues/6973
158 158
 		if len(*pidfile) > 0 {
159 159
 			job := eng.Job("initserverpidfile", *pidfile)
160 160
 			if err := job.Run(); err != nil {
... ...
@@ -291,7 +291,7 @@ func checkKernelAndArch() error {
291 291
 	// Unfortunately we can't test for the feature "does not cause a kernel panic"
292 292
 	// without actually causing a kernel panic, so we need this workaround until
293 293
 	// the circumstances of pre-3.8 crashes are clearer.
294
-	// For details see http://github.com/dotcloud/docker/issues/407
294
+	// For details see http://github.com/docker/docker/issues/407
295 295
 	if k, err := utils.GetKernelVersion(); err != nil {
296 296
 		log.Printf("WARNING: %s\n", err)
297 297
 	} else {
... ...
@@ -1,7 +1,7 @@
1 1
 package main
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/sysinit"
4
+	"github.com/docker/docker/sysinit"
5 5
 )
6 6
 
7 7
 func main() {
... ...
@@ -1,5 +1,5 @@
1 1
 #
2
-# See the top level Makefile in https://github.com/dotcloud/docker for usage.
2
+# See the top level Makefile in https://github.com/docker/docker for usage.
3 3
 #
4 4
 FROM 		debian:jessie
5 5
 MAINTAINER	Sven Dowideit <SvenDowideit@docker.com> (@SvenDowideit)
... ...
@@ -43,7 +43,7 @@ RUN	VERSION=$(cat /docs/VERSION)								&&\
43 43
 	sed -i "s/\$BUILD_DATE/$BUILD_DATE/g" /docs/theme/mkdocs/base.html				&&\
44 44
 	sed -i "s/\$AWS_S3_BUCKET/$AWS_S3_BUCKET/g" /docs/theme/mkdocs/base.html
45 45
 
46
-# note, EXPOSE is only last because of https://github.com/dotcloud/docker/issues/3525
46
+# note, EXPOSE is only last because of https://github.com/docker/docker/issues/3525
47 47
 EXPOSE	8000
48 48
 
49 49
 CMD 	["mkdocs", "serve"]
... ...
@@ -5,7 +5,7 @@ Markdown, as implemented by [MkDocs](http://mkdocs.org).
5 5
 
6 6
 The HTML files are built and hosted on `https://docs.docker.com`, and update
7 7
 automatically after each change to the master or release branch of [Docker on
8
-GitHub](https://github.com/dotcloud/docker) thanks to post-commit hooks. The
8
+GitHub](https://github.com/docker/docker) thanks to post-commit hooks. The
9 9
 `docs` branch maps to the "latest" documentation and the `master` (unreleased
10 10
 development) branch maps to the "master" documentation.
11 11
 
... ...
@@ -6,7 +6,7 @@ site_favicon: img/favicon.png
6 6
 
7 7
 dev_addr: '0.0.0.0:8000'
8 8
 
9
-repo_url: https://github.com/dotcloud/docker/
9
+repo_url: https://github.com/docker/docker/
10 10
 
11 11
 docs_dir: sources
12 12
 
... ...
@@ -33,13 +33,13 @@ It can be as simple as this to create an Ubuntu base image:
33 33
 There are more example scripts for creating base images in the Docker
34 34
 GitHub Repo:
35 35
 
36
- - [BusyBox](https://github.com/dotcloud/docker/blob/master/contrib/mkimage-busybox.sh)
36
+ - [BusyBox](https://github.com/docker/docker/blob/master/contrib/mkimage-busybox.sh)
37 37
  - CentOS / Scientific Linux CERN (SLC) [on Debian/Ubuntu](
38
-   https://github.com/dotcloud/docker/blob/master/contrib/mkimage-rinse.sh) or
38
+   https://github.com/docker/docker/blob/master/contrib/mkimage-rinse.sh) or
39 39
    [on CentOS/RHEL/SLC/etc.](
40
-   https://github.com/dotcloud/docker/blob/master/contrib/mkimage-yum.sh)
40
+   https://github.com/docker/docker/blob/master/contrib/mkimage-yum.sh)
41 41
  - [Debian / Ubuntu](
42
-   https://github.com/dotcloud/docker/blob/master/contrib/mkimage-debootstrap.sh)
42
+   https://github.com/docker/docker/blob/master/contrib/mkimage-debootstrap.sh)
43 43
 
44 44
 ## Creating a simple base image using `scratch`
45 45
 
... ...
@@ -539,7 +539,7 @@ values.
539 539
     It also allows the container to access local network services
540 540
     like D-bus.  This can lead to processes in the container being
541 541
     able to do unexpected things like
542
-    [restart your computer](https://github.com/dotcloud/docker/issues/6401).
542
+    [restart your computer](https://github.com/docker/docker/issues/6401).
543 543
     You should use this option with caution.
544 544
 
545 545
  *  `--net=container:NAME_or_ID` — Tells Docker to put this container's
... ...
@@ -196,7 +196,7 @@ to the host.
196 196
 This won't affect regular web apps; but malicious users will find that
197 197
 the arsenal at their disposal has shrunk considerably! By default Docker
198 198
 drops all capabilities except [those
199
-needed](https://github.com/dotcloud/docker/blob/master/daemon/execdriver/native/template/default_template.go),
199
+needed](https://github.com/docker/docker/blob/master/daemon/execdriver/native/template/default_template.go),
200 200
 a whitelist instead of a blacklist approach. You can see a full list of
201 201
 available capabilities in [Linux
202 202
 manpages](http://man7.org/linux/man-pages/man7/capabilities.7.html).
... ...
@@ -204,7 +204,7 @@ manpages](http://man7.org/linux/man-pages/man7/capabilities.7.html).
204 204
 Of course, you can always enable extra capabilities if you really need
205 205
 them (for instance, if you want to use a FUSE-based filesystem), but by
206 206
 default, Docker containers use only a
207
-[whitelist](https://github.com/dotcloud/docker/blob/master/daemon/execdriver/native/template/default_template.go)
207
+[whitelist](https://github.com/docker/docker/blob/master/daemon/execdriver/native/template/default_template.go)
208 208
 of kernel capabilities by default.
209 209
 
210 210
 ## Other Kernel Security Features
... ...
@@ -7,18 +7,18 @@ page_keywords: contributing, docker, documentation, help, guideline
7 7
 Want to hack on Docker? Awesome!
8 8
 
9 9
 The repository includes [all the instructions you need to get started](
10
-https://github.com/dotcloud/docker/blob/master/CONTRIBUTING.md).
10
+https://github.com/docker/docker/blob/master/CONTRIBUTING.md).
11 11
 
12 12
 The [developer environment Dockerfile](
13
-https://github.com/dotcloud/docker/blob/master/Dockerfile)
13
+https://github.com/docker/docker/blob/master/Dockerfile)
14 14
 specifies the tools and versions used to test and build Docker.
15 15
 
16 16
 If you're making changes to the documentation, see the [README.md](
17
-https://github.com/dotcloud/docker/blob/master/docs/README.md).
17
+https://github.com/docker/docker/blob/master/docs/README.md).
18 18
 
19 19
 The [documentation environment Dockerfile](
20
-https://github.com/dotcloud/docker/blob/master/docs/Dockerfile)
20
+https://github.com/docker/docker/blob/master/docs/Dockerfile)
21 21
 specifies the tools and versions used to build the Documentation.
22 22
 
23 23
 Further interesting details can be found in the [Packaging hints](
24
-https://github.com/dotcloud/docker/blob/master/hack/PACKAGERS.md).
24
+https://github.com/docker/docker/blob/master/hack/PACKAGERS.md).
... ...
@@ -32,7 +32,7 @@ Again, you can do it in other ways but you need to do more work.
32 32
 
33 33
 ## Check out the Source
34 34
 
35
-    $ git clone https://git@github.com/dotcloud/docker
35
+    $ git clone https://git@github.com/docker/docker
36 36
     $ cd docker
37 37
 
38 38
 To checkout a different revision just use `git checkout`
... ...
@@ -110,7 +110,7 @@ something like this
110 110
     === RUN TestDependencyGraph
111 111
     --- PASS: TestDependencyGraph (0.00 seconds)
112 112
     PASS
113
-    ok      github.com/dotcloud/docker/utils        0.017s
113
+    ok      github.com/docker/docker/utils        0.017s
114 114
 
115 115
 If $TESTFLAGS is set in the environment, it is passed as extra arguments
116 116
 to `go test`. You can use this to select certain tests to run, e.g.,
... ...
@@ -65,7 +65,7 @@ optimized and up-to-date image to power your applications.
65 65
 > **Note:**
66 66
 > If you would like to contribute an official repository for your
67 67
 > organization, product or team you can see more information
68
-> [here](https://github.com/dotcloud/stackbrew).
68
+> [here](https://github.com/docker/stackbrew).
69 69
 
70 70
 ## Private Docker Repositories
71 71
 
... ...
@@ -74,7 +74,7 @@ Almost there. Next, we add a hack to get us by the lack of
74 74
 `initctl`:
75 75
 
76 76
     # Hack for initctl
77
-    # See: https://github.com/dotcloud/docker/issues/1024
77
+    # See: https://github.com/docker/docker/issues/1024
78 78
     RUN dpkg-divert --local --rename --add /sbin/initctl
79 79
     RUN ln -s /bin/true /sbin/initctl
80 80
 
... ...
@@ -14,8 +14,8 @@ paying.
14 14
 ### What open source license are you using?
15 15
 
16 16
 We are using the Apache License Version 2.0, see it here:
17
-[https://github.com/dotcloud/docker/blob/master/LICENSE](
18
-https://github.com/dotcloud/docker/blob/master/LICENSE)
17
+[https://github.com/docker/docker/blob/master/LICENSE](
18
+https://github.com/docker/docker/blob/master/LICENSE)
19 19
 
20 20
 ### Does Docker run on Mac OS X or Windows?
21 21
 
... ...
@@ -227,7 +227,7 @@ OpenSSL library vulnerable to the [Heartbleed](http://heartbleed.com/) bug.
227 227
 
228 228
 ### Can I help by adding some questions and answers?
229 229
 
230
-Definitely! You can fork [the repo](https://github.com/dotcloud/docker) and
230
+Definitely! You can fork [the repo](https://github.com/docker/docker) and
231 231
 edit the documentation sources.
232 232
 
233 233
 ### Where can I find more answers?
... ...
@@ -237,7 +237,7 @@ You can find more answers on:
237 237
 - [Docker user mailinglist](https://groups.google.com/d/forum/docker-user)
238 238
 - [Docker developer mailinglist](https://groups.google.com/d/forum/docker-dev)
239 239
 - [IRC, docker on freenode](irc://chat.freenode.net#docker)
240
-- [GitHub](https://github.com/dotcloud/docker)
240
+- [GitHub](https://github.com/docker/docker)
241 241
 - [Ask questions on Stackoverflow](http://stackoverflow.com/search?q=docker)
242 242
 - [Join the conversation on Twitter](http://twitter.com/docker)
243 243
 
... ...
@@ -94,7 +94,7 @@ To learn about Docker in more detail and to answer questions about usage and imp
94 94
 *`.dockerignore` support*
95 95
 
96 96
 You can now add a `.dockerignore` file next to your `Dockerfile` and Docker will ignore files and directories specified in that file when sending the build context to the daemon. 
97
-Example: https://github.com/dotcloud/docker/blob/master/.dockerignore
97
+Example: https://github.com/docker/docker/blob/master/.dockerignore
98 98
 
99 99
 *Pause containers during commit*
100 100
 
... ...
@@ -23,9 +23,9 @@ runtime:
23 23
  - a [properly mounted](
24 24
    https://github.com/tianon/cgroupfs-mount/blob/master/cgroupfs-mount)
25 25
    cgroupfs hierarchy (having a single, all-encompassing "cgroup" mount
26
-   point [is](https://github.com/dotcloud/docker/issues/2683)
27
-   [not](https://github.com/dotcloud/docker/issues/3485)
28
-   [sufficient](https://github.com/dotcloud/docker/issues/4568))
26
+   point [is](https://github.com/docker/docker/issues/2683)
27
+   [not](https://github.com/docker/docker/issues/3485)
28
+   [sufficient](https://github.com/docker/docker/issues/4568))
29 29
 
30 30
 ## Check kernel dependencies
31 31
 
... ...
@@ -421,7 +421,7 @@ Registering a new account.
421 421
         Accept: application/json
422 422
         Content-Type: application/json
423 423
 
424
-        {"email": "sam@dotcloud.com",
424
+        {"email": "sam@docker.com",
425 425
          "password": "toto42",
426 426
          "username": "foobar"}
427 427
 
... ...
@@ -468,7 +468,7 @@ Change a password or email address for given user. If you pass in an
468 468
         Content-Type: application/json
469 469
         Authorization: Basic akmklmasadalkm==
470 470
 
471
-        {"email": "sam@dotcloud.com",
471
+        {"email": "sam@docker.com",
472 472
          "password": "toto42"}
473 473
 
474 474
     Parameters:
... ...
@@ -374,7 +374,7 @@ Image's name added in the events
374 374
 ## v1.3
375 375
 
376 376
 docker v0.5.0
377
-[51f6c4a](https://github.com/dotcloud/docker/commit/51f6c4a7372450d164c61e0054daf0223ddbd909)
377
+[51f6c4a](https://github.com/docker/docker/commit/51f6c4a7372450d164c61e0054daf0223ddbd909)
378 378
 
379 379
 ### Full Documentation
380 380
 
... ...
@@ -414,7 +414,7 @@ Start containers (/containers/<id>/start):
414 414
 ## v1.2
415 415
 
416 416
 docker v0.4.2
417
-[2e7649b](https://github.com/dotcloud/docker/commit/2e7649beda7c820793bd46766cbc2cfeace7b168)
417
+[2e7649b](https://github.com/docker/docker/commit/2e7649beda7c820793bd46766cbc2cfeace7b168)
418 418
 
419 419
 ### Full Documentation
420 420
 
... ...
@@ -446,7 +446,7 @@ deleted/untagged.
446 446
 ## v1.1
447 447
 
448 448
 docker v0.4.0
449
-[a8ae398](https://github.com/dotcloud/docker/commit/a8ae398bf52e97148ee7bd0d5868de2e15bd297f)
449
+[a8ae398](https://github.com/docker/docker/commit/a8ae398bf52e97148ee7bd0d5868de2e15bd297f)
450 450
 
451 451
 ### Full Documentation
452 452
 
... ...
@@ -473,7 +473,7 @@ Uses json stream instead of HTML hijack, it looks like this:
473 473
 ## v1.0
474 474
 
475 475
 docker v0.3.4
476
-[8d73740](https://github.com/dotcloud/docker/commit/8d73740343778651c09160cde9661f5f387b36f4)
476
+[8d73740](https://github.com/docker/docker/commit/8d73740343778651c09160cde9661f5f387b36f4)
477 477
 
478 478
 ### Full Documentation
479 479
 
... ...
@@ -194,7 +194,7 @@ Return low-level information on the container `id`
194 194
                              "Bridge": "",
195 195
                              "PortMapping": null
196 196
                      },
197
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
197
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
198 198
                      "ResolvConfPath": "/etc/resolv.conf",
199 199
                      "Volumes": {}
200 200
         }
... ...
@@ -194,7 +194,7 @@ Return low-level information on the container `id`
194 194
                              "Bridge": "",
195 195
                              "PortMapping": null
196 196
                      },
197
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
197
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
198 198
                      "ResolvConfPath": "/etc/resolv.conf",
199 199
                      "Volumes": {}
200 200
         }
... ...
@@ -220,7 +220,7 @@ Return low-level information on the container `id`
220 220
                              "Bridge": "",
221 221
                              "PortMapping": null
222 222
                      },
223
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
223
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
224 224
                      "ResolvConfPath": "/etc/resolv.conf",
225 225
                      "Volumes": {},
226 226
                      "HostConfig": {
... ...
@@ -224,7 +224,7 @@ Return low-level information on the container `id`
224 224
                              "Bridge": "",
225 225
                              "PortMapping": null
226 226
                      },
227
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
227
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
228 228
                      "ResolvConfPath": "/etc/resolv.conf",
229 229
                      "Volumes": {},
230 230
                      "HostConfig": {
... ...
@@ -224,7 +224,7 @@ Return low-level information on the container `id`
224 224
                              "Bridge": "",
225 225
                              "PortMapping": null
226 226
                      },
227
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
227
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
228 228
                      "ResolvConfPath": "/etc/resolv.conf",
229 229
                      "Volumes": {},
230 230
                      "HostConfig": {
... ...
@@ -224,7 +224,7 @@ Return low-level information on the container `id`
224 224
                              "Bridge": "",
225 225
                              "PortMapping": null
226 226
                      },
227
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
227
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
228 228
                      "ResolvConfPath": "/etc/resolv.conf",
229 229
                      "Volumes": {},
230 230
                      "HostConfig": {
... ...
@@ -224,7 +224,7 @@ Return low-level information on the container `id`
224 224
                              "Bridge": "",
225 225
                              "PortMapping": null
226 226
                      },
227
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
227
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
228 228
                      "ResolvConfPath": "/etc/resolv.conf",
229 229
                      "Volumes": {},
230 230
                      "HostConfig": {
... ...
@@ -206,7 +206,7 @@ Return low-level information on the container `id`
206 206
                              "Bridge": "",
207 207
                              "PortMapping": null
208 208
                      },
209
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
209
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
210 210
                      "ResolvConfPath": "/etc/resolv.conf",
211 211
                      "Volumes": {}
212 212
         }
... ...
@@ -208,7 +208,7 @@ Return low-level information on the container `id`
208 208
                              "Bridge": "",
209 209
                              "PortMapping": null
210 210
                      },
211
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
211
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
212 212
                      "ResolvConfPath": "/etc/resolv.conf",
213 213
                      "Volumes": {}
214 214
         }
... ...
@@ -213,7 +213,7 @@ Return low-level information on the container `id`
213 213
                              "Bridge": "",
214 214
                              "PortMapping": null
215 215
                      },
216
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
216
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
217 217
                      "ResolvConfPath": "/etc/resolv.conf",
218 218
                      "Volumes": {}
219 219
         }
... ...
@@ -211,7 +211,7 @@ Return low-level information on the container `id`
211 211
             "Bridge": "",
212 212
             "PortMapping": null
213 213
           },
214
-          "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
214
+          "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
215 215
           "ResolvConfPath": "/etc/resolv.conf",
216 216
           "Volumes": {}
217 217
         }
... ...
@@ -261,7 +261,7 @@ Return low-level information on the container `id`
261 261
                              "Bridge": "",
262 262
                              "PortMapping": null
263 263
                      },
264
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
264
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
265 265
                      "ResolvConfPath": "/etc/resolv.conf",
266 266
                      "Volumes": {}
267 267
         }
... ...
@@ -217,7 +217,7 @@ Return low-level information on the container `id`
217 217
                              "Bridge": "",
218 218
                              "PortMapping": null
219 219
                      },
220
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
220
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
221 221
                      "ResolvConfPath": "/etc/resolv.conf",
222 222
                      "Volumes": {}
223 223
         }
... ...
@@ -237,7 +237,7 @@ Return low-level information on the container `id`
237 237
                              "Bridge": "",
238 238
                              "PortMapping": null
239 239
                      },
240
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
240
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
241 241
                      "ResolvConfPath": "/etc/resolv.conf",
242 242
                      "Volumes": {},
243 243
                      "HostConfig": {
... ...
@@ -237,7 +237,7 @@ Return low-level information on the container `id`
237 237
                              "Bridge": "",
238 238
                              "PortMapping": null
239 239
                      },
240
-                     "SysInitPath": "/home/kitty/go/src/github.com/dotcloud/docker/bin/docker",
240
+                     "SysInitPath": "/home/kitty/go/src/github.com/docker/docker/bin/docker",
241 241
                      "ResolvConfPath": "/etc/resolv.conf",
242 242
                      "Volumes": {},
243 243
                      "HostConfig": {
... ...
@@ -35,7 +35,7 @@ managed by Docker Inc.
35 35
    service using tokens
36 36
  - It supports different storage backends (S3, cloud files, local FS)
37 37
  - It doesn't have a local database
38
- - [Source Code](https://github.com/dotcloud/docker-registry)
38
+ - [Source Code](https://github.com/docker/docker-registry)
39 39
 
40 40
 We expect that there will be multiple registries out there. To help to
41 41
 grasp the context, here are some examples of registries:
... ...
@@ -479,7 +479,7 @@ file is empty.
479 479
     POST /v1/users:
480 480
 
481 481
     **Body**:
482
-    {"email": "[sam@dotcloud.com](mailto:sam%40dotcloud.com)",
482
+    {"email": "[sam@docker.com](mailto:sam%40docker.com)",
483 483
     "password": "toto42", "username": "foobar"`}
484 484
 
485 485
     **Validation**:
... ...
@@ -175,7 +175,7 @@ The cache for `RUN` instructions can be invalidated by `ADD` instructions. See
175 175
 
176 176
 ### Known Issues (RUN)
177 177
 
178
-- [Issue 783](https://github.com/dotcloud/docker/issues/783) is about file
178
+- [Issue 783](https://github.com/docker/docker/issues/783) is about file
179 179
   permissions problems that can occur when using the AUFS file system. You
180 180
   might notice it during an attempt to `rm` a file, for example. The issue
181 181
   describes a workaround.
... ...
@@ -117,7 +117,7 @@ you can also specify individual sockets too `docker -d -H fd://3`. If the
117 117
 specified socket activated files aren't found then docker will exit. You
118 118
 can find examples of using systemd socket activation with docker and
119 119
 systemd in the [docker source tree](
120
-https://github.com/dotcloud/docker/blob/master/contrib/init/systemd/socket-activation/).
120
+https://github.com/docker/docker/blob/master/contrib/init/systemd/socket-activation/).
121 121
 
122 122
 Docker supports softlinks for the Docker data directory
123 123
 (`/var/lib/docker`) and for `/tmp`. TMPDIR and the data directory can be set
... ...
@@ -396,9 +396,9 @@ For example:
396 396
     A /go
397 397
     A /go/src
398 398
     A /go/src/github.com
399
-    A /go/src/github.com/dotcloud
400
-    A /go/src/github.com/dotcloud/docker
401
-    A /go/src/github.com/dotcloud/docker/.git
399
+    A /go/src/github.com/docker
400
+    A /go/src/github.com/docker/docker
401
+    A /go/src/github.com/docker/docker/.git
402 402
     ....
403 403
 
404 404
 ## events
... ...
@@ -871,7 +871,7 @@ registry or to a self-hosted one.
871 871
 
872 872
 ### Known Issues (rm)
873 873
 
874
--   [Issue 197](https://github.com/dotcloud/docker/issues/197) indicates
874
+-   [Issue 197](https://github.com/docker/docker/issues/197) indicates
875 875
     that `docker kill` may leave directories behind
876 876
     and make it difficult to remove the container.
877 877
 
... ...
@@ -1008,7 +1008,7 @@ and linking containers.
1008 1008
 
1009 1009
 ### Known Issues (run –volumes-from)
1010 1010
 
1011
-- [Issue 2702](https://github.com/dotcloud/docker/issues/2702):
1011
+- [Issue 2702](https://github.com/docker/docker/issues/2702):
1012 1012
   "lxc-start: Permission denied - failed to mount" could indicate a
1013 1013
   permissions problem with AppArmor. Please see the issue for a
1014 1014
   workaround.
... ...
@@ -86,7 +86,7 @@ and pass along signals. All of that is configurable:
86 86
     -i=false        : Keep STDIN open even if not attached
87 87
 
88 88
 If you do not specify `-a` then Docker will [attach all standard
89
-streams]( https://github.com/dotcloud/docker/blob/
89
+streams]( https://github.com/docker/docker/blob/
90 90
 75a7f4d90cde0295bcfb7213004abce8d4779b75/commands.go#L1797). You can
91 91
 specify to which of the three standard streams (`STDIN`, `STDOUT`,
92 92
 `STDERR`) you'd like to connect instead, as in:
... ...
@@ -237,7 +237,7 @@ By default, Docker containers are "unprivileged" and cannot, for
237 237
 example, run a Docker daemon inside a Docker container. This is because
238 238
 by default a container is not allowed to access any devices, but a
239 239
 "privileged" container is given access to all devices (see [lxc-template.go](
240
-https://github.com/dotcloud/docker/blob/master/daemon/execdriver/lxc/lxc_template.go)
240
+https://github.com/docker/docker/blob/master/daemon/execdriver/lxc/lxc_template.go)
241 241
 and documentation on [cgroups devices](
242 242
 https://www.kernel.org/doc/Documentation/cgroups/devices.txt)).
243 243
 
... ...
@@ -262,7 +262,7 @@ If the Docker daemon was started using the `lxc` exec-driver
262 262
 (`docker -d --exec-driver=lxc`) then the operator can also specify LXC options
263 263
 using one or more `--lxc-conf` parameters. These can be new parameters or
264 264
 override existing parameters from the [lxc-template.go](
265
-https://github.com/dotcloud/docker/blob/master/daemon/execdriver/lxc/lxc_template.go).
265
+https://github.com/docker/docker/blob/master/daemon/execdriver/lxc/lxc_template.go).
266 266
 Note that in the future, a given host's docker daemon may not use LXC, so this
267 267
 is an implementation-specific configuration meant for operators already
268 268
 familiar with using LXC directly.
... ...
@@ -130,7 +130,7 @@ We can see we've returned a lot of images that use the term `sinatra`. We've
130 130
 returned a list of image names, descriptions, Stars (which measure the social
131 131
 popularity of images - if a user likes an image then they can "star" it), and
132 132
 the Official and Automated build statuses. Official repositories are built and
133
-maintained by the [Stackbrew](https://github.com/dotcloud/stackbrew) project,
133
+maintained by the [Stackbrew](https://github.com/docker/stackbrew) project,
134 134
 and Automated repositories are [Automated Builds](
135 135
 /userguide/dockerrepos/#automated-builds) that allow you to validate the source
136 136
 and content of an image.
... ...
@@ -87,7 +87,7 @@ Go to [Working with Docker Hub](/userguide/dockerrepos).
87 87
 * [Docker blog](http://blog.docker.com/)
88 88
 * [Docker documentation](http://docs.docker.com/)
89 89
 * [Docker Getting Started Guide](http://www.docker.com/gettingstarted/)
90
-* [Docker code on GitHub](https://github.com/dotcloud/docker)
90
+* [Docker code on GitHub](https://github.com/docker/docker)
91 91
 * [Docker mailing
92 92
   list](https://groups.google.com/forum/#!forum/docker-user)
93 93
 * Docker on IRC: irc.freenode.net and channel #docker
... ...
@@ -61,7 +61,7 @@
61 61
               </a>
62 62
               <ul id="documentation-version-list" class="dropdown-menu pull-right">
63 63
 		<li role="presentation" class="divider"></li>
64
-		<li> <a class="home-link3 tertiary-nav" href="https://github.com/dotcloud/docker/blob/master/docs/sources/{{ current_page.input_path }}" >Edit on GitHub</a></li>
64
+		<li> <a class="home-link3 tertiary-nav" href="https://github.com/docker/docker/blob/master/docs/sources/{{ current_page.input_path }}" >Edit on GitHub</a></li>
65 65
               </ul>
66 66
             </li>
67 67
           </ul>
... ...
@@ -8,5 +8,5 @@
8 8
       {% endif %}
9 9
     {% endif %}
10 10
   {% endfor %}
11
-  <li class="pull-right edit-on-github"><a href="https://github.com/dotcloud/docker/blob/master/docs/sources/{{ current_page.input_path }}"><span class="glyphicon glyphicon-edit"></span>Edit on GitHub</a></li>
11
+  <li class="pull-right edit-on-github"><a href="https://github.com/docker/docker/blob/master/docs/sources/{{ current_page.input_path }}"><span class="glyphicon glyphicon-edit"></span>Edit on GitHub</a></li>
12 12
 </ol>
13 13
\ No newline at end of file
... ...
@@ -10,7 +10,7 @@
10 10
           <li><a class="primary-button" href="https://www.docker.com/community/governance/">Governance</a></li>
11 11
           <li><a class="primary-button" href="http://forums.docker.com">Forums</a></li>
12 12
           <li><a class="primary-button" href="http://botbot.me/freenode/docker">IRC</a></li>
13
-          <li><a class="primary-button" href="https://github.com/dotcloud/docker">GitHub</a></li>
13
+          <li><a class="primary-button" href="https://github.com/docker/docker">GitHub</a></li>
14 14
           <li><a class="primary-button" href="http://stackoverflow.com/search?q=docker">Stackoverflow</a></li>
15 15
           <li><a class="primary-button" href="http://www.cafepress.com/docker">Swag</a></li>
16 16
         </ul>
... ...
@@ -8,7 +8,7 @@ import (
8 8
 	"sort"
9 9
 	"strings"
10 10
 
11
-	"github.com/dotcloud/docker/utils"
11
+	"github.com/docker/docker/utils"
12 12
 )
13 13
 
14 14
 // Installer is a standard interface for objects which can "install" themselves
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"encoding/json"
6 6
 	"testing"
7 7
 
8
-	"github.com/dotcloud/docker/pkg/testutils"
8
+	"github.com/docker/docker/pkg/testutils"
9 9
 )
10 10
 
11 11
 func TestEnvLenZero(t *testing.T) {
... ...
@@ -12,13 +12,13 @@ import (
12 12
 	"syscall"
13 13
 	"time"
14 14
 
15
-	"github.com/dotcloud/docker/archive"
16
-	"github.com/dotcloud/docker/daemon/graphdriver"
17
-	"github.com/dotcloud/docker/dockerversion"
18
-	"github.com/dotcloud/docker/image"
19
-	"github.com/dotcloud/docker/pkg/truncindex"
20
-	"github.com/dotcloud/docker/runconfig"
21
-	"github.com/dotcloud/docker/utils"
15
+	"github.com/docker/docker/archive"
16
+	"github.com/docker/docker/daemon/graphdriver"
17
+	"github.com/docker/docker/dockerversion"
18
+	"github.com/docker/docker/image"
19
+	"github.com/docker/docker/pkg/truncindex"
20
+	"github.com/docker/docker/runconfig"
21
+	"github.com/docker/docker/utils"
22 22
 )
23 23
 
24 24
 // A Graph is a store for versioned filesystem images and the relationship between them.
... ...
@@ -3,9 +3,9 @@ package graph
3 3
 import (
4 4
 	"io"
5 5
 
6
-	"github.com/dotcloud/docker/engine"
7
-	"github.com/dotcloud/docker/image"
8
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/engine"
7
+	"github.com/docker/docker/image"
8
+	"github.com/docker/docker/utils"
9 9
 )
10 10
 
11 11
 func (s *TagStore) Install(eng *engine.Engine) error {
... ...
@@ -10,8 +10,8 @@ import (
10 10
 	"strings"
11 11
 	"sync"
12 12
 
13
-	"github.com/dotcloud/docker/image"
14
-	"github.com/dotcloud/docker/utils"
13
+	"github.com/docker/docker/image"
14
+	"github.com/docker/docker/utils"
15 15
 )
16 16
 
17 17
 const DEFAULTTAG = "latest"
... ...
@@ -2,11 +2,11 @@ package graph
2 2
 
3 3
 import (
4 4
 	"bytes"
5
-	"github.com/dotcloud/docker/daemon/graphdriver"
6
-	_ "github.com/dotcloud/docker/daemon/graphdriver/vfs" // import the vfs driver so it is used in the tests
7
-	"github.com/dotcloud/docker/image"
8
-	"github.com/dotcloud/docker/utils"
9
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
5
+	"github.com/docker/docker/daemon/graphdriver"
6
+	_ "github.com/docker/docker/daemon/graphdriver/vfs" // import the vfs driver so it is used in the tests
7
+	"github.com/docker/docker/image"
8
+	"github.com/docker/docker/utils"
9
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
10 10
 	"io"
11 11
 	"os"
12 12
 	"path"
... ...
@@ -48,7 +48,7 @@ To build Docker, you will need the following:
48 48
 * Go version 1.2 or later
49 49
 * A clean checkout of the source added to a valid [Go
50 50
   workspace](http://golang.org/doc/code.html#Workspaces) under the path
51
-  *src/github.com/dotcloud/docker* (unless you plan to use `AUTO_GOPATH`,
51
+  *src/github.com/docker/docker* (unless you plan to use `AUTO_GOPATH`,
52 52
   explained in more detail below).
53 53
 
54 54
 To build the Docker daemon, you will additionally need:
... ...
@@ -145,7 +145,7 @@ export AUTO_GOPATH=1
145 145
 ```
146 146
 
147 147
 This will cause the build scripts to set up a reasonable `GOPATH` that
148
-automatically and properly includes both dotcloud/docker from the local
148
+automatically and properly includes both docker/docker from the local
149 149
 directory, and the local "./vendor" directory as necessary.
150 150
 
151 151
 ### `DOCKER_BUILDTAGS`
... ...
@@ -271,9 +271,9 @@ installed and available at runtime:
271 271
 * a [properly
272 272
   mounted](https://github.com/tianon/cgroupfs-mount/blob/master/cgroupfs-mount)
273 273
   cgroupfs hierarchy (having a single, all-encompassing "cgroup" mount point
274
-  [is](https://github.com/dotcloud/docker/issues/2683)
275
-  [not](https://github.com/dotcloud/docker/issues/3485)
276
-  [sufficient](https://github.com/dotcloud/docker/issues/4568))
274
+  [is](https://github.com/docker/docker/issues/2683)
275
+  [not](https://github.com/docker/docker/issues/3485)
276
+  [sufficient](https://github.com/docker/docker/issues/4568))
277 277
 
278 278
 Additionally, the Docker client needs the following software to be installed and
279 279
 available at runtime:
... ...
@@ -7,7 +7,7 @@ If your experience deviates from this document, please document the changes
7 7
 to keep it up-to-date.
8 8
 
9 9
 It is important to note that this document assumes that the git remote in your
10
-repository that corresponds to "https://github.com/dotcloud/docker" is named
10
+repository that corresponds to "https://github.com/docker/docker" is named
11 11
 "origin".  If yours is not (for example, if you've chosen to name it "upstream"
12 12
 or something similar instead), be sure to adjust the listed snippets for your
13 13
 local environment accordingly.  If you are not sure what your upstream remote is
... ...
@@ -18,7 +18,7 @@ like:
18 18
 
19 19
 ```bash
20 20
 export GITHUBUSER="YOUR_GITHUB_USER"
21
-git remote add origin https://github.com/dotcloud/docker.git
21
+git remote add origin https://github.com/docker/docker.git
22 22
 git remote add $GITHUBUSER git@github.com:$GITHUBUSER/docker.git
23 23
 ```
24 24
 
... ...
@@ -155,7 +155,7 @@ make AWS_S3_BUCKET=beta-docs.docker.io BUILD_ROOT=yes docs-release
155 155
 git add VERSION CHANGELOG.md
156 156
 git commit -m "Bump version to $VERSION"
157 157
 git push $GITHUBUSER bump_$VERSION
158
-echo "https://github.com/$GITHUBUSER/docker/compare/dotcloud:release...$GITHUBUSER:bump_$VERSION?expand=1"
158
+echo "https://github.com/$GITHUBUSER/docker/compare/docker:release...$GITHUBUSER:bump_$VERSION?expand=1"
159 159
 ```
160 160
 
161 161
 That last command will give you the proper link to visit to ensure that you
... ...
@@ -288,7 +288,7 @@ echo ${VERSION#v}-dev > VERSION
288 288
 git add VERSION
289 289
 git commit -m "Change version to $(cat VERSION)"
290 290
 git push $GITHUBUSER merge_release_$VERSION
291
-echo "https://github.com/$GITHUBUSER/docker/compare/dotcloud:master...$GITHUBUSER:merge_release_$VERSION?expand=1"
291
+echo "https://github.com/$GITHUBUSER/docker/compare/docker:master...$GITHUBUSER:merge_release_$VERSION?expand=1"
292 292
 ```
293 293
 
294 294
 Again, get two maintainers to validate, then merge, then push that pretty
... ...
@@ -3,7 +3,7 @@
3 3
 This document is a high-level overview of where we want to take Docker next.
4 4
 It is a curated selection of planned improvements which are either important, difficult, or both.
5 5
 
6
-For a more complete view of planned and requested improvements, see [the Github issues](https://github.com/dotcloud/docker/issues).
6
+For a more complete view of planned and requested improvements, see [the Github issues](https://github.com/docker/docker/issues).
7 7
 
8 8
 To suggest changes to the roadmap, including additions, please write the change as if it were already in effect, and make a pull request.
9 9
 
... ...
@@ -2,7 +2,7 @@
2 2
 set -e
3 3
 
4 4
 # DinD: a wrapper script which allows docker to be run inside a docker container.
5
-# Original version by Jerome Petazzoni <jerome@dotcloud.com>
5
+# Original version by Jerome Petazzoni <jerome@docker.com>
6 6
 # See the blog post: http://blog.docker.com/2013/09/docker-can-now-run-within-docker/
7 7
 #
8 8
 # This script should be executed inside a docker container in privilieged mode
... ...
@@ -6,7 +6,7 @@ set -e
6 6
 #
7 7
 # Requirements:
8 8
 # - The current directory should be a checkout of the docker source code
9
-#   (http://github.com/dotcloud/docker). Whatever version is checked out
9
+#   (http://github.com/docker/docker). Whatever version is checked out
10 10
 #   will be built.
11 11
 # - The VERSION file, at the root of the repository, should exist, and
12 12
 #   will be used as Docker binary version and package version.
... ...
@@ -25,7 +25,7 @@ set -o pipefail
25 25
 
26 26
 # We're a nice, sexy, little shell script, and people might try to run us;
27 27
 # but really, they shouldn't. We want to be in a container!
28
-if [ "$(pwd)" != '/go/src/github.com/dotcloud/docker' ] || [ -z "$DOCKER_CROSSPLATFORMS" ]; then
28
+if [ "$(pwd)" != '/go/src/github.com/docker/docker' ] || [ -z "$DOCKER_CROSSPLATFORMS" ]; then
29 29
 	{
30 30
 		echo "# WARNING! I don't seem to be running in the Docker container."
31 31
 		echo "# The result of this command might be an incorrect build, and will not be"
... ...
@@ -77,8 +77,8 @@ fi
77 77
 
78 78
 if [ "$AUTO_GOPATH" ]; then
79 79
 	rm -rf .gopath
80
-	mkdir -p .gopath/src/github.com/dotcloud
81
-	ln -sf ../../../.. .gopath/src/github.com/dotcloud/docker
80
+	mkdir -p .gopath/src/github.com/docker
81
+	ln -sf ../../../.. .gopath/src/github.com/docker/docker
82 82
 	export GOPATH="$(pwd)/.gopath:$(pwd)/vendor"
83 83
 fi
84 84
 
... ...
@@ -91,8 +91,8 @@ fi
91 91
 # Use these flags when compiling the tests and final binary
92 92
 LDFLAGS='
93 93
 	-w
94
-	-X github.com/dotcloud/docker/dockerversion.GITCOMMIT "'$GITCOMMIT'"
95
-	-X github.com/dotcloud/docker/dockerversion.VERSION "'$VERSION'"
94
+	-X github.com/docker/docker/dockerversion.GITCOMMIT "'$GITCOMMIT'"
95
+	-X github.com/docker/docker/dockerversion.VERSION "'$VERSION'"
96 96
 '
97 97
 LDFLAGS_STATIC='-linkmode external'
98 98
 EXTLDFLAGS_STATIC='-static'
... ...
@@ -103,7 +103,7 @@ BUILDFLAGS=( -a -tags "netgo static_build $DOCKER_BUILDTAGS" )
103 103
 EXTLDFLAGS_STATIC_DOCKER="$EXTLDFLAGS_STATIC -lpthread -Wl,--unresolved-symbols=ignore-in-object-files"
104 104
 LDFLAGS_STATIC_DOCKER="
105 105
 	$LDFLAGS_STATIC
106
-	-X github.com/dotcloud/docker/dockerversion.IAMSTATIC true
106
+	-X github.com/docker/docker/dockerversion.IAMSTATIC true
107 107
 	-extldflags \"$EXTLDFLAGS_STATIC_DOCKER\"
108 108
 "
109 109
 
... ...
@@ -150,7 +150,7 @@ go_test_dir() {
150 150
 		testcover=( -cover -coverprofile "$coverprofile" $coverpkg )
151 151
 	fi
152 152
 	(
153
-		echo '+ go test' $TESTFLAGS "github.com/dotcloud/docker${dir#.}"
153
+		echo '+ go test' $TESTFLAGS "github.com/docker/docker${dir#.}"
154 154
 		cd "$dir"
155 155
 		go test ${testcover[@]} -ldflags "$LDFLAGS" "${BUILDFLAGS[@]}" $TESTFLAGS
156 156
 	)
... ...
@@ -2,8 +2,8 @@
2 2
 
3 3
 if ! docker inspect scratch &> /dev/null; then
4 4
 	# let's build a "docker save" tarball for "scratch"
5
-	# see https://github.com/dotcloud/docker/pull/5262
6
-	# and also https://github.com/dotcloud/docker/issues/4242
5
+	# see https://github.com/docker/docker/pull/5262
6
+	# and also https://github.com/docker/docker/issues/4242
7 7
 	mkdir -p /docker-scratch
8 8
 	(
9 9
 		cd /docker-scratch
... ...
@@ -4,7 +4,7 @@ if [ -z "$VALIDATE_UPSTREAM" ]; then
4 4
 	# this is kind of an expensive check, so let's not do this twice if we
5 5
 	# are running more than one validate bundlescript
6 6
 	
7
-	VALIDATE_REPO='https://github.com/dotcloud/docker.git'
7
+	VALIDATE_REPO='https://github.com/docker/docker.git'
8 8
 	VALIDATE_BRANCH='master'
9 9
 	
10 10
 	if [ "$TRAVIS" = 'true' -a "$TRAVIS_PULL_REQUEST" != 'false' ]; then
... ...
@@ -39,7 +39,7 @@ fi
39 39
 # exported so that "dyntest" can easily access it later without recalculating it
40 40
 
41 41
 (
42
-	export LDFLAGS_STATIC_DOCKER="-X github.com/dotcloud/docker/dockerversion.INITSHA1 \"$DOCKER_INITSHA1\" -X github.com/dotcloud/docker/dockerversion.INITPATH \"$DOCKER_INITPATH\""
42
+	export LDFLAGS_STATIC_DOCKER="-X github.com/docker/docker/dockerversion.INITSHA1 \"$DOCKER_INITSHA1\" -X github.com/docker/docker/dockerversion.INITPATH \"$DOCKER_INITPATH\""
43 43
 	export BUILDFLAGS=( "${BUILDFLAGS[@]/netgo /}" ) # disable netgo, since we don't need it for a dynamic binary
44 44
 	source "$(dirname "$BASH_SOURCE")/binary"
45 45
 )
... ...
@@ -12,7 +12,7 @@ fi
12 12
 (
13 13
 	export TEST_DOCKERINIT_PATH="$INIT"
14 14
 	export LDFLAGS_STATIC_DOCKER="
15
-		-X github.com/dotcloud/docker/dockerversion.INITSHA1 \"$DOCKER_INITSHA1\"
15
+		-X github.com/docker/docker/dockerversion.INITSHA1 \"$DOCKER_INITSHA1\"
16 16
 	"
17 17
 	source "$(dirname "$BASH_SOURCE")/test-integration"
18 18
 )
... ...
@@ -12,7 +12,7 @@ fi
12 12
 (
13 13
 	export TEST_DOCKERINIT_PATH="$INIT"
14 14
 	export LDFLAGS_STATIC_DOCKER="
15
-		-X github.com/dotcloud/docker/dockerversion.INITSHA1 \"$DOCKER_INITSHA1\"
15
+		-X github.com/docker/docker/dockerversion.INITSHA1 \"$DOCKER_INITSHA1\"
16 16
 	"
17 17
 	source "$(dirname "$BASH_SOURCE")/test-unit"
18 18
 )
... ...
@@ -5,7 +5,7 @@ DEST=$1
5 5
 
6 6
 bundle_test_integration() {
7 7
 	LDFLAGS="$LDFLAGS $LDFLAGS_STATIC_DOCKER" go_test_dir ./integration \
8
-		"-coverpkg $(find_dirs '*.go' | sed 's,^\.,github.com/dotcloud/docker,g' | paste -d, -s)"
8
+		"-coverpkg $(find_dirs '*.go' | sed 's,^\.,github.com/docker/docker,g' | paste -d, -s)"
9 9
 }
10 10
 
11 11
 # this "grep" hides some really irritating warnings that "go test -coverpkg"
... ...
@@ -12,7 +12,7 @@ notDocs="$(validate_diff --numstat | awk '$3 !~ /^docs\// { print $3 }')"
12 12
 # "Username may only contain alphanumeric characters or dashes and cannot begin with a dash"
13 13
 githubUsernameRegex='[a-zA-Z0-9][a-zA-Z0-9-]+'
14 14
 
15
-# https://github.com/dotcloud/docker/blob/master/CONTRIBUTING.md#sign-your-work
15
+# https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
16 16
 dcoPrefix='Docker-DCO-1.1-Signed-off-by:'
17 17
 dcoRegex="^$dcoPrefix ([^<]+) <([^<>@]+@[^<>]+)> \\(github: ($githubUsernameRegex)\\)$"
18 18
 
... ...
@@ -48,7 +48,7 @@ else
48 48
 			echo 'Please amend each commit to include a properly formatted DCO marker.'
49 49
 			echo
50 50
 			echo 'Visit the following URL for information about the Docker DCO:'
51
-			echo ' https://github.com/dotcloud/docker/blob/master/CONTRIBUTING.md#sign-your-work'
51
+			echo ' https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work'
52 52
 			echo
53 53
 		} >&2
54 54
 		false
... ...
@@ -41,8 +41,8 @@ EOF
41 41
 [ "$AWS_ACCESS_KEY" ] || usage
42 42
 [ "$AWS_SECRET_KEY" ] || usage
43 43
 [ "$GPG_PASSPHRASE" ] || usage
44
-[ -d /go/src/github.com/dotcloud/docker ] || usage
45
-cd /go/src/github.com/dotcloud/docker
44
+[ -d /go/src/github.com/docker/docker ] || usage
45
+cd /go/src/github.com/docker/docker
46 46
 [ -x hack/make.sh ] || usage
47 47
 
48 48
 RELEASE_BUNDLES=(
... ...
@@ -357,7 +357,7 @@ Key-Type: RSA
357 357
 Key-Length: 4096
358 358
 Passphrase: $GPG_PASSPHRASE
359 359
 Name-Real: Docker Release Tool
360
-Name-Email: docker@dotcloud.com
360
+Name-Email: docker@docker.com
361 361
 Name-Comment: releasedocker
362 362
 Expire-Date: 0
363 363
 %commit
... ...
@@ -63,4 +63,4 @@ mv tmp-tar src/code.google.com/p/go/src/pkg/archive/tar
63 63
 
64 64
 clone git github.com/godbus/dbus v1
65 65
 clone git github.com/coreos/go-systemd v2
66
-clone git github.com/docker/libcontainer cf45d141db69ce11dcccac178e5607a385609e15
66
+clone git github.com/docker/libcontainer e6a43c1c2b9f769deb96348a0a93417cd48a36d8
... ...
@@ -1,7 +1,7 @@
1 1
 package image
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/daemon/graphdriver"
4
+	"github.com/docker/docker/daemon/graphdriver"
5 5
 )
6 6
 
7 7
 type Graph interface {
... ...
@@ -3,10 +3,10 @@ package image
3 3
 import (
4 4
 	"encoding/json"
5 5
 	"fmt"
6
-	"github.com/dotcloud/docker/archive"
7
-	"github.com/dotcloud/docker/daemon/graphdriver"
8
-	"github.com/dotcloud/docker/runconfig"
9
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/archive"
7
+	"github.com/docker/docker/daemon/graphdriver"
8
+	"github.com/docker/docker/runconfig"
9
+	"github.com/docker/docker/utils"
10 10
 	"io/ioutil"
11 11
 	"os"
12 12
 	"path"
... ...
@@ -9,7 +9,7 @@ import (
9 9
 	"testing"
10 10
 	"time"
11 11
 
12
-	"github.com/dotcloud/docker/archive"
12
+	"github.com/docker/docker/archive"
13 13
 )
14 14
 
15 15
 func TestBuildCacheADD(t *testing.T) {
... ...
@@ -8,7 +8,7 @@ import (
8 8
 	"strings"
9 9
 	"testing"
10 10
 
11
-	"github.com/dotcloud/docker/pkg/iptables"
11
+	"github.com/docker/docker/pkg/iptables"
12 12
 )
13 13
 
14 14
 func TestEtcHostsRegularFile(t *testing.T) {
... ...
@@ -7,7 +7,7 @@ import (
7 7
 	"os/exec"
8 8
 	"testing"
9 9
 
10
-	"github.com/dotcloud/docker/daemon"
10
+	"github.com/docker/docker/daemon"
11 11
 )
12 12
 
13 13
 func TestNetworkNat(t *testing.T) {
... ...
@@ -12,7 +12,7 @@ import (
12 12
 	"sync"
13 13
 	"testing"
14 14
 
15
-	"github.com/dotcloud/docker/pkg/networkfs/resolvconf"
15
+	"github.com/docker/docker/pkg/networkfs/resolvconf"
16 16
 )
17 17
 
18 18
 // "test123" should be printed by docker run
... ...
@@ -12,11 +12,11 @@ import (
12 12
 	"testing"
13 13
 	"time"
14 14
 
15
-	"github.com/dotcloud/docker/api"
16
-	"github.com/dotcloud/docker/api/server"
17
-	"github.com/dotcloud/docker/engine"
18
-	"github.com/dotcloud/docker/runconfig"
19
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
15
+	"github.com/docker/docker/api"
16
+	"github.com/docker/docker/api/server"
17
+	"github.com/docker/docker/engine"
18
+	"github.com/docker/docker/runconfig"
19
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
20 20
 )
21 21
 
22 22
 func TestGetContainersJSON(t *testing.T) {
... ...
@@ -4,10 +4,11 @@ import (
4 4
 	"crypto/rand"
5 5
 	"encoding/hex"
6 6
 	"fmt"
7
-	"github.com/dotcloud/docker/registry"
8 7
 	"os"
9 8
 	"strings"
10 9
 	"testing"
10
+
11
+	"github.com/docker/docker/registry"
11 12
 )
12 13
 
13 14
 // FIXME: these tests have an external dependency on a staging index hosted
... ...
@@ -17,13 +18,13 @@ import (
17 17
 
18 18
 func TestLogin(t *testing.T) {
19 19
 	t.Skip("FIXME: please remove dependency on external services")
20
-	os.Setenv("DOCKER_INDEX_URL", "https://indexstaging-docker.dotcloud.com")
20
+	os.Setenv("DOCKER_INDEX_URL", "https://registry-stage.hub.docker.com/v1/")
21 21
 	defer os.Setenv("DOCKER_INDEX_URL", "")
22 22
 	authConfig := &registry.AuthConfig{
23 23
 		Username:      "unittester",
24 24
 		Password:      "surlautrerivejetattendrai",
25 25
 		Email:         "noise+unittester@docker.com",
26
-		ServerAddress: "https://indexstaging-docker.dotcloud.com/v1/",
26
+		ServerAddress: "https://registry-stage.hub.docker.com/v1/",
27 27
 	}
28 28
 	status, err := registry.Login(authConfig, nil)
29 29
 	if err != nil {
... ...
@@ -47,7 +48,7 @@ func TestCreateAccount(t *testing.T) {
47 47
 		Username:      username,
48 48
 		Password:      "test42",
49 49
 		Email:         fmt.Sprintf("docker-ut+%s@example.com", token),
50
-		ServerAddress: "https://indexstaging-docker.dotcloud.com/v1/",
50
+		ServerAddress: "https://registry-stage.hub.docker.com/v1/",
51 51
 	}
52 52
 	status, err := registry.Login(authConfig, nil)
53 53
 	if err != nil {
... ...
@@ -11,11 +11,11 @@ import (
11 11
 	"testing"
12 12
 	"time"
13 13
 
14
-	"github.com/dotcloud/docker/api/client"
15
-	"github.com/dotcloud/docker/daemon"
16
-	"github.com/dotcloud/docker/engine"
17
-	"github.com/dotcloud/docker/pkg/term"
18
-	"github.com/dotcloud/docker/utils"
14
+	"github.com/docker/docker/api/client"
15
+	"github.com/docker/docker/daemon"
16
+	"github.com/docker/docker/engine"
17
+	"github.com/docker/docker/pkg/term"
18
+	"github.com/docker/docker/utils"
19 19
 )
20 20
 
21 21
 func closeWrap(args ...io.Closer) error {
... ...
@@ -10,7 +10,7 @@ import (
10 10
 	"testing"
11 11
 	"time"
12 12
 
13
-	"github.com/dotcloud/docker/runconfig"
13
+	"github.com/docker/docker/runconfig"
14 14
 )
15 15
 
16 16
 func TestKillDifferentUser(t *testing.T) {
... ...
@@ -2,12 +2,12 @@ package docker
2 2
 
3 3
 import (
4 4
 	"errors"
5
-	"github.com/dotcloud/docker/archive"
6
-	"github.com/dotcloud/docker/daemon/graphdriver"
7
-	"github.com/dotcloud/docker/dockerversion"
8
-	"github.com/dotcloud/docker/graph"
9
-	"github.com/dotcloud/docker/image"
10
-	"github.com/dotcloud/docker/utils"
5
+	"github.com/docker/docker/archive"
6
+	"github.com/docker/docker/daemon/graphdriver"
7
+	"github.com/docker/docker/dockerversion"
8
+	"github.com/docker/docker/graph"
9
+	"github.com/docker/docker/image"
10
+	"github.com/docker/docker/utils"
11 11
 	"io"
12 12
 	"io/ioutil"
13 13
 	"os"
... ...
@@ -8,7 +8,7 @@ import (
8 8
 	"testing"
9 9
 	"time"
10 10
 
11
-	"github.com/dotcloud/docker/api/client"
11
+	"github.com/docker/docker/api/client"
12 12
 )
13 13
 
14 14
 const (
... ...
@@ -16,13 +16,13 @@ import (
16 16
 	"testing"
17 17
 	"time"
18 18
 
19
-	"github.com/dotcloud/docker/daemon"
20
-	"github.com/dotcloud/docker/engine"
21
-	"github.com/dotcloud/docker/image"
22
-	"github.com/dotcloud/docker/nat"
23
-	"github.com/dotcloud/docker/runconfig"
24
-	"github.com/dotcloud/docker/sysinit"
25
-	"github.com/dotcloud/docker/utils"
19
+	"github.com/docker/docker/daemon"
20
+	"github.com/docker/docker/engine"
21
+	"github.com/docker/docker/image"
22
+	"github.com/docker/docker/nat"
23
+	"github.com/docker/docker/runconfig"
24
+	"github.com/docker/docker/sysinit"
25
+	"github.com/docker/docker/utils"
26 26
 )
27 27
 
28 28
 const (
... ...
@@ -5,8 +5,8 @@ import (
5 5
 	"testing"
6 6
 	"time"
7 7
 
8
-	"github.com/dotcloud/docker/engine"
9
-	"github.com/dotcloud/docker/runconfig"
8
+	"github.com/docker/docker/engine"
9
+	"github.com/docker/docker/runconfig"
10 10
 )
11 11
 
12 12
 func TestCreateNumberHostname(t *testing.T) {
... ...
@@ -13,14 +13,14 @@ import (
13 13
 	"testing"
14 14
 	"time"
15 15
 
16
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
17
-
18
-	"github.com/dotcloud/docker/builtins"
19
-	"github.com/dotcloud/docker/daemon"
20
-	"github.com/dotcloud/docker/engine"
21
-	"github.com/dotcloud/docker/runconfig"
22
-	"github.com/dotcloud/docker/server"
23
-	"github.com/dotcloud/docker/utils"
16
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
17
+
18
+	"github.com/docker/docker/builtins"
19
+	"github.com/docker/docker/daemon"
20
+	"github.com/docker/docker/engine"
21
+	"github.com/docker/docker/runconfig"
22
+	"github.com/docker/docker/server"
23
+	"github.com/docker/docker/utils"
24 24
 )
25 25
 
26 26
 // This file contains utility functions for docker's unit test suite.
... ...
@@ -1,7 +1,7 @@
1 1
 package docker
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/utils"
4
+	"github.com/docker/docker/utils"
5 5
 	"runtime"
6 6
 	"testing"
7 7
 )
... ...
@@ -2,8 +2,8 @@ package links
2 2
 
3 3
 import (
4 4
 	"fmt"
5
-	"github.com/dotcloud/docker/engine"
6
-	"github.com/dotcloud/docker/nat"
5
+	"github.com/docker/docker/engine"
6
+	"github.com/docker/docker/nat"
7 7
 	"path"
8 8
 	"strings"
9 9
 )
... ...
@@ -1,7 +1,7 @@
1 1
 package links
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/nat"
4
+	"github.com/docker/docker/nat"
5 5
 	"strings"
6 6
 	"testing"
7 7
 )
... ...
@@ -8,7 +8,7 @@ import (
8 8
 	"strconv"
9 9
 	"strings"
10 10
 
11
-	"github.com/dotcloud/docker/utils"
11
+	"github.com/docker/docker/utils"
12 12
 )
13 13
 
14 14
 const (
... ...
@@ -8,7 +8,7 @@ import (
8 8
 	"regexp"
9 9
 	"strings"
10 10
 
11
-	"github.com/dotcloud/docker/utils"
11
+	"github.com/docker/docker/utils"
12 12
 )
13 13
 
14 14
 // ListOpts type
... ...
@@ -3,7 +3,7 @@ package main
3 3
 import (
4 4
 	"fmt"
5 5
 
6
-	flag "github.com/dotcloud/docker/pkg/mflag"
6
+	flag "github.com/docker/docker/pkg/mflag"
7 7
 )
8 8
 
9 9
 var (
... ...
@@ -10,7 +10,7 @@
10 10
 	Define flags using flag.String(), Bool(), Int(), etc.
11 11
 
12 12
 	This declares an integer flag, -f or --flagname, stored in the pointer ip, with type *int.
13
-		import "flag /github.com/dotcloud/docker/pkg/mflag"
13
+		import "flag /github.com/docker/docker/pkg/mflag"
14 14
 		var ip = flag.Int([]string{"f", "-flagname"}, 1234, "help message for flagname")
15 15
 	If you like, you can bind the flag to a variable using the Var() functions.
16 16
 		var flagvar int
... ...
@@ -7,7 +7,7 @@ package mflag_test
7 7
 import (
8 8
 	"bytes"
9 9
 	"fmt"
10
-	. "github.com/dotcloud/docker/pkg/mflag"
10
+	. "github.com/docker/docker/pkg/mflag"
11 11
 	"os"
12 12
 	"sort"
13 13
 	"strings"
... ...
@@ -1 +1 @@
1
-Solomon Hykes <solomon@dotcloud.com> (@shykes)
1
+Solomon Hykes <solomon@docker.com> (@shykes)
... ...
@@ -4,7 +4,7 @@ import (
4 4
 	"math/rand"
5 5
 	"testing"
6 6
 
7
-	"github.com/dotcloud/docker/utils"
7
+	"github.com/docker/docker/utils"
8 8
 )
9 9
 
10 10
 // Test the behavior of TruncIndex, an index for querying IDs from a non-conflicting prefix.
... ...
@@ -1,5 +1,5 @@
1
-Sam Alba <sam@dotcloud.com> (@samalba)
2
-Joffrey Fuhrer <joffrey@dotcloud.com> (@shin-)
3
-Ken Cochrane <ken@dotcloud.com> (@kencochrane)
1
+Sam Alba <sam@docker.com> (@samalba)
2
+Joffrey Fuhrer <joffrey@docker.com> (@shin-)
3
+Ken Cochrane <ken@docker.com> (@kencochrane)
4 4
 Vincent Batts <vbatts@redhat.com> (@vbatts)
5 5
 Olivier Gambier <olivier@docker.com> (@dmp42)
... ...
@@ -11,7 +11,7 @@ import (
11 11
 	"path"
12 12
 	"strings"
13 13
 
14
-	"github.com/dotcloud/docker/utils"
14
+	"github.com/docker/docker/utils"
15 15
 )
16 16
 
17 17
 // Where we store the config file
... ...
@@ -20,7 +20,7 @@ const CONFIGFILE = ".dockercfg"
20 20
 // Only used for user auth + account creation
21 21
 const INDEXSERVER = "https://index.docker.io/v1/"
22 22
 
23
-//const INDEXSERVER = "https://indexstaging-docker.dotcloud.com/v1/"
23
+//const INDEXSERVER = "https://registry-stage.hub.docker.com/v1/"
24 24
 
25 25
 var (
26 26
 	ErrConfigFileMissing = errors.New("The Auth config file is missing")
... ...
@@ -23,8 +23,8 @@ import (
23 23
 	"strings"
24 24
 	"time"
25 25
 
26
-	"github.com/dotcloud/docker/dockerversion"
27
-	"github.com/dotcloud/docker/utils"
26
+	"github.com/docker/docker/dockerversion"
27
+	"github.com/docker/docker/utils"
28 28
 )
29 29
 
30 30
 var (
... ...
@@ -3,7 +3,7 @@ package registry
3 3
 import (
4 4
 	"encoding/json"
5 5
 	"fmt"
6
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/utils"
7 7
 	"github.com/gorilla/mux"
8 8
 	"io"
9 9
 	"io/ioutil"
... ...
@@ -7,7 +7,7 @@ import (
7 7
 	"strings"
8 8
 	"testing"
9 9
 
10
-	"github.com/dotcloud/docker/utils"
10
+	"github.com/docker/docker/utils"
11 11
 )
12 12
 
13 13
 var (
... ...
@@ -145,7 +145,7 @@ func TestPushImageLayerRegistry(t *testing.T) {
145 145
 }
146 146
 
147 147
 func TestResolveRepositoryName(t *testing.T) {
148
-	_, _, err := ResolveRepositoryName("https://github.com/dotcloud/docker")
148
+	_, _, err := ResolveRepositoryName("https://github.com/docker/docker")
149 149
 	assertEqual(t, err, ErrInvalidRepositoryName, "Expected error invalid repo name")
150 150
 	ep, repo, err := ResolveRepositoryName("fooo/bar")
151 151
 	if err != nil {
... ...
@@ -1,7 +1,7 @@
1 1
 package registry
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/engine"
4
+	"github.com/docker/docker/engine"
5 5
 )
6 6
 
7 7
 // Service exposes registry capabilities in the standard Engine
... ...
@@ -1,8 +1,8 @@
1 1
 package runconfig
2 2
 
3 3
 import (
4
-	"github.com/dotcloud/docker/engine"
5
-	"github.com/dotcloud/docker/nat"
4
+	"github.com/docker/docker/engine"
5
+	"github.com/docker/docker/nat"
6 6
 )
7 7
 
8 8
 // Note: the Config structure should hold only portable information about the container.
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"strings"
6 6
 	"testing"
7 7
 
8
-	"github.com/dotcloud/docker/nat"
8
+	"github.com/docker/docker/nat"
9 9
 )
10 10
 
11 11
 func parse(t *testing.T, args string) (*Config, *HostConfig, error) {
... ...
@@ -3,9 +3,9 @@ package runconfig
3 3
 import (
4 4
 	"strings"
5 5
 
6
-	"github.com/dotcloud/docker/engine"
7
-	"github.com/dotcloud/docker/nat"
8
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/engine"
7
+	"github.com/docker/docker/nat"
8
+	"github.com/docker/docker/utils"
9 9
 )
10 10
 
11 11
 type NetworkMode string
... ...
@@ -3,8 +3,8 @@ package runconfig
3 3
 import (
4 4
 	"strings"
5 5
 
6
-	"github.com/dotcloud/docker/nat"
7
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/nat"
7
+	"github.com/docker/docker/utils"
8 8
 )
9 9
 
10 10
 func Merge(userConf, imageConf *Config) error {
... ...
@@ -6,12 +6,12 @@ import (
6 6
 	"path"
7 7
 	"strings"
8 8
 
9
-	"github.com/dotcloud/docker/nat"
10
-	"github.com/dotcloud/docker/opts"
11
-	flag "github.com/dotcloud/docker/pkg/mflag"
12
-	"github.com/dotcloud/docker/pkg/sysinfo"
13
-	"github.com/dotcloud/docker/pkg/units"
14
-	"github.com/dotcloud/docker/utils"
9
+	"github.com/docker/docker/nat"
10
+	"github.com/docker/docker/opts"
11
+	flag "github.com/docker/docker/pkg/mflag"
12
+	"github.com/docker/docker/pkg/sysinfo"
13
+	"github.com/docker/docker/pkg/units"
14
+	"github.com/docker/docker/utils"
15 15
 )
16 16
 
17 17
 var (
... ...
@@ -3,7 +3,7 @@ package runconfig
3 3
 import (
4 4
 	"testing"
5 5
 
6
-	"github.com/dotcloud/docker/utils"
6
+	"github.com/docker/docker/utils"
7 7
 )
8 8
 
9 9
 func TestParseLxcConfOpt(t *testing.T) {
... ...
@@ -19,14 +19,14 @@ import (
19 19
 	"syscall"
20 20
 	"time"
21 21
 
22
-	"github.com/dotcloud/docker/archive"
23
-	"github.com/dotcloud/docker/daemon"
24
-	"github.com/dotcloud/docker/nat"
25
-	"github.com/dotcloud/docker/pkg/symlink"
26
-	"github.com/dotcloud/docker/pkg/system"
27
-	"github.com/dotcloud/docker/registry"
28
-	"github.com/dotcloud/docker/runconfig"
29
-	"github.com/dotcloud/docker/utils"
22
+	"github.com/docker/docker/archive"
23
+	"github.com/docker/docker/daemon"
24
+	"github.com/docker/docker/nat"
25
+	"github.com/docker/docker/pkg/symlink"
26
+	"github.com/docker/docker/pkg/system"
27
+	"github.com/docker/docker/registry"
28
+	"github.com/docker/docker/runconfig"
29
+	"github.com/docker/docker/utils"
30 30
 )
31 31
 
32 32
 var (
... ...
@@ -45,20 +45,20 @@ import (
45 45
 	"syscall"
46 46
 	"time"
47 47
 
48
-	"github.com/dotcloud/docker/archive"
49
-	"github.com/dotcloud/docker/daemon"
50
-	"github.com/dotcloud/docker/daemonconfig"
51
-	"github.com/dotcloud/docker/dockerversion"
52
-	"github.com/dotcloud/docker/engine"
53
-	"github.com/dotcloud/docker/graph"
54
-	"github.com/dotcloud/docker/image"
55
-	"github.com/dotcloud/docker/pkg/graphdb"
56
-	"github.com/dotcloud/docker/pkg/signal"
57
-	"github.com/dotcloud/docker/pkg/tailfile"
58
-	"github.com/dotcloud/docker/registry"
59
-	"github.com/dotcloud/docker/runconfig"
60
-	"github.com/dotcloud/docker/utils"
61
-	"github.com/dotcloud/docker/utils/filters"
48
+	"github.com/docker/docker/archive"
49
+	"github.com/docker/docker/daemon"
50
+	"github.com/docker/docker/daemonconfig"
51
+	"github.com/docker/docker/dockerversion"
52
+	"github.com/docker/docker/engine"
53
+	"github.com/docker/docker/graph"
54
+	"github.com/docker/docker/image"
55
+	"github.com/docker/docker/pkg/graphdb"
56
+	"github.com/docker/docker/pkg/signal"
57
+	"github.com/docker/docker/pkg/tailfile"
58
+	"github.com/docker/docker/registry"
59
+	"github.com/docker/docker/runconfig"
60
+	"github.com/docker/docker/utils"
61
+	"github.com/docker/docker/utils/filters"
62 62
 )
63 63
 
64 64
 func (srv *Server) handlerWrap(h engine.Handler) engine.Handler {
... ...
@@ -4,7 +4,7 @@ import (
4 4
 	"testing"
5 5
 	"time"
6 6
 
7
-	"github.com/dotcloud/docker/utils"
7
+	"github.com/docker/docker/utils"
8 8
 )
9 9
 
10 10
 func TestPools(t *testing.T) {
... ...
@@ -6,9 +6,9 @@ import (
6 6
 	"log"
7 7
 	"os"
8 8
 
9
-	"github.com/dotcloud/docker/daemon/execdriver"
10
-	_ "github.com/dotcloud/docker/daemon/execdriver/lxc"
11
-	_ "github.com/dotcloud/docker/daemon/execdriver/native"
9
+	"github.com/docker/docker/daemon/execdriver"
10
+	_ "github.com/docker/docker/daemon/execdriver/lxc"
11
+	_ "github.com/docker/docker/daemon/execdriver/native"
12 12
 )
13 13
 
14 14
 func executeProgram(args *execdriver.InitArgs) error {
... ...
@@ -7,7 +7,7 @@ import (
7 7
 	"sync"
8 8
 	"time"
9 9
 
10
-	"github.com/dotcloud/docker/utils"
10
+	"github.com/docker/docker/utils"
11 11
 )
12 12
 
13 13
 // BroadcastWriter accumulate multiple io.WriteCloser by stream.
... ...
@@ -7,8 +7,8 @@ import (
7 7
 	"strings"
8 8
 	"time"
9 9
 
10
-	"github.com/dotcloud/docker/pkg/term"
11
-	"github.com/dotcloud/docker/pkg/units"
10
+	"github.com/docker/docker/pkg/term"
11
+	"github.com/docker/docker/pkg/units"
12 12
 )
13 13
 
14 14
 type JSONError struct {
... ...
@@ -5,7 +5,7 @@ import (
5 5
 	"compress/gzip"
6 6
 	"crypto/sha256"
7 7
 	"encoding/hex"
8
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
8
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
9 9
 	"hash"
10 10
 	"io"
11 11
 	"sort"
... ...
@@ -9,7 +9,7 @@ import (
9 9
 	"os"
10 10
 	"testing"
11 11
 
12
-	"github.com/dotcloud/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
12
+	"github.com/docker/docker/vendor/src/code.google.com/p/go/src/pkg/archive/tar"
13 13
 )
14 14
 
15 15
 type testLayer struct {
... ...
@@ -22,7 +22,7 @@ import (
22 22
 	"syscall"
23 23
 	"time"
24 24
 
25
-	"github.com/dotcloud/docker/dockerversion"
25
+	"github.com/docker/docker/dockerversion"
26 26
 )
27 27
 
28 28
 type KeyValuePair struct {
... ...
@@ -128,23 +128,23 @@ func TestParseRepositoryTag(t *testing.T) {
128 128
 func TestCheckLocalDns(t *testing.T) {
129 129
 	for resolv, result := range map[string]bool{`# Dynamic
130 130
 nameserver 10.0.2.3
131
-search dotcloud.net`: false,
131
+search docker.com`: false,
132 132
 		`# Dynamic
133 133
 #nameserver 127.0.0.1
134 134
 nameserver 10.0.2.3
135
-search dotcloud.net`: false,
135
+search docker.com`: false,
136 136
 		`# Dynamic
137 137
 nameserver 10.0.2.3 #not used 127.0.1.1
138
-search dotcloud.net`: false,
138
+search docker.com`: false,
139 139
 		`# Dynamic
140 140
 #nameserver 10.0.2.3
141
-#search dotcloud.net`: true,
141
+#search docker.com`: true,
142 142
 		`# Dynamic
143 143
 nameserver 127.0.0.1
144
-search dotcloud.net`: true,
144
+search docker.com`: true,
145 145
 		`# Dynamic
146 146
 nameserver 127.0.1.1
147
-search dotcloud.net`: true,
147
+search docker.com`: true,
148 148
 		`# Dynamic
149 149
 `: true,
150 150
 		``: true,
... ...
@@ -6,14 +6,15 @@ sudo: false
6 6
 
7 7
 env:
8 8
     - TRAVIS_GLOBAL_WTF=1
9
-    - _GOOS=linux _GOARCH=amd64
10
-#    - _GOOS=linux _GOARCH=386 # Travis can't currently do 32bit cgo... (see https://travis-ci.org/tianon/libcontainer/jobs/30126518#L168)
11
-#    - _GOOS=linux _GOARCH=arm # see https://github.com/moovweb/gvm/issues/22
9
+    - _GOOS=linux _GOARCH=amd64 CGO_ENABLED=1
10
+    - _GOOS=linux _GOARCH=amd64 CGO_ENABLED=0
11
+#    - _GOOS=linux _GOARCH=386 CGO_ENABLED=1 # TODO add this once Travis can handle it (https://github.com/travis-ci/travis-ci/issues/2207#issuecomment-49625061)
12
+    - _GOOS=linux _GOARCH=386 CGO_ENABLED=0
13
+    - _GOOS=linux _GOARCH=arm CGO_ENABLED=0
12 14
 
13 15
 install:
14 16
     - mkdir -pv "${GOPATH%%:*}/src/github.com/docker" && [ -d "${GOPATH%%:*}/src/github.com/docker/libcontainer" ] || ln -sv "$(readlink -f .)" "${GOPATH%%:*}/src/github.com/docker/libcontainer"
15 17
     - if [ -z "$TRAVIS_GLOBAL_WTF" ]; then
16
-          export CGO_ENABLED=1;
17 18
           gvm cross "$_GOOS" "$_GOARCH";
18 19
           export GOOS="$_GOOS" GOARCH="$_GOARCH";
19 20
       fi
... ...
@@ -30,4 +31,4 @@ script:
30 30
     - if [ "$TRAVIS_GLOBAL_WTF" ]; then bash "$DOCKER_PATH/hack/make/validate-dco"; fi
31 31
     - if [ "$TRAVIS_GLOBAL_WTF" ]; then bash "$DOCKER_PATH/hack/make/validate-gofmt"; fi
32 32
     - if [ -z "$TRAVIS_GLOBAL_WTF" ]; then go build -v ./...; fi
33
-    - if [ -z "$TRAVIS_GLOBAL_WTF" ]; then go test -v ./...; fi
33
+    - if [ -z "$TRAVIS_GLOBAL_WTF" -a "$GOARCH" != 'arm' ]; then go test -test.short -v ./...; fi
... ...
@@ -1,8 +1,21 @@
1 1
 FROM crosbymichael/golang
2 2
 
3 3
 RUN apt-get update && apt-get install -y gcc
4
+RUN go get code.google.com/p/go.tools/cmd/cover
4 5
 
5
-ADD . /go/src/github.com/docker/libcontainer
6
-RUN cd /go/src/github.com/docker/libcontainer && go get -d ./... && go install ./...
6
+# setup a playground for us to spawn containers in
7
+RUN mkdir /busybox && \
8
+    curl -sSL 'https://github.com/jpetazzo/docker-busybox/raw/buildroot-2014.02/rootfs.tar' | tar -xC /busybox
7 9
 
8
-CMD ["nsinit"]
10
+RUN curl -sSL https://raw.githubusercontent.com/docker/docker/master/hack/dind -o /dind && \
11
+    chmod +x /dind
12
+
13
+COPY . /go/src/github.com/docker/libcontainer
14
+WORKDIR /go/src/github.com/docker/libcontainer
15
+RUN cp sample_configs/minimal.json /busybox/container.json
16
+
17
+RUN go get -d -v ./...
18
+RUN go install -v ./...
19
+
20
+ENTRYPOINT ["/dind"]
21
+CMD ["go", "test", "-cover", "./..."]
9 22
new file mode 100644
... ...
@@ -0,0 +1,10 @@
0
+
1
+all:
2
+	docker build -t docker/libcontainer .
3
+
4
+test:
5
+	# we need NET_ADMIN for the netlink tests and SYS_ADMIN for mounting
6
+	docker run --rm --cap-add NET_ADMIN --cap-add SYS_ADMIN docker/libcontainer
7
+
8
+sh:
9
+	docker run --rm -ti -w /busybox --rm --cap-add NET_ADMIN --cap-add SYS_ADMIN docker/libcontainer nsinit exec sh
... ...
@@ -14,9 +14,9 @@ import (
14 14
 	"time"
15 15
 
16 16
 	systemd1 "github.com/coreos/go-systemd/dbus"
17
+	"github.com/docker/docker/pkg/systemd"
17 18
 	"github.com/docker/libcontainer/cgroups"
18 19
 	"github.com/docker/libcontainer/cgroups/fs"
19
-	"github.com/dotcloud/docker/pkg/systemd"
20 20
 	"github.com/godbus/dbus"
21 21
 )
22 22
 
... ...
@@ -9,7 +9,7 @@ import (
9 9
 	"strconv"
10 10
 	"strings"
11 11
 
12
-	"github.com/dotcloud/docker/pkg/mount"
12
+	"github.com/docker/docker/pkg/mount"
13 13
 )
14 14
 
15 15
 // https://www.kernel.org/doc/Documentation/cgroups/cgroups.txt
... ...
@@ -97,7 +97,7 @@ func GetAllSubsystems() ([]string, error) {
97 97
 		text := s.Text()
98 98
 		if text[0] != '#' {
99 99
 			parts := strings.Fields(text)
100
-			if len(parts) > 4 && parts[3] != "0" {
100
+			if len(parts) >= 4 && parts[3] != "0" {
101 101
 				subsystems = append(subsystems, parts[0])
102 102
 			}
103 103
 		}
... ...
@@ -146,8 +146,8 @@ var (
146 146
 			// /dev/fuse is created but not allowed.
147 147
 			// This is to allow java to work.  Because java
148 148
 			// Insists on there being a /dev/fuse
149
-			// https://github.com/dotcloud/docker/issues/514
150
-			// https://github.com/dotcloud/docker/issues/2393
149
+			// https://github.com/docker/docker/issues/514
150
+			// https://github.com/docker/docker/issues/2393
151 151
 			//
152 152
 			Path:              "/dev/fuse",
153 153
 			Type:              'c',
... ...
@@ -8,9 +8,9 @@ import (
8 8
 	"path/filepath"
9 9
 	"syscall"
10 10
 
11
+	"github.com/docker/docker/pkg/symlink"
11 12
 	"github.com/docker/libcontainer/label"
12 13
 	"github.com/docker/libcontainer/mount/nodes"
13
-	"github.com/dotcloud/docker/pkg/symlink"
14 14
 )
15 15
 
16 16
 // default mount point flags
... ...
@@ -52,9 +52,17 @@ func InitializeMountNamespace(rootfs, console string, sysReadonly bool, mountCon
52 52
 	if err := SetupPtmx(rootfs, console, mountConfig.MountLabel); err != nil {
53 53
 		return err
54 54
 	}
55
+
56
+	// stdin, stdout and stderr could be pointing to /dev/null from parent namespace.
57
+	// Re-open them inside this namespace.
58
+	if err := reOpenDevNull(rootfs); err != nil {
59
+		return fmt.Errorf("Failed to reopen /dev/null %s", err)
60
+	}
61
+
55 62
 	if err := setupDevSymlinks(rootfs); err != nil {
56 63
 		return fmt.Errorf("dev symlinks %s", err)
57 64
 	}
65
+
58 66
 	if err := syscall.Chdir(rootfs); err != nil {
59 67
 		return fmt.Errorf("chdir into %s %s", rootfs, err)
60 68
 	}
... ...
@@ -208,3 +216,29 @@ func newSystemMounts(rootfs, mountLabel string, sysReadonly bool, mounts Mounts)
208 208
 
209 209
 	return systemMounts
210 210
 }
211
+
212
+// Is stdin, stdout or stderr were to be pointing to '/dev/null',
213
+// this method will make them point to '/dev/null' from within this namespace.
214
+func reOpenDevNull(rootfs string) error {
215
+	var stat, devNullStat syscall.Stat_t
216
+	file, err := os.Open(filepath.Join(rootfs, "/dev/null"))
217
+	if err != nil {
218
+		return fmt.Errorf("Failed to open /dev/null - %s", err)
219
+	}
220
+	defer file.Close()
221
+	if err = syscall.Fstat(int(file.Fd()), &devNullStat); err != nil {
222
+		return fmt.Errorf("Failed to stat /dev/null - %s", err)
223
+	}
224
+	for fd := 0; fd < 3; fd++ {
225
+		if err = syscall.Fstat(fd, &stat); err != nil {
226
+			return fmt.Errorf("Failed to stat fd %d - %s", fd, err)
227
+		}
228
+		if stat.Rdev == devNullStat.Rdev {
229
+			// Close and re-open the fd.
230
+			if err = syscall.Dup2(int(file.Fd()), fd); err != nil {
231
+				return fmt.Errorf("Failed to dup fd %d to fd %d - %s", file.Fd(), fd)
232
+			}
233
+		}
234
+	}
235
+	return nil
236
+}
... ...
@@ -4,32 +4,96 @@ package namespaces
4 4
 
5 5
 import (
6 6
 	"encoding/json"
7
-	"os"
8
-	"strconv"
9
-
10 7
 	"github.com/docker/libcontainer"
11 8
 	"github.com/docker/libcontainer/label"
12 9
 	"github.com/docker/libcontainer/system"
10
+	"io"
11
+	"os"
12
+	"os/exec"
13
+	"strconv"
14
+	"syscall"
13 15
 )
14 16
 
17
+// Runs the command under 'args' inside an existing container referred to by 'container'.
18
+// Returns the exitcode of the command upon success and appropriate error on failure.
19
+func RunIn(container *libcontainer.Config, state *libcontainer.State, args []string, nsinitPath string, stdin io.Reader, stdout, stderr io.Writer, console string, startCallback func(*exec.Cmd)) (int, error) {
20
+	initArgs, err := getNsEnterCommand(strconv.Itoa(state.InitPid), container, console, args)
21
+	if err != nil {
22
+		return -1, err
23
+	}
24
+
25
+	cmd := exec.Command(nsinitPath, initArgs...)
26
+	// Note: these are only used in non-tty mode
27
+	// if there is a tty for the container it will be opened within the namespace and the
28
+	// fds will be duped to stdin, stdiout, and stderr
29
+	cmd.Stdin = stdin
30
+	cmd.Stdout = stdout
31
+	cmd.Stderr = stderr
32
+
33
+	if err := cmd.Start(); err != nil {
34
+		return -1, err
35
+	}
36
+	if startCallback != nil {
37
+		startCallback(cmd)
38
+	}
39
+
40
+	if err := cmd.Wait(); err != nil {
41
+		if _, ok := err.(*exec.ExitError); !ok {
42
+			return -1, err
43
+		}
44
+	}
45
+
46
+	return cmd.ProcessState.Sys().(syscall.WaitStatus).ExitStatus(), nil
47
+}
48
+
15 49
 // ExecIn uses an existing pid and joins the pid's namespaces with the new command.
16 50
 func ExecIn(container *libcontainer.Config, state *libcontainer.State, args []string) error {
17
-	// TODO(vmarmol): If this gets too long, send it over a pipe to the child.
18
-	// Marshall the container into JSON since it won't be available in the namespace.
19
-	containerJson, err := json.Marshal(container)
51
+	// Enter the namespace and then finish setup
52
+	args, err := getNsEnterCommand(strconv.Itoa(state.InitPid), container, "", args)
20 53
 	if err != nil {
21 54
 		return err
22 55
 	}
23 56
 
24
-	// Enter the namespace and then finish setup
25
-	finalArgs := []string{os.Args[0], "nsenter", "--nspid", strconv.Itoa(state.InitPid), "--containerjson", string(containerJson), "--"}
26
-	finalArgs = append(finalArgs, args...)
57
+	finalArgs := append([]string{os.Args[0]}, args...)
58
+
27 59
 	if err := system.Execv(finalArgs[0], finalArgs[0:], os.Environ()); err != nil {
28 60
 		return err
29 61
 	}
62
+
30 63
 	panic("unreachable")
31 64
 }
32 65
 
66
+func getContainerJson(container *libcontainer.Config) (string, error) {
67
+	// TODO(vmarmol): If this gets too long, send it over a pipe to the child.
68
+	// Marshall the container into JSON since it won't be available in the namespace.
69
+	containerJson, err := json.Marshal(container)
70
+	if err != nil {
71
+		return "", err
72
+	}
73
+	return string(containerJson), nil
74
+}
75
+
76
+func getNsEnterCommand(initPid string, container *libcontainer.Config, console string, args []string) ([]string, error) {
77
+	containerJson, err := getContainerJson(container)
78
+	if err != nil {
79
+		return nil, err
80
+	}
81
+
82
+	out := []string{
83
+		"nsenter",
84
+		"--nspid", initPid,
85
+		"--containerjson", containerJson,
86
+	}
87
+
88
+	if console != "" {
89
+		out = append(out, "--console", console)
90
+	}
91
+	out = append(out, "--")
92
+	out = append(out, args...)
93
+
94
+	return out, nil
95
+}
96
+
33 97
 // Run a command in a container after entering the namespace.
34 98
 func NsEnter(container *libcontainer.Config, args []string) error {
35 99
 	// clear the current processes env and replace it with the environment
... ...
@@ -9,6 +9,7 @@ import (
9 9
 	"strings"
10 10
 	"syscall"
11 11
 
12
+	"github.com/docker/docker/pkg/user"
12 13
 	"github.com/docker/libcontainer"
13 14
 	"github.com/docker/libcontainer/apparmor"
14 15
 	"github.com/docker/libcontainer/console"
... ...
@@ -21,7 +22,6 @@ import (
21 21
 	"github.com/docker/libcontainer/syncpipe"
22 22
 	"github.com/docker/libcontainer/system"
23 23
 	"github.com/docker/libcontainer/utils"
24
-	"github.com/dotcloud/docker/pkg/user"
25 24
 )
26 25
 
27 26
 // TODO(vishh): This is part of the libcontainer API and it does much more than just namespaces related work.
... ...
@@ -88,6 +88,7 @@ void nsenter() {
88 88
 	static const struct option longopts[] = {
89 89
 		{ "nspid",         required_argument, NULL, 'n' },
90 90
 		{ "containerjson", required_argument, NULL, 'c' },
91
+                { "console",       required_argument, NULL, 't' },
91 92
 		{ NULL,            0,                 NULL,  0  }
92 93
 	};
93 94
 
... ...
@@ -95,6 +96,7 @@ void nsenter() {
95 95
 	pid_t init_pid = -1;
96 96
 	char *init_pid_str = NULL;
97 97
 	char *container_json = NULL;
98
+        char *console = NULL;
98 99
 	while ((c = getopt_long_only(argc, argv, "n:s:c:", longopts, NULL)) != -1) {
99 100
 		switch (c) {
100 101
 		case 'n':
... ...
@@ -103,6 +105,9 @@ void nsenter() {
103 103
 		case 'c':
104 104
 			container_json = optarg;
105 105
 			break;
106
+		case 't':
107
+			console = optarg;
108
+			break;
106 109
 		}
107 110
 	}
108 111
 
... ...
@@ -121,6 +126,21 @@ void nsenter() {
121 121
 	argc -= 3;
122 122
 	argv += 3;
123 123
 
124
+        if (setsid() == -1) {
125
+               fprintf(stderr, "setsid failed. Error: %s\n", strerror(errno));
126
+               exit(1);
127
+        }
128
+
129
+        // before we setns we need to dup the console
130
+        int consolefd = -1;
131
+        if (console != NULL) {
132
+               consolefd = open(console, O_RDWR);
133
+               if (consolefd < 0) {
134
+                    fprintf(stderr, "nsenter: failed to open console %s %s\n", console, strerror(errno));
135
+                    exit(1);
136
+              }
137
+        }
138
+
124 139
 	// Setns on all supported namespaces.
125 140
 	char ns_dir[PATH_MAX];
126 141
 	memset(ns_dir, 0, PATH_MAX);
... ...
@@ -159,6 +179,21 @@ void nsenter() {
159 159
 	// We must fork to actually enter the PID namespace.
160 160
 	int child = fork();
161 161
 	if (child == 0) {
162
+       if (consolefd != -1) {
163
+        if (dup2(consolefd, STDIN_FILENO) != 0) {
164
+            fprintf(stderr, "nsenter: failed to dup 0 %s\n",  strerror(errno));
165
+            exit(1);
166
+        }
167
+        if (dup2(consolefd, STDOUT_FILENO) != STDOUT_FILENO) {
168
+            fprintf(stderr, "nsenter: failed to dup 1 %s\n",  strerror(errno));
169
+            exit(1);
170
+        }
171
+        if (dup2(consolefd, STDERR_FILENO) != STDERR_FILENO) {
172
+            fprintf(stderr, "nsenter: failed to dup 2 %s\n",  strerror(errno));
173
+            exit(1);
174
+        }
175
+}
176
+
162 177
 		// Finish executing, let the Go runtime take over.
163 178
 		return;
164 179
 	} else {
... ...
@@ -17,21 +17,27 @@ const (
17 17
 	VETH_INFO_PEER = 1
18 18
 	IFLA_NET_NS_FD = 28
19 19
 	SIOC_BRADDBR   = 0x89a0
20
+	SIOC_BRDELBR   = 0x89a1
20 21
 	SIOC_BRADDIF   = 0x89a2
21 22
 )
22 23
 
23 24
 var nextSeqNr uint32
24 25
 
25 26
 type ifreqHwaddr struct {
26
-	IfrnName   [16]byte
27
+	IfrnName   [IFNAMSIZ]byte
27 28
 	IfruHwaddr syscall.RawSockaddr
28 29
 }
29 30
 
30 31
 type ifreqIndex struct {
31
-	IfrnName  [16]byte
32
+	IfrnName  [IFNAMSIZ]byte
32 33
 	IfruIndex int32
33 34
 }
34 35
 
36
+type ifreqFlags struct {
37
+	IfrnName  [IFNAMSIZ]byte
38
+	Ifruflags uint16
39
+}
40
+
35 41
 func nativeEndian() binary.ByteOrder {
36 42
 	var x uint32 = 0x01020304
37 43
 	if *(*byte)(unsafe.Pointer(&x)) == 0x01 {
... ...
@@ -843,6 +849,10 @@ func getIfSocket() (fd int, err error) {
843 843
 }
844 844
 
845 845
 func NetworkChangeName(iface *net.Interface, newName string) error {
846
+	if len(newName) >= IFNAMSIZ {
847
+		return fmt.Errorf("Interface name %s too long", newName)
848
+	}
849
+
846 850
 	fd, err := getIfSocket()
847 851
 	if err != nil {
848 852
 		return err
... ...
@@ -895,13 +905,13 @@ func NetworkCreateVethPair(name1, name2 string) error {
895 895
 // Create the actual bridge device.  This is more backward-compatible than
896 896
 // netlink.NetworkLinkAdd and works on RHEL 6.
897 897
 func CreateBridge(name string, setMacAddr bool) error {
898
-	s, err := syscall.Socket(syscall.AF_INET6, syscall.SOCK_STREAM, syscall.IPPROTO_IP)
898
+	if len(name) >= IFNAMSIZ {
899
+		return fmt.Errorf("Interface name %s too long", name)
900
+	}
901
+
902
+	s, err := getIfSocket()
899 903
 	if err != nil {
900
-		// ipv6 issue, creating with ipv4
901
-		s, err = syscall.Socket(syscall.AF_INET, syscall.SOCK_STREAM, syscall.IPPROTO_IP)
902
-		if err != nil {
903
-			return err
904
-		}
904
+		return err
905 905
 	}
906 906
 	defer syscall.Close(s)
907 907
 
... ...
@@ -918,21 +928,48 @@ func CreateBridge(name string, setMacAddr bool) error {
918 918
 	return nil
919 919
 }
920 920
 
921
+// Delete the actual bridge device.
922
+func DeleteBridge(name string) error {
923
+	s, err := getIfSocket()
924
+	if err != nil {
925
+		return err
926
+	}
927
+	defer syscall.Close(s)
928
+
929
+	nameBytePtr, err := syscall.BytePtrFromString(name)
930
+	if err != nil {
931
+		return err
932
+	}
933
+
934
+	var ifr ifreqFlags
935
+	copy(ifr.IfrnName[:len(ifr.IfrnName)-1], []byte(name))
936
+	if _, _, err := syscall.Syscall(syscall.SYS_IOCTL, uintptr(s),
937
+		syscall.SIOCSIFFLAGS, uintptr(unsafe.Pointer(&ifr))); err != 0 {
938
+		return err
939
+	}
940
+
941
+	if _, _, err := syscall.Syscall(syscall.SYS_IOCTL, uintptr(s),
942
+		SIOC_BRDELBR, uintptr(unsafe.Pointer(nameBytePtr))); err != 0 {
943
+		return err
944
+	}
945
+	return nil
946
+}
947
+
921 948
 // Add a slave to abridge device.  This is more backward-compatible than
922 949
 // netlink.NetworkSetMaster and works on RHEL 6.
923 950
 func AddToBridge(iface, master *net.Interface) error {
924
-	s, err := syscall.Socket(syscall.AF_INET6, syscall.SOCK_STREAM, syscall.IPPROTO_IP)
951
+	if len(master.Name) >= IFNAMSIZ {
952
+		return fmt.Errorf("Interface name %s too long", master.Name)
953
+	}
954
+
955
+	s, err := getIfSocket()
925 956
 	if err != nil {
926
-		// ipv6 issue, creating with ipv4
927
-		s, err = syscall.Socket(syscall.AF_INET, syscall.SOCK_STREAM, syscall.IPPROTO_IP)
928
-		if err != nil {
929
-			return err
930
-		}
957
+		return err
931 958
 	}
932 959
 	defer syscall.Close(s)
933 960
 
934 961
 	ifr := ifreqIndex{}
935
-	copy(ifr.IfrnName[:], master.Name)
962
+	copy(ifr.IfrnName[:len(ifr.IfrnName)-1], master.Name)
936 963
 	ifr.IfruIndex = int32(iface.Index)
937 964
 
938 965
 	if _, _, err := syscall.Syscall(syscall.SYS_IOCTL, uintptr(s), SIOC_BRADDIF, uintptr(unsafe.Pointer(&ifr))); err != 0 {
... ...
@@ -943,9 +980,13 @@ func AddToBridge(iface, master *net.Interface) error {
943 943
 }
944 944
 
945 945
 func setBridgeMacAddress(s int, name string) error {
946
+	if len(name) >= IFNAMSIZ {
947
+		return fmt.Errorf("Interface name %s too long", name)
948
+	}
949
+
946 950
 	ifr := ifreqHwaddr{}
947 951
 	ifr.IfruHwaddr.Family = syscall.ARPHRD_ETHER
948
-	copy(ifr.IfrnName[:], name)
952
+	copy(ifr.IfrnName[:len(ifr.IfrnName)-1], name)
949 953
 
950 954
 	for i := 0; i < 6; i++ {
951 955
 		ifr.IfruHwaddr.Data[i] = randIfrDataByte()
952 956
new file mode 100644
... ...
@@ -0,0 +1,55 @@
0
+package netlink
1
+
2
+import (
3
+	"net"
4
+	"testing"
5
+)
6
+
7
+func TestCreateBridgeWithMac(t *testing.T) {
8
+	if testing.Short() {
9
+		return
10
+	}
11
+
12
+	name := "testbridge"
13
+
14
+	if err := CreateBridge(name, true); err != nil {
15
+		t.Fatal(err)
16
+	}
17
+
18
+	if _, err := net.InterfaceByName(name); err != nil {
19
+		t.Fatal(err)
20
+	}
21
+
22
+	// cleanup and tests
23
+
24
+	if err := DeleteBridge(name); err != nil {
25
+		t.Fatal(err)
26
+	}
27
+
28
+	if _, err := net.InterfaceByName(name); err == nil {
29
+		t.Fatal("expected error getting interface because bridge was deleted")
30
+	}
31
+}
32
+
33
+func TestCreateVethPair(t *testing.T) {
34
+	if testing.Short() {
35
+		return
36
+	}
37
+
38
+	var (
39
+		name1 = "veth1"
40
+		name2 = "veth2"
41
+	)
42
+
43
+	if err := NetworkCreateVethPair(name1, name2); err != nil {
44
+		t.Fatal(err)
45
+	}
46
+
47
+	if _, err := net.InterfaceByName(name1); err != nil {
48
+		t.Fatal(err)
49
+	}
50
+
51
+	if _, err := net.InterfaceByName(name2); err != nil {
52
+		t.Fatal(err)
53
+	}
54
+}
... ...
@@ -67,6 +67,10 @@ func CreateBridge(name string, setMacAddr bool) error {
67 67
 	return ErrNotImplemented
68 68
 }
69 69
 
70
+func DeleteBridge(name string) error {
71
+	return ErrNotImplemented
72
+}
73
+
70 74
 func AddToBridge(iface, master *net.Interface) error {
71 75
 	return ErrNotImplemented
72 76
 }
... ...
@@ -9,36 +9,37 @@ import (
9 9
 )
10 10
 
11 11
 type NetworkStats struct {
12
-	RxBytes   uint64 `json:"rx_bytes,omitempty"`
13
-	RxPackets uint64 `json:"rx_packets,omitempty"`
14
-	RxErrors  uint64 `json:"rx_errors,omitempty"`
15
-	RxDropped uint64 `json:"rx_dropped,omitempty"`
16
-	TxBytes   uint64 `json:"tx_bytes,omitempty"`
17
-	TxPackets uint64 `json:"tx_packets,omitempty"`
18
-	TxErrors  uint64 `json:"tx_errors,omitempty"`
19
-	TxDropped uint64 `json:"tx_dropped,omitempty"`
12
+	RxBytes   uint64 `json:"rx_bytes"`
13
+	RxPackets uint64 `json:"rx_packets"`
14
+	RxErrors  uint64 `json:"rx_errors"`
15
+	RxDropped uint64 `json:"rx_dropped"`
16
+	TxBytes   uint64 `json:"tx_bytes"`
17
+	TxPackets uint64 `json:"tx_packets"`
18
+	TxErrors  uint64 `json:"tx_errors"`
19
+	TxDropped uint64 `json:"tx_dropped"`
20 20
 }
21 21
 
22 22
 // Returns the network statistics for the network interfaces represented by the NetworkRuntimeInfo.
23
-func GetStats(networkState *NetworkState) (NetworkStats, error) {
23
+func GetStats(networkState *NetworkState) (*NetworkStats, error) {
24 24
 	// This can happen if the network runtime information is missing - possible if the container was created by an old version of libcontainer.
25 25
 	if networkState.VethHost == "" {
26
-		return NetworkStats{}, nil
26
+		return &NetworkStats{}, nil
27 27
 	}
28 28
 	data, err := readSysfsNetworkStats(networkState.VethHost)
29 29
 	if err != nil {
30
-		return NetworkStats{}, err
30
+		return nil, err
31 31
 	}
32 32
 
33
-	return NetworkStats{
34
-		RxBytes:   data["rx_bytes"],
35
-		RxPackets: data["rx_packets"],
36
-		RxErrors:  data["rx_errors"],
37
-		RxDropped: data["rx_dropped"],
38
-		TxBytes:   data["tx_bytes"],
39
-		TxPackets: data["tx_packets"],
40
-		TxErrors:  data["tx_errors"],
41
-		TxDropped: data["tx_dropped"],
33
+	// Ingress for host veth is from the container. Hence tx_bytes stat on the host veth is actually number of bytes received by the container.
34
+	return &NetworkStats{
35
+		RxBytes:   data["tx_bytes"],
36
+		RxPackets: data["tx_packets"],
37
+		RxErrors:  data["tx_errors"],
38
+		RxDropped: data["tx_dropped"],
39
+		TxBytes:   data["rx_bytes"],
40
+		TxPackets: data["rx_packets"],
41
+		TxErrors:  data["rx_errors"],
42
+		TxDropped: data["rx_dropped"],
42 43
 	}, nil
43 44
 }
44 45
 
... ...
@@ -10,10 +10,10 @@ import (
10 10
 	"syscall"
11 11
 
12 12
 	"github.com/codegangsta/cli"
13
+	"github.com/docker/docker/pkg/term"
13 14
 	"github.com/docker/libcontainer"
14 15
 	consolepkg "github.com/docker/libcontainer/console"
15 16
 	"github.com/docker/libcontainer/namespaces"
16
-	"github.com/dotcloud/docker/pkg/term"
17 17
 )
18 18
 
19 19
 var execCommand = cli.Command{
... ...
@@ -36,7 +36,7 @@ func execAction(context *cli.Context) {
36 36
 	}
37 37
 
38 38
 	if state != nil {
39
-		err = namespaces.ExecIn(container, state, []string(context.Args()))
39
+		exitCode, err = runIn(container, state, []string(context.Args()))
40 40
 	} else {
41 41
 		exitCode, err = startContainer(container, dataPath, []string(context.Args()))
42 42
 	}
... ...
@@ -48,6 +48,59 @@ func execAction(context *cli.Context) {
48 48
 	os.Exit(exitCode)
49 49
 }
50 50
 
51
+func runIn(container *libcontainer.Config, state *libcontainer.State, args []string) (int, error) {
52
+	var (
53
+		master  *os.File
54
+		console string
55
+		err     error
56
+
57
+		stdin  = os.Stdin
58
+		stdout = os.Stdout
59
+		stderr = os.Stderr
60
+		sigc   = make(chan os.Signal, 10)
61
+	)
62
+
63
+	signal.Notify(sigc)
64
+
65
+	if container.Tty {
66
+		stdin = nil
67
+		stdout = nil
68
+		stderr = nil
69
+
70
+		master, console, err = consolepkg.CreateMasterAndConsole()
71
+		if err != nil {
72
+			log.Fatal(err)
73
+		}
74
+
75
+		go io.Copy(master, os.Stdin)
76
+		go io.Copy(os.Stdout, master)
77
+
78
+		state, err := term.SetRawTerminal(os.Stdin.Fd())
79
+		if err != nil {
80
+			log.Fatal(err)
81
+		}
82
+
83
+		defer term.RestoreTerminal(os.Stdin.Fd(), state)
84
+	}
85
+
86
+	startCallback := func(cmd *exec.Cmd) {
87
+		go func() {
88
+			resizeTty(master)
89
+
90
+			for sig := range sigc {
91
+				switch sig {
92
+				case syscall.SIGWINCH:
93
+					resizeTty(master)
94
+				default:
95
+					cmd.Process.Signal(sig)
96
+				}
97
+			}
98
+		}()
99
+	}
100
+
101
+	return namespaces.RunIn(container, state, args, os.Args[0], stdin, stdout, stderr, console, startCallback)
102
+}
103
+
51 104
 // startContainer starts the container. Returns the exit status or -1 and an
52 105
 // error.
53 106
 //
... ...
@@ -14,6 +14,7 @@ var nsenterCommand = cli.Command{
14 14
 	Flags: []cli.Flag{
15 15
 		cli.IntFlag{Name: "nspid"},
16 16
 		cli.StringFlag{Name: "containerjson"},
17
+		cli.StringFlag{Name: "console"},
17 18
 	},
18 19
 }
19 20
 
... ...
@@ -15,8 +15,8 @@ import (
15 15
 	"strings"
16 16
 	"syscall"
17 17
 
18
+	"github.com/docker/docker/pkg/mount"
18 19
 	"github.com/docker/libcontainer/system"
19
-	"github.com/dotcloud/docker/pkg/mount"
20 20
 )
21 21
 
22 22
 const (
... ...
@@ -6,6 +6,6 @@ import (
6 6
 )
7 7
 
8 8
 type ContainerStats struct {
9
-	NetworkStats network.NetworkStats `json:"network_stats, omitempty"`
10
-	CgroupStats  *cgroups.Stats       `json:"cgroup_stats, omitempty"`
9
+	NetworkStats *network.NetworkStats `json:"network_stats,omitempty"`
10
+	CgroupStats  *cgroups.Stats        `json:"cgroup_stats,omitempty"`
11 11
 }