![](/img/trans.png)
[英]how to mount localhost volume to a docker container using docker-compose
[英]Docker-compose: Mount a volume only in the first container
我正在使用docker compose运行MariaDB Galera群集,其中每个节点都是docker容器,但是MariaDB GC在启动时需要一个主节点来初始化数据库。
我想通过将文件作为卷装入容器中来选择主容器,并在启动时使用脚本检查该文件。 因此,我需要docker-compose才能仅为启动的第一个容器安装文件,而无需为通过docker-compose scale创建的容器安装文件。
可能吗 ?
您想做的事情不可能直接实现; 使用docker-compose scale
您将获得一整套相同的容器。 您可以使用多个选项来选择Galera集群的主节点。 这是两个; 无疑还有其他:
在docker-compose.yaml
文件中将主容器设为单实例容器,并仅缩放辅助容器。
galera_primary:
image: myimage
command: command_to_start_galera_master
galera_secondary:
image: myimage
links:
- galera_primary
command: command_to_start_galera_worker
如果您愿意编写一些代码,则可能可以利用etcd 原子地创建key的功能来使用etcd进行主选举。
我没有这个方便的例子,但是过程应该相对简单:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.