Skip to content

cli: add --mount to docker run#26825

Merged
vdemeester merged 1 commit intomoby:masterfrom
AkihiroSuda:mountcli
Nov 3, 2016
Merged

cli: add --mount to docker run#26825
vdemeester merged 1 commit intomoby:masterfrom
AkihiroSuda:mountcli

Conversation

@AkihiroSuda
Copy link
Member

@AkihiroSuda AkihiroSuda commented Sep 22, 2016

For those arriving here; After reviewing UX consistency in the client, this feature will be reverted for 1.13 (see #28838, and the discussion on #28527). This feature will return in another form in 1.14

Update: re-implemented in #32251, which is part of Docker 17.05


- What I did
add --mount to docker run, which enables the new mount api (#22373) for CLI.

- How I did it
Add a --mount as MountOpt.
So user can specify multiple --mount. (similar to docker service create..)

Also, user can mix up --mount and -v simultaneously.

- How to verify it

$ docker run --rm --mount type=bind,src=/host-foo,dst=/foo --mount type=bind,src=/host-bar,dst=/bar -v /host-baz:/baz  busybox ls /foo /bar /baz
/bar:
..
/baz:
..
/foo:
..

- Description for the changelog

cli: add --mount to docker run

- A picture of a cute animal (not mandatory but encouraged)
penguins flapping

Signed-off-by: Akihiro Suda [email protected]

@AkihiroSuda
Copy link
Member Author

CC @cpuguy83 @justincormack

@AkihiroSuda AkihiroSuda force-pushed the mountcli branch 3 times, most recently from 6f4b095 to 8504601 Compare September 22, 2016 17:02
@AkihiroSuda AkihiroSuda force-pushed the mountcli branch 2 times, most recently from dec2bc2 to 563986b Compare September 22, 2016 20:16
@AkihiroSuda
Copy link
Member Author

failure in windowsRS1 seems unrelated

21:31:19 ----------------------------------------------------------------------
21:31:19 FAIL: docker_cli_run_test.go:802: DockerSuite.TestRunTwoConcurrentContainers
21:31:19 
21:31:19 docker_cli_run_test.go:820:
21:31:19     c.Assert(err, check.IsNil)
21:31:19 ... value *errors.errorString = &errors.errorString{s:"\nCommand: d:\\CI\\CI-39cd29b\\binary\\docker.exe run busybox sleep 2\nExitCode: 125, Error: exit status 125\nStdout: \nStderr: d:\\CI\\CI-39cd29b\\binary\\docker.exe: Error response from daemon: container 2153ee63471d394bd279923e6733a77db9da94fa1bb67261c7406712218fe152 encountered an error during CreateContainer failed in Win32: Element not found. (0x490) extra info: {\"SystemType\":\"Container\",\"Name\":\"2153ee63471d394bd279923e6733a77db9da94fa1bb67261c7406712218fe152\",\"Owner\":\"docker\",\"IsDummy\":false,\"VolumePath\":\"\\\\\\\\?\\\\Volume{31b2b756-8108-11e6-8949-dee82bc6852d}\",\"IgnoreFlushesDuringBoot\":true,\"LayerFolderPath\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\2153ee63471d394bd279923e6733a77db9da94fa1bb67261c7406712218fe152\",\"Layers\":[{\"ID\":\"eb394478-6581-56f4-9cff-173cbc1a64f8\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\025ce77ed71d5c7253e4ab4d739d839eccaf5aaea12f98a4161aa4ad08cbfb07\"},{\"ID\":\"248fbefb-0605-57bd-bffb-dafbf4fe2241\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\a7ab19c270ef49f4fde9f1501561bd19ef0f3a3025e2330ae431bccd141630cd\"},{\"ID\":\"c7a1fa86-652e-5681-836d-6436c6644da2\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\7a645db94cc9e406579b8e0df2cf782c2b25f76797c1353d7655b53bf428020c\"},{\"ID\":\"57252f73-04a8-552a-9825-65f9884de79f\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\8d01ab67b49c1b2d0bd271283d418846b652127c6d38c9f59982686333fea84a\"},{\"ID\":\"7eee38b5-ee0f-5a87-8b26-2a2e6e2d31d9\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\454078b34108abf915da0b5468bfb592fb5797dd89203c6a5f2a01d892d9b86d\"},{\"ID\":\"a9cc1d10-032c-5861-a69c-b698569615a2\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\9c9be643d0e3a8a410616fba2e5ec0bedbd32db8590b48288e0598f8a67a01c9\"}],\"HostName\":\"2153ee63471d\",\"MappedDirectories\":[],\"SandboxPath\":\"\",\"HvPartition\":false,\"EndpointList\":[\"3680a695-8208-432d-915b-ac75b11afa1d\"],\"HvRuntime\":null,\"Servicing\":false}.\n\n\nFailures:\nExitCode was 125 expected 0\nExpected no error\n"} ("\nCommand: d:\\CI\\CI-39cd29b\\binary\\docker.exe run busybox sleep 2\nExitCode: 125, Error: exit status 125\nStdout: \nStderr: d:\\CI\\CI-39cd29b\\binary\\docker.exe: Error response from daemon: container 2153ee63471d394bd279923e6733a77db9da94fa1bb67261c7406712218fe152 encountered an error during CreateContainer failed in Win32: Element not found. (0x490) extra info: {\"SystemType\":\"Container\",\"Name\":\"2153ee63471d394bd279923e6733a77db9da94fa1bb67261c7406712218fe152\",\"Owner\":\"docker\",\"IsDummy\":false,\"VolumePath\":\"\\\\\\\\?\\\\Volume{31b2b756-8108-11e6-8949-dee82bc6852d}\",\"IgnoreFlushesDuringBoot\":true,\"LayerFolderPath\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\2153ee63471d394bd279923e6733a77db9da94fa1bb67261c7406712218fe152\",\"Layers\":[{\"ID\":\"eb394478-6581-56f4-9cff-173cbc1a64f8\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\025ce77ed71d5c7253e4ab4d739d839eccaf5aaea12f98a4161aa4ad08cbfb07\"},{\"ID\":\"248fbefb-0605-57bd-bffb-dafbf4fe2241\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\a7ab19c270ef49f4fde9f1501561bd19ef0f3a3025e2330ae431bccd141630cd\"},{\"ID\":\"c7a1fa86-652e-5681-836d-6436c6644da2\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\7a645db94cc9e406579b8e0df2cf782c2b25f76797c1353d7655b53bf428020c\"},{\"ID\":\"57252f73-04a8-552a-9825-65f9884de79f\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\8d01ab67b49c1b2d0bd271283d418846b652127c6d38c9f59982686333fea84a\"},{\"ID\":\"7eee38b5-ee0f-5a87-8b26-2a2e6e2d31d9\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\454078b34108abf915da0b5468bfb592fb5797dd89203c6a5f2a01d892d9b86d\"},{\"ID\":\"a9cc1d10-032c-5861-a69c-b698569615a2\",\"Path\":\"D:\\\\CI\\\\CI-39cd29b\\\\daemon\\\\windowsfilter\\\\9c9be643d0e3a8a410616fba2e5ec0bedbd32db8590b48288e0598f8a67a01c9\"}],\"HostName\":\"2153ee63471d\",\"MappedDirectories\":[],\"SandboxPath\":\"\",\"HvPartition\":false,\"EndpointList\":[\"3680a695-8208-432d-915b-ac75b11afa1d\"],\"HvRuntime\":null,\"Servicing\":false}.\n\n\nFailures:\nExitCode was 125 expected 0\nExpected no error\n")
21:31:19 
21:31:19 
21:31:19 ----------------------------------------------------------------------

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: this cmd should succeed in the future when it migrated -v to the new mount api

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This error message is a little confusing. Do you mean volumes and mounts?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The error was defined in https://github.com/docker/docker/pull/22373/files#diff-2660508eef7a8eeadb6d27b8bbf6d718R78 rather than in this PR.
IMO the error message is correct because -v /foo:/foo1 actually sets HostConfig.Binds rather than Config.Volumes.
But I agree we should improve the message.
CC @cpuguy83

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, it's a little funky now that this is on the CLI.... I'm not sure what to change it to. Maybe something like Mounts must be used exclusively from other formats (very much not this, but something like it 😄 ).
cc @thaJeztah

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

removed the assertion itself in the last PR

@justincormack
Copy link
Contributor

My understanding is that parsing issues make migrating --volume difficult
so it will probably remain using the old interface.

On 23 Sep 2016 8:57 a.m., "Akihiro Suda" [email protected] wrote:

@AkihiroSuda commented on this pull request.

In integration-cli/docker_cli_run_test.go
#26825 (review):

  •   c.Fatalf("mnt1 (foo) not mounted")
    
  • }
  • out, _ = dockerCmd(c, "exec", cName, "cat", "/bar/test2")
  • if out != "test2" {
  • c.Fatalf("mnt2 (bar) not mounted")
    
  • }
    +}
    +
    +func (s *DockerSuite) TestRunMountBindBad(c *check.C) {
  • testRequires(c, DaemonIsLinux, SameHostDaemon, NotUserNamespace)
  • out, exitCode, _ := dockerCmdWithError("run",
  • "-v", "/foo:/foo1",
    
  • "--mount", "type=bind,src=/bar,dst=/bar1",
    
  • "busybox", "top")
    
  • c.Assert(exitCode, checker.Not(checker.Equals), 0)
  • c.Assert(out, checker.Contains, "must not specify both Binds and Mounts")

Note: this cmd should succeed in the future when it migrated -v to the
new mount api


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#26825 (review),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAdcPKoUQk63tbNdbSYDqL_ilto0Yxjdks5qs4ZagaJpZM4KECxn
.

@justincormack
Copy link
Contributor

cc @stevvooe @ehazlett

Copy link
Contributor

@stevvooe stevvooe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great to see this.

I noticed that some odd behavior has leaked in. Let's be mindful that we're not making design changes without considering.

The important one is that source isn't required for the volume type. This is equivalent to -v /foo, where an "anonymous" volume will be created at /foo.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's use volumes as the primary example of mounts. Binds should be a special case.

This example is salient, as well, so using this with a volume example will demonstrate the difference in behavior of volumes and bind.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, I'll update

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add a volume oriented test.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, I'll update

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please test at least one volume default.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

opened #26951

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we have readonly=true?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

opened #26951

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Source is not required for volumes.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In current implementation, actually source is not required unless any volume-* is appended.
i.e. type=volume,target=/foo works but type=volume,target=/foo,volume-nocopy not.

@cpuguy83 Is there reason to require the source here?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Originally only added source as required for when volume driver configs are set. We can probably relax this.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

source is not required for volumes. Let's fix that.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

opened #26951

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What? This makes no sense. Binds is already supported via mounts.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I meant we should not set HostConfig.Binds 💦 , I'll update the comment for clarity

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

removed the comment in the last commit

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we not further propagate this? This is really in danger of becoming some sort of protocol. Please remove the string method and let's use equality for testing.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, but the code is from cli/command/service/opts_test.go, and I didn't touch substantial part in this PR.
For ease of tracking changes, I'd like to open another PR

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, not sure why we'd not use strong types here.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test named TestMountOptString seems made solely for testing the String() method itself.
So I think it is ok to keep the current code.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AkihiroSuda Leaving this String() risks this becoming a de-facto standard in the future.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tried to remove the String() method but it didn't compile

# github.com/docker/docker/runconfig/opts
runconfig/opts/parse.go:210: cannot use &copts.mounts (type *opts.MountOpt) as type pflag.Value in argument to flags.Var:
        *opts.MountOpt does not implement pflag.Value (missing String method)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So, this was somewhat why I distrust String() here: it has leaked into the flags implementation. I think we can leave it in place for this PR.

@AkihiroSuda
Copy link
Member Author

@justincormack

My understanding is that parsing issues make migrating --volume difficult
so it will probably remain using the old interface.

Thank you for the information, could you show me concrete examples that cannot be easily migrated to the new interface?

@justincormack
Copy link
Contributor

@AkihiroSuda from memory it was related to the different parsing rules for Windows with volumes, and the client does not know if it is talking to a Windows daemon or not. Will try to find the discussion.

@cpuguy83
Copy link
Member

I have a branch I was playing around with that basically allows checking windows path semantics and unix path semantics.
Generally the rule is in a string like <a>:<b>, if <a> is an absolute path, then it must be a bind, otherwise it is a name.
What my branch does is basically copy filepath.IsAbs from the stdlib for each platform allowing us to do something like if IsAbsWindows(<a>) || IsAbsUnix(<a>); then <it's a bind>.

@stevvooe
Copy link
Contributor

Not to mention the fact that the parse result is apportioned between the Volumes field and the Binds field.

@AkihiroSuda
Copy link
Member Author

Thank you for comments.

@cpuguy83 's approach seems work for both Binds and Volumes.
But if we cannot guarantee that we can safely migrate --volume to the new interface in a short term, is there a chance to relax the fmt.Errorf("must not specify both Binds and Mounts") limitation?
https://github.com/docker/docker/pull/22373/files#diff-2660508eef7a8eeadb6d27b8bbf6d718R78

If we really cannot combine --volume and --mount, users cannot easily use the new mount types (e.g. introspection #26331)

@justincormack
Copy link
Contributor

Hmm, maybe it is best to allow both, will think about this.

On 27 Sep 2016 10:08 a.m., "Akihiro Suda" [email protected] wrote:

Thank you for comments.

@cpuguy83 https://github.com/cpuguy83 's approach seems work for both
Binds and Volumes.
But if we cannot guarantee that we can safely migrate --volume to the new
interface in a short term, is there a chance to relax the fmt.Errorf("must
not specify both Binds and Mounts") limitation?
https://github.com/docker/docker/pull/22373/files#diff-
2660508eef7a8eeadb6d27b8bbf6d718R78

If we really cannot combine --volume and --mount, users cannot easily use
the new mount types (e.g. introspection #26331
#26331)


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#26825 (comment), or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAdcPGjd9N_yN_xIbpAEjxlkYfuYaNITks5quNz6gaJpZM4KECxn
.

@AkihiroSuda
Copy link
Member Author

updated PR, now it allows both the old interface and the new one.

@justincormack
Copy link
Contributor

Needs a rebase.

@stevvooe please look at your review and see if it is all resolved.

@stevvooe
Copy link
Contributor

LGTM

I'm still concerned about how this will interact with -v. We might want to prevent one or the other on the server side.

@stevvooe
Copy link
Contributor

@AkihiroSuda Thanks for another great PR! This is a tough one...

@cpuguy83 Are we ready for this?

@stevvooe
Copy link
Contributor

LGTM

@thaJeztah
Copy link
Member

needs a rebase as well

I moved to docs review, and will review shortly

@AkihiroSuda
Copy link
Member Author

rebased and updated doc #26825 (comment)

@AkihiroSuda
Copy link
Member Author

failure in windowsRS1 seems unrelated

00:09:56.336 ----------------------------------------------------------------------
00:09:56.336 FAIL: docker_api_stats_test.go:22: DockerSuite.TestAPIStatsNoStreamGetCpu
00:09:56.337 
00:09:56.337 docker_api_stats_test.go:59:
00:09:56.337     c.Assert(cpuPercent, check.Not(checker.Equals), 0.0, check.Commentf("docker stats with no-stream get cpu usage failed: was %v", cpuPercent))
00:09:56.337 ... obtained float64 = 0
00:09:56.337 ... expected float64 = 0
00:09:56.338 ... docker stats with no-stream get cpu usage failed: was 0
00:09:56.338 
00:10:01.472 
00:10:01.472 ----------------------------------------------------------------------

@vdemeester
Copy link
Member

@AkihiroSuda needs a rebase and probably a docs update for tmpfs then 👼

Copy link
Member

@thaJeztah thaJeztah left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left some suggestions, but looking good already

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add an anchor to the link? service_create.md#add-bind-mounts-or-volumes

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd like to avoid using "new" in documentation, as it's no longer "new" in the next release. Something like;

### Add bin-mounts or volumes using the --mounts flag

The `--mounts` flag allows you to mount volumes, host-directories and `tmpfs`
mounts in a container.

The `--mount` flag supports most options that are supported by the `-v` or
`--volume` flag, but uses a different syntax. For in-depth information on the
`--mount` flag, and a comparisson between `--volume` and `--mount`, refer to
the [service create command
reference](service_create.md#add-bind-mounts-or-volumes).

But I'm not very creative here, perhaps @mstanleyjones has a better suggestion 😄

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thank you for suggestion. updated PR
PTAL @mstanleyjones

@AkihiroSuda
Copy link
Member Author

@vdemeester
Rebased.

This PR doesn't contain the code for tmpfs, but will be in another PR soon.
(I didn't include that in this PR for ease of git blame-ing 😅 )

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"Attach a mount" seems vague / inaccurate. Maybe "Attach a filesystem mount" or "Mount a filesystem" or something like that?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done ("Attach a filesystem mount")

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you reword above, reword here too.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And here. (is there any way to avoid all this duplication?)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done, it would be great if completions are automatically generated from the code..

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo 'comparison'

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oops that was me 😊

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

@AkihiroSuda
Copy link
Member Author

updated and rebased @mstanleyjones @thaJeztah

Copy link
Member

@thaJeztah thaJeztah left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

/cc @vdemeester

Copy link
Member

@vdemeester vdemeester left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🐸

@vdemeester vdemeester merged commit e93f84a into moby:master Nov 3, 2016
AkihiroSuda added a commit to AkihiroSuda/docker that referenced this pull request Nov 26, 2016
This commit reverts 273eeb8 (moby#26825).
For the discussion so far, please refer to moby#28527.

Signed-off-by: Akihiro Suda <[email protected]>
LK4D4 added a commit that referenced this pull request Nov 30, 2016
[Revert #26825] cli: remove `--mount` from `docker run`
vieux pushed a commit to vieux/docker that referenced this pull request Nov 30, 2016
This commit reverts 273eeb8 (moby#26825).
For the discussion so far, please refer to moby#28527.

Signed-off-by: Akihiro Suda <[email protected]>
(cherry picked from commit e6d9b7d)
Signed-off-by: Victor Vieux <[email protected]>
xianlubird pushed a commit to xianlubird/docker that referenced this pull request Dec 23, 2016
This commit reverts 273eeb8 (moby#26825).
For the discussion so far, please refer to moby#28527.

Signed-off-by: Akihiro Suda <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants