所以,我开始和码头工人一起玩,到目前为止这么好,但是我把这个问题放在了我的头上。 记住这两个陈述(如果我误解了一些东西,请纠正我): 1)Docker Swarm提供开箱即用的服务发现,意味着微服务可以通过服务名称在同一网络上彼此交谈,而无需实际知道其他服务分配在哪个主机上。 2)服务实例是短暂的,所以服务可以由不同的机器在群集使用期间托管。 例如,我应该如何知道哪个IP地址应该公开为中央API网关服务?
所以我开始玩码头和码头群,现在我想知道如何在码头群节点之间共享卷。 让我们选一个Postgres数据库为例,我有一个为数据声明的卷: 泊坞窗,compose.yml: … db: image: postgres:9.4-alpine volumes: – db-data:/var/lib/postgresql/data deploy: placement: constraints: [node.role == manager] … 如果我在世界上不同的地区有非常远的管理者,而且他们之间需要共享数据呢? Docker如何操作?
我正在使用以下docker-compose配置块的容器: frontend: image: zzrot/alpine-caddy ports: – "433:433" – "80:80" volumes: – ./share/etc/Caddyfile:/etc/Caddyfile – ./root/static:/var/www/htm 当我运行docker-compose时,我看到以下错误: ERROR: oci runtime error: container_linux.go:262: starting container process caused "process_linux.go:339: container init caused \"rootfs_linux.go:57: mounting \\\"/Users/adam/code/projects/BicycleEvents-Web/share/etc/Caddyfile\\\" to rootfs \\\"/var/lib/docker/aufs/mnt/9e45393ec987dcca75752736c2b4af323ce78838b4d9233059e4d24c6ada193a\\\" at \\\"/var/lib/docker/aufs/mnt/9e45393ec987dcca75752736c2b4af323ce78838b4d9233059e4d24c6ada193a/etc/Caddyfile\\\" caused \\\"not a directory\\\"\"" : Are you trying to mount a directory onto a file (or vice-versa)? Check if […]
我有一个合成文件v3共有3个服务共享/使用相同的音量。 在使用群集模式时,我们需要创建额外的容器和卷来管理群集中的服务。 我打算使用NFS服务器,以便单个NFS共享将直接挂载到群集中的所有主机上。 我在下面找到了两种做法,但是需要在docker主机上执行额外的步骤 – 在主机上使用“fstab”或“mount”命令挂载NFS共享,然后将其用作Docker服务的主机卷。 使用Netshare插件 – https://github.com/ContainX/docker-volume-netshare 有没有一个标准的方式,我可以直接使用/装载NFS共享使用泊坞窗撰写V3通过执行只有很少/没有步骤(我明白,“nfs-common”包是必需的)在码头主机?