• dockerfile,拷贝文件夹到镜像中(不是拷贝文件夹中的内容到镜像)


    背景说明

    今天在通过dockerfile将文件夹拷贝到镜像的时候发现,是把文件夹下的内容拷贝进去了

    dockerfile如下

    from xxxxx:81/xxxxxx/datafusion:20201208184148
    run rm -rf /usr/local/tomcat/webapps/datafusion/WEB-INF/classes/static
    copy static /usr/local/tomcat/webapps/datafusion/WEB-INF/classes/
    

    注意:构建完镜像,运行之后发现是把本地static目录下的内容拷贝到classes目录下了,本意是要将static拷贝到classes下成为classes/static
    docker运行结果如下:

    [091a0c9e4523 root:/usr/local/tomcat/webapps/datafusion/WEB-INF/classes]# ls -ltr
    total 24
    drwxr-xr-x 3 root root   36 Dec  8 18:41 templates
    -rw-r--r-- 1 root root 2710 Dec  8 18:41 sdk.properties
    drwxr-xr-x 2 root root   34 Dec  8 18:41 properties
    -rw-r--r-- 1 root root  179 Dec  8 18:41 oss.properties
    -rw-r--r-- 1 root root 2888 Dec  8 18:41 logback-spring.xml
    -rw-r--r-- 1 root root  200 Dec  8 18:41 intellit.properties
    drwxr-xr-x 2 root root   96 Dec  8 18:41 i18n
    drwxr-xr-x 2 root root   24 Dec  8 18:41 db
    drwxr-xr-x 4 root root  223 Dec  8 18:41 config
    drwxr-xr-x 3 root root   20 Dec  8 18:41 com
    -rw-r--r-- 1 root root 1501 Dec  8 18:41 banner.txt
    -rw-r--r-- 1 root root  465 Dec  8 18:41 application.properties
    drwxr-xr-x 2 root root   48 Dec  8 18:41 META-INF
    drwxr-xr-x 5 root root   59 Dec  9 09:02 datafusion
    [091a0c9e4523 root:/usr/local/tomcat/webapps/datafusion/WEB-INF/classes]#   #并没有把static目录拷贝进来
    

    实现方法

    copy时指定镜像中的目录

    dockerfile修改如下

    from xxxxx:81/xxxxxx/datafusion:20201208184148
    run rm -rf /usr/local/tomcat/webapps/datafusion/WEB-INF/classes/static
    copy static /usr/local/tomcat/webapps/datafusion/WEB-INF/classes/static    #加上镜像内的static目录,虽然镜像中的目录已经被删除
    

    构建,运行新的镜像

    [ec5dbacdec93 root:/usr/local/tomcat/webapps/datafusion/WEB-INF/classes]# ls -ltr
    total 24
    drwxr-xr-x 3 root root   36 Dec  8 18:41 templates
    -rw-r--r-- 1 root root 2710 Dec  8 18:41 sdk.properties
    drwxr-xr-x 2 root root   34 Dec  8 18:41 properties
    -rw-r--r-- 1 root root  179 Dec  8 18:41 oss.properties
    -rw-r--r-- 1 root root 2888 Dec  8 18:41 logback-spring.xml
    -rw-r--r-- 1 root root  200 Dec  8 18:41 intellit.properties
    drwxr-xr-x 2 root root   96 Dec  8 18:41 i18n
    drwxr-xr-x 2 root root   24 Dec  8 18:41 db
    drwxr-xr-x 4 root root  223 Dec  8 18:41 config
    drwxr-xr-x 3 root root   20 Dec  8 18:41 com
    -rw-r--r-- 1 root root 1501 Dec  8 18:41 banner.txt
    -rw-r--r-- 1 root root  465 Dec  8 18:41 application.properties
    drwxr-xr-x 2 root root   48 Dec  8 18:41 META-INF
    drwxr-xr-x 3 root root   24 Dec  9 13:00 static        #已经成功把static目录拷贝进来了,进入到镜像中也是static这个目录,而不是把目录中的内容拷贝进来
    [ec5dbacdec93 root:/usr/local/tomcat/webapps/datafusion/WEB-INF/classes]#
    

    通过add命令,指定镜像中的目录

    dockerfile如下

    from 172.20.59.71:81/c87e2267-1001-4c70-bb2a-ab41f3b81aa3/datafusion:20201208184148
    run rm -rf /usr/local/tomcat/webapps/datafusion/WEB-INF/classes/static
    add static /usr/local/tomcat/webapps/datafusion/WEB-INF/classes/static
    

    运行结果:

    [fb235c3c32af root:/usr/local/tomcat/webapps/datafusion/WEB-INF/classes]# ls -ltr
    total 24
    drwxr-xr-x 3 root root   36 Dec  8 18:41 templates
    -rw-r--r-- 1 root root 2710 Dec  8 18:41 sdk.properties
    drwxr-xr-x 2 root root   34 Dec  8 18:41 properties
    -rw-r--r-- 1 root root  179 Dec  8 18:41 oss.properties
    -rw-r--r-- 1 root root 2888 Dec  8 18:41 logback-spring.xml
    -rw-r--r-- 1 root root  200 Dec  8 18:41 intellit.properties
    drwxr-xr-x 2 root root   96 Dec  8 18:41 i18n
    drwxr-xr-x 2 root root   24 Dec  8 18:41 db
    drwxr-xr-x 4 root root  223 Dec  8 18:41 config
    drwxr-xr-x 3 root root   20 Dec  8 18:41 com
    -rw-r--r-- 1 root root 1501 Dec  8 18:41 banner.txt
    -rw-r--r-- 1 root root  465 Dec  8 18:41 application.properties
    drwxr-xr-x 2 root root   48 Dec  8 18:41 META-INF
    drwxr-xr-x 3 root root   24 Dec  9 13:03 static  #static目录已经被拷贝进来了。
    [fb235c3c32af root:/usr/local/tomcat/webapps/datafusion/WEB-INF/classes]# 
    
  • 相关阅读:
    python函数
    python正则表达式
    FileStorage
    dietpi请暂时不要升级为jessie
    不从SD卡启动树莓派2
    树莓派2系统DietPi简单安装配置使用介绍
    树莓派笔记之使用netselect选择最快Raspbian软件源
    树莓派系统介绍:DIetPi
    【翻译】树莓派2:关闭无线网卡电源管理功能
    树莓派2安装使用小米WIfi(360 小度 腾讯wifi)
  • 原文地址:https://www.cnblogs.com/chuanzhang053/p/14107969.html
Copyright © 2020-2023  润新知