本文整理汇总了Golang中github.com/docker/swarm/cluster.Container.Container方法的典型用法代码示例。如果您正苦于以下问题:Golang Container.Container方法的具体用法?Golang Container.Container怎么用?Golang Container.Container使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/docker/swarm/cluster.Container
的用法示例。
在下文中一共展示了Container.Container方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: updateContainer
func (n *node) updateContainer(c dockerclient.Container, containers map[string]*cluster.Container, full bool) (map[string]*cluster.Container, error) {
var container *cluster.Container
n.Lock()
if current, exists := n.containers[c.Id]; exists {
// The container is already known.
container = current
} else {
// This is a brand new container. We need to do a full refresh.
container = &cluster.Container{
Node: n,
}
full = true
}
// Update its internal state.
container.Container = c
containers[container.Id] = container
// Release the lock here as the next step is slow.
n.Unlock()
// Update ContainerInfo.
if full {
info, err := n.client.InspectContainer(c.Id)
if err != nil {
return nil, err
}
container.Info = *info
// real CpuShares -> nb of CPUs
container.Info.Config.CpuShares = container.Info.Config.CpuShares / 100.0 * n.Cpus
}
return containers, nil
}