Docker组合:是否可以将本地文件安装到远程守护进程?

使用场景如下所示:

我有一个AWS EC2实例已经configuration了docker-machine

我想使用docker-compose在该EC2实例上远程启动一些容器。

撰写文件有这样一个部分:

nginx-proxy: image: jwilder/nginx-proxy container_name: nginx-proxy ports: - "8888:80" volumes: - /var/run/docker.sock:/tmp/docker.sock:ro - /home/ubuntu/nginx.tmpl:/app/nginx.tmpl:ro 

如果我在本地使用docker-compose up -d ,那么它将起作用,因为“ /home/ubuntu/nginx.tmpl ”文件出现在我的本地机器上。

但是,如果我尝试使用docker-compose来控制AWS中的远程守护进程,如下所示:

 export DOCKER_TLS_VERIFY="1" export DOCKER_HOST="tcp://xy:2376" export DOCKER_CERT_PATH="somedir" docker-compose up -d 

它会失败,因为“ /home/ubuntu/nginx.tmpl ”文件不存在于远程机器上。

我已经尝试在同一个目录下的远程机器上创build这样的文件,它的工作原理,但感觉错了……

将本地文件挂载到远程docker守护进程的更好方法是什么?

Docker Machine有一个scp命令,所以你可以将本地文件复制到远程机器,反之亦然:

  docker-machine scp ~/my/local/nginx.tmpl machine-name:/home/ubuntu/nginx.tmpl 

这里是参考文档 。