Docker 學習筆記 DockerFile

2021-09-25 10:27:43 字數 1620 閱讀 6663

from 或者 from :

指定容器啟動時使用的映象(必須為第一行)

maintainer:用來指定作者資訊

run (shell指令碼模式)

run ["executable", "parms" ...]

export:指定了暴露的埠(不會自動開啟)

儘管在dockerfile裡制定了暴露的埠號,但在容器執行時仍舊要手動指定容器的埠對映

cmd:指定了容器執行時執行的命令(可被容器啟動時的指令覆蓋)

cmd

cmd ["executable", "parms" ...]

cmd ["parms" ...]:搭配entrypoint指令使用,提供預設引數

enterypoint:和cmd指令的區別在於不會被容器啟動時的指令所覆蓋

但是可以在容器啟動時使用docker run --entrypoint以及後面連線的指令所覆蓋

entrypoint ["executable", "parms", ...]

entrypoint

add:將檔案/目錄新增到dockerfile構建的映象中(包含了類似tar的解壓功能)

add ["", ""]

copy ["", ""]

volume:向建立的映象新增資料卷

volumn ["/data"]

workdir:指定建立的映象中的工作路徑(entrypoint與cmd指令都會在此目錄下執行)

workdir /path/to/workdir(指定絕對路徑)

env:向建立的映象中新增環境變數

env

env =

user:指定映象會以什麼樣的使用者執行(映象在容器中執行起來的時候,容器內顯示的使用者)

user nginx

onbuild:向映象新增觸發器(當乙個映象被用作其他映象構建時的基礎映象時,觸發器會被執行)

本次映象構建過程中並不會執行觸發器

onbuild [instruction]

構建映象的過程:

從基礎映象執行乙個容器

當執行了乙個對容器進行修改的指令後

執行類似docker commit的指令,提交乙個新的映象層(這也就是形成的中間層映象)

再基於剛提交的映象構建乙個新容器

再執行下一條指令,直到所有指令執行完畢

注意:dockerfile構建過程中,會刪除中間層容器,但不會刪除中間層映象,因而具有了除錯的能力(dockerfile的錯誤)

構建快取:

當通過dockerfile構建了乙個映象之後,再一次通過該dockerfile構建映象的時候,可以提高效率。

docker build --no-catch

檢視映象的構建過程:

docker history image

docker學習筆記1 docke環境的檢視

本文的操作是在ubuntu作業系統下的。一 環境檢查 當登入乙個安裝了docker的機器後,首先我們要檢查下docker環境如何。1 命令 docker v 上述命令返回安裝的docker的版本資訊,返回的資訊可能如下 docker version 1.9.1,build a34a1d5 說明 執行...

Docker學習收藏系列(一) 認識Docker

1 docker 是乙個軟體平台,讓您可以快速構建 測試和部署應用程式。docker 將軟體打包成名為容器的標準化單元,這些單元具有執行軟體所需的所有功能,包括庫 系統工具 和執行時。使用 docker,您可以將應用程式快速部署和擴充套件到任何環境中,並且知道您的 將執行。2 docker工作原理 ...

Docker系列四 使用UI管理docker容器

一 什麼是portainer?docker pull portainer portainer三 執行portainer portainer執行方式有以下兩種方式 1 單機版執行 如果僅有乙個docker宿主機,則可使用單機版執行,執行以下命令就可以啟動了 docker run d p 9000 90...