GCP:Go中的Bucket创建

GCP:Go中的Bucket创建,go,google-cloud-platform,bucket,kubernetes-go-client,Go,Google Cloud Platform,Bucket,Kubernetes Go Client,我试图用Go在GCP中创建一个bucket,我尝试了这个方法,在Go中创建一个bucket。这是同样的例子。当我试着运行它时,它只是说 运行go build时超时和go build失败。我知道它正在尝试下载一些软件包,但不确定为什么在下载软件包时超时?。 我是新来围棋的,想测试一下围棋中桶的创建是如何工作的。我遗漏了什么吗?登录: gcloud auth application-default login 创建此Create bucket.go文件并用项目ID替换项目ID: // Sample

我试图用Go在GCP中创建一个bucket,我尝试了这个方法,在Go中创建一个bucket。这是同样的例子。当我试着运行它时,它只是说
运行go build时超时
go build失败
。我知道它正在尝试下载一些软件包,但不确定为什么在下载软件包时超时?。 我是新来围棋的,想测试一下围棋中桶的创建是如何工作的。我遗漏了什么吗?

登录:

gcloud auth application-default login
创建此
Create bucket.go
文件并用项目ID替换项目ID:

// Sample storage-quickstart creates a Google Cloud Storage bucket.
package main

import (
    "context"
    "fmt"
    "log"
    "time"

    "cloud.google.com/go/storage"
)

func main() {
    ctx := context.Background()

    // Sets your Google Cloud Platform project ID.
    projectID := "<YOUR-PROJECT-ID>"

    // Creates a client.
    client, err := storage.NewClient(ctx)
    if err != nil {
        log.Fatalf("Failed to create client: %v", err)
    }

    // Sets the name for the new bucket.
    bucketName := "go-new-bucket"

    // Creates a Bucket instance.
    bucket := client.Bucket(bucketName)

    // Creates the new bucket.
    ctx, cancel := context.WithTimeout(ctx, time.Second*10)
    defer cancel()
    if err := bucket.Create(ctx, projectID, nil); err != nil {
        log.Fatalf("Failed to create bucket: %v", err)
    }

    fmt.Printf("Bucket %v created.\n", bucketName)
}
您将在下面找到
go new bucket


请显示您运行以生成程序的命令。为什么要使用kubernetes客户端?@Marc我之所以使用kubernetes客户端,是因为我将在部署在GCP上的kubernetes群集中创建一个bucket。@Marc但现在,我更关心的是为什么这段代码根本不起作用?。它应该抛出一个错误,做点什么,它只是说超时,因为包没有下载。你能从你这边本地试试吗?。将此保存为go文件并使用go run?运行。谢谢,Neo,有没有办法不用安装/设置
gcloud
CLI?。我的gcloud控制台已在浏览器中打开。欢迎使用。你说的gcloud控制台是什么意思?如果您想在浏览器中使用Google Cloud Shell,您可以使用它。在GCP web门户的右上角,有一个图标“激活云Shell”。默认情况下,gcloud CLI安装在浏览器中。我的意思是,我已经在浏览器中打开了,而不是先设置gcloud CLI,然后从CLI登录,然后运行go代码,我们有没有办法在没有gcloud CLI的情况下直接运行此go代码?或者,如果没有gcloud CLI,这是不可能的。请您定义一下您对GCP cluster和real-time的理解。Kubernetes群集与您正在创建的bucket无关。您甚至可以在本地计算机上运行该go文件。
go run create-bucket.go