美文网首页
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