Docker Swarm堆栈部署 - 从主机复制

时间:2018-03-30 13:48:52

标签: docker swarm

我正在尝试使用docker swarm在5个VM上运行docker windows容器,而这5台机器在F5 loadbalancer后面。 我能够设置docker-swarm master和5个节点并成功部署堆栈,但是现在每个节点都有捕获我必须从节点复制容器内的各个web.config文件(web.config在每个节点上都是可用的)。

我现在正在传递entrypoint.bat文件,该文件将文件从已安装的卷复制到resepctive网站目录。

defalut入口点是:[“c:\ Servicemonitor”“w3svc”] 重写的入口点是(这是在批处理文件中): “c:\ Servicemonitor”“w3svc” 复制文件的代码

堆栈部署后,我的容器运行了大约6秒并且存在,我检查了日志并验证了web.config文件正在被正确复制,但是有一些IIS / w3svc停止了。

我不确定何时使用docker-stack.yml

来复制功能

提前谢谢你,

SAAM

1 个答案:

答案 0 :(得分:0)

我能够制作解决方法,下面提到的powershell脚本:

Start-Service w3svc     #make sure to start w3svc
$file="C:\cq\web.config"        # kept on bilnd mount volume
do { 
if (-not (Test-Path $file)) {
    Write-Host "Awaiting for file"
    Start-Sleep -s 5
}Else{
        Copy-Item -Path C:\web\web.config -Destination C:\inetpub\wwwroot\mysite
        Write-Host "File copied"
        IISRESET /status            # just to check status
        C:\servicemonitor.exe WAS   # I am aksing servmon to monitor WAS instead of w3svc and keep servmon active
    }

}直到(Test-Path $ file)