windows - 如何在windows机器上用docker搭建cassandra集群?

标签 windows docker cmd cassandra

我想用docker搭建一个cassandra集群。 The documentation已经告诉你如何做到这一点,所以这不是我遇到的问题。

但是我目前在 Windows 10 上使用 Docker,显然它无法在 docker run --name some-cassandra2 -d -e CASSANDRA_SEEDS="$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' some-cassandra)"cassandra:tag 导致容器的种子列表为空。

我如何在 Windows 中嵌套这样的命令,或者 - 如果这不可能 - 获得解决方法?

最佳答案

感谢 docker-compose.yml by Jason Giedymin,我设法修复了它.它应该在 docker-compose 的 v1 和 v2 中工作。通过这种方式,您只需让 docker 从一开始就进行链接,并使用容器已经为您提供的环境变量告诉 cassandras 有关其他种子的信息。

sleep 30 部分非常智能,它确保第二个容器不会尝试连接到尚未完全启动的容器。

但我会推荐的一件事是使用 external_links 而不是 links。这样其他容器就不会依赖所有的 cassandra 容器来启动/工作。这将破坏分布式数据库的目的。

我仍然不知道如何将 Windows cmd 命令相互嵌套,所以我仍然会感谢您提供一些提示。

关于windows - 如何在windows机器上用docker搭建cassandra集群?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43364645/

相关文章:

c++ - 在 Windows 7/8/10 Win32 C++ 中检测/识别显示器连接的端口(HDMI、其他)

c - 如何在C中设置用户输入字符的时间限制?

python - Datadog 计数指标因多个容器而下降

windows - 在批处理脚本中将最近修改的文件从源复制到目标

docker - 无法启动容器

跨多个磁盘的 Docker 镜像

encoding - 这个批处理文件中°、±&²是如何产生░、▒&▓的?

windows - 任务列表未检测/支持超过 21 个字符的进程名称

r - base::assign (".ptime", proc.time(), pos = "CheckExEnv") 使用 devtools::check 时出现错误

windows - 如何在路径长度大于256的Windows中创建目录