概述
在使用 Docker 的时候,很多时候都会有从容器和主机之间互相拷贝文件的需求,这里我就介绍一下如何实现。其实,也很简单,Docker 本身命令就有 docker cp
功能,这个命令可以在容器和宿主机之间互相拷贝文件。当然,如果只是想快速地从容器中弄一个小配置文件,那么简单地用 cat 也行。
用 cat 命令
[root@liqiang.io]# docker run -it --rm nginx:1.17.5 cat /etc/nginx/nginx.conf
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
keepalive_timeout 65;
#gzip on;
include /etc/nginx/conf.d/*.conf;
}
docker cp 命令
通过 docker cp
可以简单的互相拷贝文件:
- 从宿主机到容器:
[root@liqiang.io]# docker cp /etc/nginx/nginx.conf 200789522a3d:/etc/nginx/nginx.conf
- 从容器到宿主机
[root@liqiang.io]# docker cp 200789522a3d:/etc/nginx/nginx.conf /etc/nginx/nginx.conf