1

为什么在检查容器时test.cnf是一个目录而不是基于模板节的文件,你能检查一下吗

  config {
    image = "percona/percona-xtradb-cluster:5.7"
    volumes = ["/tmp/new.conf:/etc/mysql/test.conf"]

    port_map {
      db = 3306
      gc = 4567
      ss = 4444
      ist = 4568
    }
  }

  template {
    data = <<EOH
      binlog_format=ROW
      default_storage_engine=InnoDB
      !include /etc/mysql/node.cnf
    EOH
    destination   = "/tmp/new.conf"
  }
4

1 回答 1

1

有解决方案是使用mounts而不是volumes. https://www.nomadproject.io/docs/drivers/docker/#mounts

这是 Docker 文档的摘录。Nomad 必须遵循该规范才能与 Docker 一起工作。

挂载类型可以是卷、绑定、tmpfs 或 npipe。
如果未指定类型,则默认为音量。
volume:将托管卷安装到容器中。
bind: 将主机中的目录或文件绑定挂载到容器中。
tmpfs: 在容器中挂载一个 tmpfs。
npipe: 将命名管道从主机挂载到容器中(仅限 Windows 容器)。

由于bind挂载类型允许您将文件从主机绑定到容器,我建议您使用文档中的绑定示例

于 2020-04-26T09:36:18.647 回答