Docker 17参考手册
机器 | Machine
docker-machine scp
将文件从本地主机复制到机器,从机器到机器或从机器复制到本地主机scp
。
符号是machinename:/path/to/files
用于论证的; 在主机的情况下,您不必指定名称,只需指定路径。
例
考虑以下示例:
$ cat foo.txt
cat: foo.txt: No such file or directory
$ docker-machine ssh dev pwd
/home/docker
$ docker-machine ssh dev 'echo A file created remotely! >foo.txt'
$ docker-machine scp dev:/home/docker/foo.txt .
foo.txt 100% 28 0.0KB/s 00:00
$ cat foo.txt
A file created remotely!
就像scp
如何递归复制文件的-r
标志一样,docker-machine
具有此功能的-r
标志。
在从机传输文件到机器的情况下,他们经过本地主机的文件系统中第一个(使用scp
的-3
标志)。
为远程部署指定文件路径
当您使用docker-machine scp
应用程序部署将文件复制到远程服务器时,请确保docker-compose
Docker守护程序知道如何找到它们。您可以指定绝对路径,例如/home/myuser/workspace
,将在/workspace
运行Docker守护程序的远程主机上的绝对路径中,将其装载到容器中的Compose文件中。本地客户端路径(例如,在您的笔记本电脑上)对远程计算机上运行的守护程序不起作用,因此请避免使用相对路径。
例如,假设您想将本地目录传输/Users/londoncalling/webapp
到远程计算机,并将其挂载到远程主机上的容器中。(我们假设远程用户是ubuntu
。)你可以这样做:
$ docker-machine scp -r /Users/londoncalling/webapp MACHINE-NAME:/home/ubuntu/webapp
然后编写一个docker-compose文件,该文件将其绑定到:
version: "3.1"
services:
webapp:
image: alpine
command: cat /app/root.php
volumes:
- "/home/ubuntu/webapp:/app"
我们可以这样做:
$ eval $(docker-machine env MACHINE-NAME)
$ docker-compose run webapp
机器,scp,子命令
机器 | Machine相关
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
主页 | https://docker.com/ |
源码 | https://github.com/docker/docker |
版本 | 17 |
发布版本 | 17.06 |