當前位置: 首頁>>代碼示例>>Golang>>正文


Golang daemon.GetByName函數代碼示例

本文整理匯總了Golang中github.com/docker/docker/daemon.GetByName函數的典型用法代碼示例。如果您正苦於以下問題:Golang GetByName函數的具體用法?Golang GetByName怎麽用?Golang GetByName使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了GetByName函數的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: TestLinkChildContainer

func TestLinkChildContainer(t *testing.T) {
	eng := NewTestEngine(t)
	daemon := mkDaemonFromEngine(eng, t)
	defer nuke(daemon)

	config, _, _, err := parseRun([]string{unitTestImageID, "echo test"})
	if err != nil {
		t.Fatal(err)
	}

	container, err := daemon.Get(createNamedTestContainer(eng, config, t, "/webapp"))
	if err != nil {
		t.Fatal(err)
	}

	webapp, err := daemon.GetByName("/webapp")
	if err != nil {
		t.Fatal(err)
	}

	if webapp.ID != container.ID {
		t.Fatalf("Expect webapp id to match container id: %s != %s", webapp.ID, container.ID)
	}

	config, _, _, err = parseRun([]string{GetTestImage(daemon).ID, "echo test"})
	if err != nil {
		t.Fatal(err)
	}

	childContainer, err := daemon.Get(createTestContainer(eng, config, t))
	if err != nil {
		t.Fatal(err)
	}

	if err := daemon.RegisterLink(webapp, childContainer, "db"); err != nil {
		t.Fatal(err)
	}

	// Get the child by it's new name
	db, err := daemon.GetByName("/webapp/db")
	if err != nil {
		t.Fatal(err)
	}
	if db.ID != childContainer.ID {
		t.Fatalf("Expect db id to match container id: %s != %s", db.ID, childContainer.ID)
	}
}
開發者ID:yckrasnodar,項目名稱:docker,代碼行數:47,代碼來源:runtime_test.go

示例2: TestGetAllChildren

func TestGetAllChildren(t *testing.T) {
	eng := NewTestEngine(t)
	daemon := mkDaemonFromEngine(eng, t)
	defer nuke(daemon)

	config, _, _, err := parseRun([]string{unitTestImageID, "echo test"})
	if err != nil {
		t.Fatal(err)
	}

	container, err := daemon.Get(createNamedTestContainer(eng, config, t, "/webapp"))
	if err != nil {
		t.Fatal(err)
	}

	webapp, err := daemon.GetByName("/webapp")
	if err != nil {
		t.Fatal(err)
	}

	if webapp.ID != container.ID {
		t.Fatalf("Expect webapp id to match container id: %s != %s", webapp.ID, container.ID)
	}

	config, _, _, err = parseRun([]string{unitTestImageID, "echo test"})
	if err != nil {
		t.Fatal(err)
	}

	childContainer, err := daemon.Get(createTestContainer(eng, config, t))
	if err != nil {
		t.Fatal(err)
	}

	if err := daemon.RegisterLink(webapp, childContainer, "db"); err != nil {
		t.Fatal(err)
	}

	children, err := daemon.Children("/webapp")
	if err != nil {
		t.Fatal(err)
	}

	if children == nil {
		t.Fatal("Children should not be nil")
	}
	if len(children) == 0 {
		t.Fatal("Children should not be empty")
	}

	for key, value := range children {
		if key != "/webapp/db" {
			t.Fatalf("Expected /webapp/db got %s", key)
		}
		if value.ID != childContainer.ID {
			t.Fatalf("Expected id %s got %s", childContainer.ID, value.ID)
		}
	}
}
開發者ID:yckrasnodar,項目名稱:docker,代碼行數:59,代碼來源:runtime_test.go


注:本文中的github.com/docker/docker/daemon.GetByName函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。