DockerFile 解析
阿新 • • 發佈:2021-11-22
DockerFile是什麼
Dockerfile是用來構建Docker映象的構建檔案,是由一系列命令和引數構成的指令碼
Docker 三步驟
- 手動編寫一個dockerfile檔案,當然,必須要符合file的規範
- 有這個檔案後,直接 docker buid 命令執行,獲得一個自定義的映象
- run
DockerFile張什麼樣
以我們熟悉的 sentos 為列
https://github.com/CentOS/sig-cloud-instance-images/blob/b2d195220e1c5b181427c3172829c23ab9cd27eb/docker/Dockerfile
DockerFile 構建過程解析
DockerFile內容基礎知識
- 每條保留字指令都必須為大寫字母且後面要跟隨至少一個引數
- 指令按照從上到下,順序執行
- # 表示註釋
- 每條指令都會建立一個新的映象層,並對映象進行提交
Docker執行DockerFile的大致流程
- dockers從基礎映象執行一個容器
- 執行一條指令並對容器做出修改
- 執行類似docker commit的操作提交一個新的映象層
- docker 在基於剛才提交的映象執行一個新容器
- 執行docker中的下一條指令直到所有指令都執行完成
小總結
從應用軟體的角度來看,Dockerfile、 Docker映象與Docker容器分別代表軟體的三個不同階段,
- Dockerfile是軟體的原材料
- Docker映象是軟體的交付品
- Docker容器則可以認為是軟體的執行態。
Dockerfile面向開發,Docker鏡 像成為交付標準,Docker容 器則涉及部署與運維,三者缺- -不可,合力充當Docker體系的基石。
1、Dockerfile,需要定義一個Dockerfile,Dockerfile定 義了程序需要的一切東西。Dockerfile涉 及的內容包括執行程式碼或者是檔案、環境變數、依賴包、執行時環境、動態連結庫、作業系統的發行版、服務程序和核心程序(當應用程序需要和系統服務和核心程序打交道,這時需要考慮如何設計namespace的許可權控制)等等;
2、Docker映象,在用Dockerfile定義一檔案之後,docker build時會產生- -個Docker映象,當執行Docker映象時,會真正開始提供服務;
3、Docker容器,容器是直接提供服務的。