Docker-DCO-1.1-Signed-off-by: Andrew Page <admwiggin@gmail.com> (github: tianon)
| ... | ... |
@@ -120,7 +120,7 @@ func (b *buildFile) CmdFrom(name string) error {
|
| 120 | 120 |
b.config = image.Config |
| 121 | 121 |
} |
| 122 | 122 |
if b.config.Env == nil || len(b.config.Env) == 0 {
|
| 123 |
- b.config.Env = append(b.config.Env, "HOME=/", "PATH="+daemon.DefaultPathEnv) |
|
| 123 |
+ b.config.Env = append(b.config.Env, "PATH="+daemon.DefaultPathEnv) |
|
| 124 | 124 |
} |
| 125 | 125 |
// Process ONBUILD triggers if they exist |
| 126 | 126 |
if nTriggers := len(b.config.OnBuild); nTriggers != 0 {
|
| ... | ... |
@@ -1043,9 +1043,12 @@ func (container *Container) setupLinkedContainers() ([]string, error) {
|
| 1043 | 1043 |
func (container *Container) createDaemonEnvironment(linkedEnv []string) []string {
|
| 1044 | 1044 |
// Setup environment |
| 1045 | 1045 |
env := []string{
|
| 1046 |
- "HOME=/", |
|
| 1047 | 1046 |
"PATH=" + DefaultPathEnv, |
| 1048 | 1047 |
"HOSTNAME=" + container.Config.Hostname, |
| 1048 |
+ // Note: we don't set HOME here because it'll get autoset intelligently |
|
| 1049 |
+ // based on the value of USER inside dockerinit, but only if it isn't |
|
| 1050 |
+ // set already (ie, that can be overridden by setting HOME via -e or ENV |
|
| 1051 |
+ // in a Dockerfile). |
|
| 1049 | 1052 |
} |
| 1050 | 1053 |
if container.Config.Tty {
|
| 1051 | 1054 |
env = append(env, "TERM=xterm") |
| ... | ... |
@@ -700,7 +700,7 @@ func TestBuildRelativeWorkdir(t *testing.T) {
|
| 700 | 700 |
|
| 701 | 701 |
func TestBuildEnv(t *testing.T) {
|
| 702 | 702 |
name := "testbuildenv" |
| 703 |
- expected := "[HOME=/ PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PORT=2375]" |
|
| 703 |
+ expected := "[PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PORT=2375]" |
|
| 704 | 704 |
defer deleteImages(name) |
| 705 | 705 |
_, err := buildImage(name, |
| 706 | 706 |
`FROM busybox |
| ... | ... |
@@ -676,13 +676,13 @@ func TestEnvironment(t *testing.T) {
|
| 676 | 676 |
|
| 677 | 677 |
goodEnv := []string{
|
| 678 | 678 |
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", |
| 679 |
- "HOME=/", |
|
| 680 | 679 |
"HOSTNAME=testing", |
| 681 | 680 |
"FALSE=true", |
| 682 | 681 |
"TRUE=false", |
| 683 | 682 |
"TRICKY=tri", |
| 684 | 683 |
"cky", |
| 685 | 684 |
"", |
| 685 |
+ "HOME=/root", |
|
| 686 | 686 |
} |
| 687 | 687 |
sort.Strings(goodEnv) |
| 688 | 688 |
if len(goodEnv) != len(actualEnv) {
|