千鋒Linux雲端計算教程全套影片合集:Dockerfile詳解(一)
我們可以把剛才的對容器的所有操作命令都記錄到一個檔案裡,就像寫更指令碼程式。之後用 docker build 命令以此檔案為基礎製作一個映象,並會自動提交到本地倉庫。這樣的話映象的構建會變的透明化,對映象的維護起來也更加簡單,只修改這個檔案即可。
同時分享也更加簡單快捷,因為只要分享這個檔案即可。
Dokcerfile 是一個普通的文字檔案,檔名一般叫 Dockerfile。
其中包含了一系列的指令(Instruction), 每一條指令都會構建一層,就是描述該層是如何建立的。
小試牛刀
示例:
- 編輯 Dockerfile 檔案
[root@localhost ~]# mkdir centos_dockerfile
[root@localhost ~]# cd centos_dockerfile/
[root@localhost centos_dockerfile]# vi Dockerfile
FROM centos:latest
LABEL maintainer="yangge <yangge@qf.com>" description="Install tree vim*"
RUN rpm -qa | grep tree || yum install -y tree vim*
指令介紹:
FORM 定義一個基礎映象LABEL 定義一些後設資料資訊,比如作者、版本、關於映象的描述資訊RUN 執行命令列的命令
編輯完,儲存退出
插個小訊息,也方便想學習的同學,在文章下方留言即可試聽課程外加領取千鋒HTML5、UI互動設計、PHP、Java+雲資料、大資料開發、VR/AR/Unity遊戲開發、Python人工智慧、Linux雲端計算、全棧軟體測試、網路安全等全部的影片學習教程。
2.開始構建映象
命令語法格式:
docker bulid -t 倉庫名/映象名:tag .
docker build [選項] <上下文路徑/URL/->
示例:
[root@localhost centos_dockerfile]# docker build -t centos:1.20 .
Sending build context to Docker daemon 2.048kB
Step 1/3 : FROM centos:latest
---> e934aafc2206
Step 2/3 : LABEL maintainer="shark<dockerhub@163.com>" description="Install tree vim*"
---> Using cache
---> 1207b2848015
Step 3/3 : RUN rpm -qa | grep tree || yum install -y tree vim*
---> Running in 33d321b249d7
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
...略...
Complete!
Removing intermediate container 33d321b249d7
---> adc30981bc84
Successfully built adc30981bc84 # 表示構建成功
Successfully tagged centos:1.20 # TAG 標籤
[root@localhost centos_dockerfile]#
構建映象的上下文(context)
這個 . 表示當前目錄,這實際上是在指定上下文的目錄是當前目錄,docker build 命令會將該目錄下的內容打包交給 Docker 引擎以幫助構建映象。
docker build 命令得知這個路徑後,會將路徑下的所有內容打包,然後上傳給 Docker 引擎。這樣 Docker 引擎收到這個上下文包後,展開就會獲得構建映象所需的一切檔案。
最佳實戰
一般來說,應該會將 Dockerfile 置於一個空目錄下,或者專案根目錄下。如果該目錄下沒有所需檔案,那麼應該把所需檔案複製一份過來。如果目錄下有些東西確實不希望構建時傳給 Docker 引擎,那麼可以用 .gitignore 一樣的語法寫一個 .dockerignore,該檔案是用於剔除不需要作為上下文傳遞給 Docker 引擎的Dockerfile 的檔名並不要求必須為 Dockerfile,而且並不要求必須位於上下文目錄中,比如可以用 -f ../Dockerfile.qf 引數指定某個檔案作為 Dockerfile。一般大家習慣性的會使用預設的檔名 Dockerfile,以及會將其置於映象構建上下文目錄中。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69916964/viewspace-2681704/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 千鋒Linux雲端計算教程全套影片合集:Dockerfile詳解(二)LinuxDocker
- Linux雲端計算教程全套影片合集:CMD指令講解Linux
- Linux雲端計算教程全套影片合集:WORKDIR 指令講解Linux
- 千鋒Linux雲端計算高階全套影片合集,輕鬆帶你玩轉雲端計算Linux
- 雲端計算教程:風靡B站的千鋒Linux雲端計算進階全套影片合集限時免費送Linux
- Linux雲端計算教程全套影片合集:關於Alpine LinuxLinux
- 《千鋒Linux雲端計算全套影片合集》限時分享,案例加原始碼提升技術Linux原始碼
- Linux雲端計算教程全套影片合集:如何用大白話解釋什麼是雲端計算Linux
- Linux雲端計算教程全套影片合集:學Mysql怎樣快速入門LinuxMySql
- 2020版千鋒Linux雲端計算入門全套教程帶你向高薪進擊Linux高薪
- 2020千鋒Linux雲端計算精品教程限量領取中Linux
- 千鋒Python基礎全套影片合集讓你快速入行AIPythonAI
- 千鋒UI設計專案全套影片合集,教你如何快速UI設計入門UI
- 全是乾貨!千鋒UI設計全套影片合集讓你輕鬆搞定設計UI
- 千鋒Linux雲端計算-檔案許可權管理Linux
- 升職加薪很困難?千鋒UI設計高階全套影片合集助你提升自己UI
- 不想敲程式碼雲端計算瞭解下?千鋒雲端計算教程限時領取
- 雲端計算影片教程:2020Linux新手小白影片教程Linux
- 幾百個G的《2020千鋒Python全套影片合集》限時免費放送Python
- 不可錯過的乾貨福利:千鋒軟體測試基礎全套影片合集教程帶你入行
- 《千鋒UI設計進階全套影片合集》限時免費領,助你升職加薪的利器!UI
- 新手怎麼學習Java?千鋒Java進階全套影片合集助你升職加薪Java
- 零基礎入行IT怎麼拿高薪?這套千鋒UI設計全套影片合集拿走不謝高薪UI
- 雲端計算教程學習入門影片課件:雲端計算的加密與金鑰管理詳解加密
- 學前端求職難?千鋒Web前端面試題全套影片合集助你快速通關前端求職Web面試題
- 2020版千鋒Python全套教程含影片+大綱+原始碼,限時領Python原始碼
- 深圳雲端計算培訓學習:雲端計算正在殺死運維嗎?–【千鋒】運維
- 深圳雲端計算培訓學習:女生做雲端計算運維容易嗎?–【千鋒】運維
- UI設計新手怎麼學?2020版千鋒UI設計全套影片教程免費釋出UI
- Java雲資料教程全套影片合集:Java學到什麼程度才算優秀?Java
- 計算機組成原理-全套影片教程計算機
- JavaScript教程全套影片合集:原型及原型鏈JavaScript原型
- JavaScript教程全套影片合集:DOM動畫效果JavaScript動畫
- 最新版本《千鋒Python專案全套影片合集》限時放送,需要拿走不謝Python
- 雲端計算教程學習入門影片課件:雲端計算終端技術講解
- JavaScript教程全套影片合集:建構函式內容講解JavaScript函式
- 大資料和雲端計算的關係是什麼?-千鋒深圳雲端計算培訓大資料
- 千鋒雲端計算畢業設計論文:PXE網路裝機流程一