本文整理汇总了Golang中github.com/docker/docker/graph.SetupInitLayer函数的典型用法代码示例。如果您正苦于以下问题:Golang SetupInitLayer函数的具体用法?Golang SetupInitLayer怎么用?Golang SetupInitLayer使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了SetupInitLayer函数的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: createRootfs
func (daemon *Daemon) createRootfs(container *Container) error {
// Step 1: create the container directory.
// This doubles as a barrier to avoid race conditions.
if err := os.Mkdir(container.root, 0700); err != nil {
return err
}
initID := fmt.Sprintf("%s-init", container.ID)
if err := daemon.driver.Create(initID, container.ImageID); err != nil {
return err
}
initPath, err := daemon.driver.Get(initID, "")
if err != nil {
return err
}
defer daemon.driver.Put(initID)
if err := graph.SetupInitLayer(initPath); err != nil {
return err
}
if err := daemon.driver.Create(container.ID, initID); err != nil {
return err
}
return nil
}
示例2: createTmpRootfs
func (daemon *Daemon) createTmpRootfs(container *Container) error {
if _, err := os.Stat(container.root); err != nil && os.IsNotExist(err) {
return err
}
commitID := fmt.Sprintf("%s-commit", container.ID)
if err := daemon.driver.Create(commitID, container.Image); err != nil {
return err
}
commitPath, err := daemon.driver.Get(commitID, "")
if err != nil {
return err
}
defer daemon.driver.Put(commitID)
if err := graph.SetupInitLayer(commitPath); err != nil {
return err
}
return nil
}