Dockfile中操作檔案的命令ADD
©
COPY
和ADD
命令,在複製普通檔案的時候,並沒有什麼太大的不同,兩個命令都可以把本地檔案,複製到映象裡。(如果複製的路徑不存在,則會自動建立)
準備:
目錄檔案
FROM node:15.10.0-slim
COPY . ./app # ADD ./app
WORKDIR /app
RUN npm install --registry=https://registry.npm.taobao.org # 安裝node依賴的命令
CMD node app.js
構建景象完成之後我們使用 docker exec -it <Container> /bin/bash
進入容器的shell
可以看到檔案通過COPY
命令把宿主機器的專案檔案成功放入了映象中!
ADD
和COPY
命令的區別
ADD
構建映象和COPY
最直觀的一點不同,是ADD命令可以直接解壓gzip
壓縮檔案,這當我們有很多檔案要上傳操作的時候,就會變的簡單很多。
這裡我們把專案檔案都打包到一個app.tar
包中,然後構建映象的時候通過ADD
命令幫我們解壓,我們試一試吧!
FROM node:15.10.0-slim
ADD ./app.tar.gz /app
WORKDIR /app
RUN npm install --registry=https://registry.npm.taobao.org # 安裝node依賴的命令
CMD node app.js
注意這個包必須是通過
tar
的相關壓縮命令去壓縮,不要通過其他壓縮方式去壓縮然後改名字(別問我怎麼知道的~)
通過檢視容器內的目錄結構可以看出,ADD
命令幫我們把tar
包給解壓了!
4.WORKDIR
在寫Dockerfile檔案時,預設的操作目錄,是映象的根目錄。但有時候需要拷貝很多內容到映象裡是二級目錄,就可以使用WORKDIR命令。把工作目錄切換到二級,
WORKDIR
命令像我們操作linux下的cd
命令。
本作品採用《CC 協議》,轉載必須註明作者和本文連結