美文网首页
Docker与外部主机互传文件

Docker与外部主机互传文件

作者: lkmc2 | 来源:发表于2018-06-16 13:02 被阅读40次

(一)将外部主机文件拷贝到Docker容器

1.首先需要启动nginx,将容器的80端口映射到本机的8080端口,并设置后台运行。

docker run -d -p 8080:80 nginx

2.此时可以在本地主机访问http://localhost:8080,显示的是nginx主页。

nginx主页

3.编写一个index.html页面。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>一个在在docker中呈现的页面</title>
</head>
<body>
    <h3>只是当时已惘然</h3>
    
    <table border="1">
        <tr>
            <td>此情可待成追忆1</td>
            <td>此情可待成追忆2</td>
        </tr>
        <tr>
            <td>此情可待成追忆1</td>
            <td>此情可待成追忆2</td>
        </tr>
        
    </table>
</body>
</html>

4.使用docker ps查看nginx容器的id,下图中的容器id为756a94bed476 。


容器id

4.执行docker cp执行将本地主机的index.html复制到docker容器中。

示例命令:
 docker cp 本地主机文件路径 nginx容器id://usr/share/nginx/html
完整命令:
 docker cp index.html 756a94bed476://usr/share/nginx/html

5.随后即可在本地主机访问到该页面,地址为:http://localhost:8080/index.html

image.png
6.此时,可以对容器进行提交,生成一个新的容器,该容器将包含添加到nginx里面的index.html页面。
示例命令:
docker commit -m '注释' 容器id 自定义容器名
完整命令:
docker commit -m 'create a new nginx container' 5a4bc9f2f5fa first-nginx

7.使用docker images列出所有的容器,可以看到容器first-nginx在其中。

first-nginx
8.在3000端口启动first-nginx容器,并打开http://localhost:3000/index.html,可以正常打开。
docker run -d -p 3000:80 first-nginx
运行结果

(二)将外部主机文件拷贝到Docker容器

将nginx容器中的文件复制到本地需要调换一下参数位置。

示例命令:
docker cp nginx容器id://usr/share/nginx/html/index.html 本地主机文件路径
完整命令:
docker cp 5a4bc9f2f5fa://usr/share/nginx/html/index.html G:/DockerWorkplace

相关文章

网友评论

      本文标题:Docker与外部主机互传文件

      本文链接:https://www.haomeiwen.com/subject/qhfbeftx.html