Docker 是一個流行的容器化平臺,允許我們將應(yīng)用程序或服務(wù)包裝在統(tǒng)一格式的容器中,并與安裝在 Docker 主機上的主機操作系統(tǒng)隔離。
在 Docker 中,我們可以通過 Dockerfile 定義這些容器,其中包括從外部系統(tǒng)中拷貝文件到容器內(nèi)的操作。為了實現(xiàn)這一目的,Docker 提供了一個COPY
指令,可以將文件從本地或遠程源拷貝到容器內(nèi)。以下是一些常見命令:
# 將本地文件拷貝到容器內(nèi)。 COPY local_file_path container_file_path # 從 URL 下載文件并拷貝到容器內(nèi)。 COPY http://url.com/file container_file_path # 從目錄中拷貝所有文件到容器內(nèi) COPY directory_path container_directory_path # 根據(jù) .dockerignore 文件忽略應(yīng)用程序的文件和目錄,只拷貝剩余的文件。 COPY . container_directory_path
可以注意到,COPY
命令的第一個參數(shù)指定文件的來源,可以是一個本地路徑、一個 URL 或一個 Docker build context。第二個參數(shù)定義在容器內(nèi)要存儲拷貝的文件的路徑。如果目錄不存在,將自動創(chuàng)建。
需要注意的是,一旦文件被拷貝到容器中,它就在容器中存在,即使 Dockerfile 指定的其他命令刪除其來源(即 Dockerfile 指定的 Docker build context)。