浏览代码

dockerinit: propagate "container" env variable from lxc

Lxc (and libvirt) already set the "container" env variable
appropriately[1], so just use that.

[1] http://www.freedesktop.org/wiki/Software/systemd/ContainerInterface/
Josh Poimboeuf 11 年之前
父节点
当前提交
e877294321
共有 2 个文件被更改,包括 3 次插入1 次删除
  1. 0 1
      container.go
  2. 3 0
      sysinit/sysinit.go

+ 0 - 1
container.go

@@ -586,7 +586,6 @@ func (container *Container) Start() (err error) {
 	env := []string{
 	env := []string{
 		"HOME=/",
 		"HOME=/",
 		"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
 		"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
-		"container=lxc",
 		"HOSTNAME=" + container.Config.Hostname,
 		"HOSTNAME=" + container.Config.Hostname,
 	}
 	}
 
 

+ 3 - 0
sysinit/sysinit.go

@@ -191,6 +191,9 @@ func SysInit() {
 		log.Fatalf("Unable to unmarshal environment variables: %v", err)
 		log.Fatalf("Unable to unmarshal environment variables: %v", err)
 	}
 	}
 
 
+	// Propagate the plugin-specific container env variable
+	env = append(env, "container="+os.Getenv("container"))
+
 	args := &DockerInitArgs{
 	args := &DockerInitArgs{
 		user:       *user,
 		user:       *user,
 		gateway:    *gateway,
 		gateway:    *gateway,