怎樣用Docker創建我們自己的鏡像

怎樣用Docker創建我們自己的鏡像

官方文檔

Docker創建鏡像
總共有兩種方法: 
1.用別人的鏡像創建。 
1.1、先下載一個容器 
命令: docker pull training/sinatra 
1.2、然後用容器啓動這個鏡像 
命令:docker run -t -i training/sinatra /bin/bash 
1.3、接下來就是給使用中的容器,添加自己需要的工具等,來組裝自己的運行環境。 
1.4、將上一步組裝好的環境copy一份鏡像。 
命令: 
docker commit -m “Added json gem” -a “KateSmith” \ 
0b2616b0e5a8 ouruser/sinatra:v2 
說明:此處命令和git的命令svn的命令有些類似。 docker commit 是提交的意思,類似告訴svn服務器我要生成一個新的版本。 
-m 就是添加註釋,-a是作者。 
“\” 後面跟的是 1.2的容器環境id 要生成的鏡像的名稱 
容器的id:就是你每次輸入命令行@後面的字符 
例如:root@0b2616b0e5a8 
鏡像名稱:hub的名稱/鏡像名稱:tag 
1.5、docker images命令查看自己創建的鏡像。 
1.6、使用新建立的鏡像 
命令:docker run -t -i 要生成的鏡像的名稱 /bin/bash

2.使用Dockerfile 
兩種創建方法相比,就類似以前的Java項目開發,在沒有使用maven以前,所以的東西都是現在好了放到項目中,如果有新的開發人員進來,需要把項目的jar文件都拷貝給他。但是使用maven以後就是不需要了。Dockerfile就類似這樣的道理 
2.1、創建鏡像所在的文件夾和Dockerfile文件 
命令: 
1、mkdir sinatra 
2、cd sinatra 
3、touch Dockerfile 
2.2、在Dockerfile文件中寫入指令,沒一條指令都會更新鏡像的信息例如: 
# This is a comment 
FROM ubuntu:14.04 
MAINTAINER Kate Smith [email protected] 
RUN apt-get update && apt-get install -y ruby ruby-dev 
RUN gem install sinatra 
格式說明: 
每行命令都是以 INSTRUCTION statement 形式,就是命令+ 清單的模式。命令要大寫,“#”是註解。 
FROM 命令是告訴docker 我們的鏡像什麼。 
MAINTAINER 是描述 鏡像的創建人。 
RUN 命令是在鏡像內部執行。就是說他後面的命令應該是針對鏡像可以運行的命令。 
2.3、創建鏡像 
命令:docker build -t ouruser/sinatra:v2 . 
docker build 是docker創建鏡像的命令 
-t 是標識新建的鏡像屬於 ouruser的 
sinatra是倉庫的名稱 
:v2 是tag 
“.”是用來指明 我們的使用的Dockerfile文件當前目錄的 
2.4、創建完成後,從鏡像創建容器 
docker run -t -i ouruser/sinatra:v2 /bin/bash

到此兩種創建鏡像的方式就完畢了。

問題: 以上兩種方式都是以Docker的鏡像倉庫爲基礎,那我用自己的系統作爲鏡像怎麼辦那?

有使用工具的,有使用鏡像模板的等等,可以百度 
別人已經解決了這個問題
--------------------- 
作者:瞅小丫 
來源:CSDN 
版權聲明:本文爲博主原創文章,轉載請附上博文鏈接!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章