瀏覽代碼

Allow fd:// like unix:// and tcp://

Somthing like 20605eb310f0b57bd06eea80ec63c5022fc83bde

Docker-DCO-1.1-Signed-off-by: Brandon Philips <brandon.philips@coreos.com> (github: philips)
Brandon Philips 11 年之前
父節點
當前提交
7f9d3268bf

+ 1 - 1
contrib/init/systemd/socket-activation/docker.service

@@ -5,7 +5,7 @@ After=network.target
 
 [Service]
 ExecStartPre=/bin/mount --make-rprivate /
-ExecStart=/usr/bin/docker -d -H fd://*
+ExecStart=/usr/bin/docker -d -H fd://
 
 [Install]
 WantedBy=multi-user.target

+ 2 - 2
docs/sources/reference/commandline/cli.rst

@@ -63,8 +63,8 @@ the ``-H`` flag for the client.
         # both are equal
 
 
-To run the daemon with `systemd socket activation <http://0pointer.de/blog/projects/socket-activation.html>`, use ``docker -d -H fd://*``.
-Using ``fd://*`` will work perfectly for most setups but you can also specify individual sockets too ``docker -d -H fd://3``.
+To run the daemon with `systemd socket activation <http://0pointer.de/blog/projects/socket-activation.html>`, use ``docker -d -H fd://``.
+Using ``fd://`` will work perfectly for most setups but you can also specify individual sockets too ``docker -d -H fd://3``.
 If the specified socket activated files aren't found then docker will exit.
 You can find examples of using systemd socket activation with docker and systemd in the `docker source tree <https://github.com/dotcloud/docker/blob/master/contrib/init/systemd/socket-activation/>`.
 

+ 5 - 0
pkg/systemd/listendfd.go

@@ -17,6 +17,11 @@ func ListenFD(addr string) ([]net.Listener, error) {
 		return nil, errors.New("No sockets found")
 	}
 
+	// default to all fds just like unix:// and tcp://
+	if addr == "" {
+		addr = "*"
+	}
+
 	fdNum, _ := strconv.Atoi(addr)
 	fdOffset := fdNum - 3
 	if (addr != "*") && (len(files) < int(fdOffset)+1) {