dockerfile,拷貝資料夾到映象中(不是拷貝檔案中的內容到映象)
阿新 • • 發佈:2020-12-09
目錄
背景說明
今天在通過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]#