相比docker commit來說,dockerfile的方法會更加自動化,更加方便快捷,而且功能也更強大。拿構建nginx容器舉例。
先建立乙個目錄
mkdir /opt/docker-file進入目錄
cd /opt/docker-file/然後建立乙個nginx目錄並進入,建立乙個dockerfile檔案並寫入一些命令
cd nginxvim dockerfile
#this isdockerfile 寫完之後開始構建my docker file
#version
1#auth wt
#base
from centos #基礎映象是centos,後面跟有效的映象名(如果該映象你的本地倉庫沒有則會從遠端倉庫pull取)。後面的指令在些映象中執行
maintainer wt #告訴別人,是誰建立的(維護者資訊)
add nginx-1.13.4.tar.gz /usr/local/src
run yum install -y wget gcc gcc-c++ make openssl-devel #執行一些系統命令,每一條run指令(可能會有多條linux命令)會在當前容器最上面的可讀寫層執行並且提交成乙個新的映象層,接下來的指令會在這個新的鏡
像層裡執行。
run useradd -s /sbin/nologin -m www
workdir /usr/local/src/nginx-1.13.4
#進入指定目錄工作。
" >> /usr/local/nginx/conf/nginx.conf #修改nginx自啟動
env path /usr/local/nginx/sbin:$path
expose
80#指定容器對外暴露的埠號。
cmd [
"nginx
"] #指定你製作出來的映象在啟動成容器時執行命令的預設的引數。
docker build -t nginx-file:v1 /opt/docker-file/nginx接下來就可以看到每一步的操作了,每一步都有乙個id,都是乙個層級。
最後訪問宿主機的ip就可以看到nginx的歡迎介面了。
當然此案例只是乙個入門,做到更深入全面的操作還需要更多的實際專案參與。
系統製成docker映象 手動製作Docker映象
手動製作 docker 映象 前言b.環境為 centos 7.0 雲伺服器 用來用去感覺 windows 的 docker 出各種問題,比如使用 privileged 和 usr sbin init 會直接出錯暫停,因此還是使用 linxu 作業系統的雲伺服器了,不過之前的內容在 linux 下也...
系統製成docker映象 手動製作Docker映象
手動製作docker映象 docker pull centos 7 可以檢視 docker hub 官方以取得名稱 docker run it name centos7 centos 7 2.換源並安裝對應軟體 此處換為阿里雲的源 同時更換 yum 和 epel 此處安裝 mysql 和 httpd...
docker學習 centos安裝docker
1.更新yum源 yum update2.安裝依賴 3.設定yum源 使用ustc,也可以使用阿里雲的 yum config manager add repo4.安裝docker yum install y docker ce通過docker v檢視,如果檢視到版本號,說明安裝成功 5.設定ustc...