本文整理汇总了Golang中github.com/docker/docker/container.Container.ResolvConfPath方法的典型用法代码示例。如果您正苦于以下问题:Golang Container.ResolvConfPath方法的具体用法?Golang Container.ResolvConfPath怎么用?Golang Container.ResolvConfPath使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/docker/docker/container.Container
的用法示例。
在下文中一共展示了Container.ResolvConfPath方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: initializeNetworking
func (daemon *Daemon) initializeNetworking(container *container.Container) error {
var err error
if container.HostConfig.NetworkMode.IsContainer() {
// we need to get the hosts files from the container to join
nc, err := daemon.getNetworkedContainer(container.ID, container.HostConfig.NetworkMode.ConnectedContainer())
if err != nil {
return err
}
container.HostnamePath = nc.HostnamePath
container.HostsPath = nc.HostsPath
container.ResolvConfPath = nc.ResolvConfPath
container.Config.Hostname = nc.Config.Hostname
container.Config.Domainname = nc.Config.Domainname
return nil
}
if container.HostConfig.NetworkMode.IsHost() {
container.Config.Hostname, err = os.Hostname()
if err != nil {
return err
}
}
if err := daemon.allocateNetwork(container); err != nil {
return err
}
return container.BuildHostnameFile()
}
示例2: initializeNetworking
func (daemon *Daemon) initializeNetworking(container *container.Container) error {
var err error
// TODO Windows: Remove this once TP4 builds are not supported
// Windows TP4 build don't support libnetwork and in that case
// daemon.netController will be nil
if daemon.netController == nil {
return nil
}
if container.HostConfig.NetworkMode.IsContainer() {
// we need to get the hosts files from the container to join
nc, err := daemon.getNetworkedContainer(container.ID, container.HostConfig.NetworkMode.ConnectedContainer())
if err != nil {
return err
}
container.HostnamePath = nc.HostnamePath
container.HostsPath = nc.HostsPath
container.ResolvConfPath = nc.ResolvConfPath
container.Config.Hostname = nc.Config.Hostname
container.Config.Domainname = nc.Config.Domainname
return nil
}
if container.HostConfig.NetworkMode.IsHost() {
container.Config.Hostname, err = os.Hostname()
if err != nil {
return err
}
parts := strings.SplitN(container.Config.Hostname, ".", 2)
if len(parts) > 1 {
container.Config.Hostname = parts[0]
container.Config.Domainname = parts[1]
}
}
if err := daemon.allocateNetwork(container); err != nil {
return err
}
return container.BuildHostnameFile()
}
示例3: initializeNetworking
//网络初始化的相关操作。
func (daemon *Daemon) initializeNetworking(container *container.Container) error {
var err error
// TODO Windows: Remove this once TP4 builds are not supported
// Windows TP4 build don't support libnetwork and in that case
// daemon.netController will be nil
if daemon.netController == nil {
return nil
}
//网络模式是非主机模式下的设置,需要设置hostname文件,resove文件等。
if container.HostConfig.NetworkMode.IsContainer() {
// we need to get the hosts files from the container to join
nc, err := daemon.getNetworkedContainer(container.ID, container.HostConfig.NetworkMode.ConnectedContainer())
if err != nil {
return err
}
container.HostnamePath = nc.HostnamePath
container.HostsPath = nc.HostsPath
container.ResolvConfPath = nc.ResolvConfPath
container.Config.Hostname = nc.Config.Hostname
container.Config.Domainname = nc.Config.Domainname
return nil
}
//如果是主机模式,就是共享主机,不需要很多处理。
if container.HostConfig.NetworkMode.IsHost() {
container.Config.Hostname, err = os.Hostname()
if err != nil {
return err
}
}
//分配网络的核心代码。就在本页。
if err := daemon.allocateNetwork(container); err != nil {
return err
}
//将主机名写入文件。主机名是随机生成的。
return container.BuildHostnameFile()
}
示例4: initializeNetworkingPaths
func initializeNetworkingPaths(container *container.Container, nc *container.Container) {
container.HostnamePath = nc.HostnamePath
container.HostsPath = nc.HostsPath
container.ResolvConfPath = nc.ResolvConfPath
}