为了账号安全,请及时绑定邮箱和手机立即绑定

GoLang postgres testcontainer 将 BindMounts

GoLang postgres testcontainer 将 BindMounts

Go
红糖糍粑 2022-12-13 10:52:47
我刚刚将测试容器库从升级github.com/testcontainers/testcontainers-go v0.12.0到github.com/testcontainers/testcontainers-go v0.13.0 以前这是我创建请求的方式    ContainerRequest: testcontainers.ContainerRequest{            Image:          mountebankImage,            Name:           uuid.New().String(),            ExposedPorts:   []string{mountebankExposedPort},            BindMounts:     map[string]string{"/mountebank": path.Join(c.rootDir, "/test/stubs/mountebank")},            Entrypoint:     []string{"mb", "start", "--configfile", "/mountebank/imposters.ejs"},            Networks:       []string{c.network.Name},   在最新版本的测试容器库中,BindMounts(不再支持链接)被 Mounts 取代。尝试在我的初始化脚本中替换相同的内容,但找不到它。BindMounts:     map[string]string{"/mountebank": path.Join(c.rootDir, "/test/stubs/mountebank")},它是请求正文的一部分。试过 testcontainers.ContainerMounts{}等我错过了什么吗?
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

ContainerRequest对象包含一个对象列表ContainerMount,其中记录了

Source 通常是 GenericBindMountSource 或 GenericVolumeMountSource

GenericBindMountSource只是命名一个主机路径。DockerBindMountSource如果您需要高级选项,也可以使用 a 。

所以你应该能够BindMounts:Mounts:

ContainerRequest: testcontainers.ContainerRequest{

        Mounts: testcontainers.Mounts(testcontainers.ContainerMount{

                Source: testcontainers.GenericBindMountSource{

                        HostPath: path.Join(c.rootDir, "/test/stubs/mountebank"),

                },

                Target: testcontainers.ContainerMountTarget("/mountebank"),

        }),

        ...

},


查看完整回答
反对 回复 2022-12-13
  • 1 回答
  • 0 关注
  • 90 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信