命令格式:docker build [OPTIONS] <PATH | URL | ->
Usage: Build an image from a Dockerfile.
中文意思即:使用build命令,在Dockerfile的基礎上構建一個鏡像。git
- 經常使用選項說明
--build-arg
,設置構建時的變量--no-cache
,默認false。設置該選項,將不使用Build Cache構建鏡像--pull
,默認false。設置該選項,老是嘗試pull鏡像的最新版本--compress
,默認false。設置該選項,將使用gzip壓縮構建的上下文--disable-content-trust
,默認true。設置該選項,將對鏡像進行驗證--file
, -f,Dockerfile的完整路徑,默認值爲‘PATH/Dockerfile’--isolation
,默認--isolation="default",即Linux命名空間;其餘還有process或hyperv--label
,爲生成的鏡像設置metadata--squash
,默認false。設置該選項,將新構建出的多個層壓縮爲一個新層,可是將沒法在多個鏡像之間共享新層;設置該選項,其實是建立了新image,同時保留原有image。--tag, -t
,鏡像的名字及tag,一般name:tag或者name格式;能夠在一次構建中爲一個鏡像設置多個tag--network
,默認default。設置該選項,Set the networking mode for the RUN instructions during build--quiet, -q
,默認false。設置該選項,Suppress the build output and print image ID on success--force-rm
,默認false。設置該選項,老是刪除掉中間環節的容器--rm
,默認--rm=true,即整個構建過程成功後刪除中間環節的容器
- PATH | URL | -說明: 給出命令執行的上下文。
上下文能夠是構建執行所在的本地路徑,也能夠是遠程URL,如Git庫、tarball或文本文件等。
若是是Git庫,如https://github.com/docker/rootfs.git#container:docker,則隱含先執行git clone --depth 1 --recursive,到本地臨時目錄;而後再將該臨時目錄發送給構建進程。
構建鏡像的進程中,能夠經過ADD命令將上下文中的任何文件(注意文件必須在上下文中)加入到鏡像中。
-表示經過STDIN給出Dockerfile或上下文。
示例
docker build -t bjc/demo:latest --rm .
解析:-t bjc/demo:latest
,爲構建的鏡像標記名稱,即鏡像名爲:bjc/demo,打標爲latest;--rm
,整個構建過程成功後刪除中間環節的容器;.
,單獨的點,意思爲根據當前目錄下的Dockerfile文件生成鏡像github