英文:
how to specify sync-mode and network type while creating docker container using docker go pkg in Golang application?
问题
我正在尝试使用Docker Engine SDK和Docker API从我的Golang应用程序创建Docker容器。
这是我想在我的应用程序中实现的命令:
docker run --name rinkeby-node ethereum/client-go --rinkeby --syncmode full
这是我正在使用的代码:
ctx := context.Background()
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
if err != nil {
panic(err)
}
imageName := "ethereum/client-go"
out, err := cli.ImagePull(ctx, imageName, types.ImagePullOptions{})
if err != nil {
panic(err)
}
defer out.Close()
io.Copy(os.Stdout, out)
resp, err := cli.ContainerCreate(ctx, &container.Config{
Image: imageName,
}, nil, nil, nil, "containerName")
if err != nil {
panic(err)
}
if err := cli.ContainerStart(ctx, resp.ID, types.ContainerStartOptions{}); err != nil {
panic(err)
}
fmt.Println(resp.ID)
现在我想将syncmode设置为full,并将网络设置为rinkeby。
英文:
I am trying to create docker container from my golang application using Docker Engine SDKs and Docker API
this is the command i want to implement in my application:
> docker run --name rinkeby-node ethereum/client-go --rinkeby --syncmode full
this is the code i am using
ctx := context.Background()
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
if err != nil {
panic(err)
}
imageName := "ethereum/client-go"
out, err := cli.ImagePull(ctx, imageName, types.ImagePullOptions{})
if err != nil {
panic(err)
}
defer out.Close()
io.Copy(os.Stdout, out)
resp, err := cli.ContainerCreate(ctx, &container.Config{
Image: imageName,
}, nil, nil, nil, "containerName")
if err != nil {
panic(err)
}
if err := cli.ContainerStart(ctx, resp.ID, types.ContainerStartOptions{}); err != nil {
panic(err)
}
fmt.Println(resp.ID)
now i want to specify the syncmode to full and the network to rinkeby
答案1
得分: 1
--syncmode full
和 --rinkeby
标志是 CMD
的参数。
因此,在调用 ContainerCreate
方法时,在 container.Config
内部添加以下内容:
Cmd: []string{"--syncmode", "full", "--rinkeby"}
完整示例请参见 此处。
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论