| ... | ... |
@@ -115,6 +115,11 @@ For example: |
| 115 | 115 |
* ``tcp://host:4243`` -> tcp connection on host:4243 |
| 116 | 116 |
* ``unix://path/to/socket`` -> unix socket located at ``path/to/socket`` |
| 117 | 117 |
|
| 118 |
+``-H``, when empty, will default to the same value as when no ``-H`` was passed in. |
|
| 119 |
+ |
|
| 120 |
+``-H`` also accepts short form for TCP bindings: |
|
| 121 |
+``host[:port]`` or ``:port`` |
|
| 122 |
+ |
|
| 118 | 123 |
.. code-block:: bash |
| 119 | 124 |
|
| 120 | 125 |
# Run docker in daemon mode |
| ... | ... |
@@ -803,7 +803,7 @@ func ParseHost(defaultHost string, defaultPort int, defaultUnix, addr string) (s |
| 803 | 803 |
host string |
| 804 | 804 |
port int |
| 805 | 805 |
) |
| 806 |
- |
|
| 806 |
+ addr = strings.TrimSpace(addr) |
|
| 807 | 807 |
switch {
|
| 808 | 808 |
case strings.HasPrefix(addr, "unix://"): |
| 809 | 809 |
proto = "unix" |
| ... | ... |
@@ -814,6 +814,9 @@ func ParseHost(defaultHost string, defaultPort int, defaultUnix, addr string) (s |
| 814 | 814 |
case strings.HasPrefix(addr, "tcp://"): |
| 815 | 815 |
proto = "tcp" |
| 816 | 816 |
addr = strings.TrimPrefix(addr, "tcp://") |
| 817 |
+ case addr == "": |
|
| 818 |
+ proto = "unix" |
|
| 819 |
+ addr = defaultUnix |
|
| 817 | 820 |
default: |
| 818 | 821 |
if strings.Contains(addr, "://") {
|
| 819 | 822 |
return "", fmt.Errorf("Invalid bind address protocol: %s", addr)
|
| ... | ... |
@@ -316,6 +316,9 @@ func TestParseHost(t *testing.T) {
|
| 316 | 316 |
if addr, err := ParseHost(defaultHttpHost, defaultHttpPort, defaultUnix, "tcp://:7777"); err != nil || addr != "tcp://127.0.0.1:7777" {
|
| 317 | 317 |
t.Errorf("tcp://:7777 -> expected tcp://127.0.0.1:7777, got %s", addr)
|
| 318 | 318 |
} |
| 319 |
+ if addr, err := ParseHost(defaultHttpHost, defaultHttpPort, defaultUnix, ""); err != nil || addr != "unix:///var/run/docker.sock" {
|
|
| 320 |
+ t.Errorf("empty argument -> expected unix:///var/run/docker.sock, got %s", addr)
|
|
| 321 |
+ } |
|
| 319 | 322 |
if addr, err := ParseHost(defaultHttpHost, defaultHttpPort, defaultUnix, "unix:///var/run/docker.sock"); err != nil || addr != "unix:///var/run/docker.sock" {
|
| 320 | 323 |
t.Errorf("unix:///var/run/docker.sock -> expected unix:///var/run/docker.sock, got %s", addr)
|
| 321 | 324 |
} |