1. 程式人生 > 其它 >Docker 11 自定義映象

Docker 11 自定義映象

我們日常拉取的映象是由別人製作再提交到倉庫的。

我們自己也是可以製作映象並提交的,使用 docker commit 命令。

docker commit

語法

docker commit [引數] 容器 [倉庫[:標籤]]

引數

  • -a:作者資訊。一般為 作者名字<郵箱>
  • -c:將 Dockerfile 指令應用於建立的映像。
  • -m:註釋資訊。
  • -p:提交期間暫停容器(預設)。

示例

在前面的 Docker 07 部署Tomcat 中,我們將 webapps.dist 中的內容複製到 webapps 下,這樣的容器就是我們自定義的了。

下面我們將這個容器建立為一個自定義的映象並提交到倉庫中。

[root@sail ~]# docker commit -a="sail<[email protected]>" -m="diy tomcat by sail" fe247e0ef80d tomcat4sail:1.0
sha256:187a99503046ef1a4316221d174add0fbc92391ac534fb1926e535474491f9d2
[root@sail ~]# docker images
REPOSITORY            TAG       IMAGE ID       CREATED         SIZE
tomcat4sail           1.0       187a99503046   5 seconds ago   684MB
tomcat                latest    24207ccc9cce   4 days ago      680MB

可以看到,我們自定義的映象已經在本地映象庫中了。

我們再來測試下自定義的映象:

  1. 停止原有容器。
[root@sail ~]# docker stop fe247e0ef80d
fe247e0ef80d
  1. 啟動自定義映象。
[root@sail ~]# docker run -d -p 8080:8080 --name="tomcat4sail" 187a99503046
602c3c576c1b6d13aa0d2508490220d479eaf8c52c9cfe116029c67437fac61b

由於自定義的映象還沒有提交到遠端庫,所以這裡只能使用映象 ID 啟動。

如果使用映象名啟動,會從遠端庫中進行搜尋,由於我們還沒有提交,會因為搜尋不到報錯。

  1. 訪問測試

這裡我們並沒有改變容器中 webapps 下的內容,但依然可以直接訪問,說明我們自定義的映象是生效了的。

由此,自定義映象製作成功。

本文來自部落格園,作者:程式航,轉載請註明原文連結:https://www.cnblogs.com/codesail/p/15682130.html