Docker学习之路 用commit命令创建镜像
Docker學習之路 用commit命令創建鏡像
docker74k 次閱讀 · 讀完需要 7 分鐘
假期快要結束了,干點正事,接著Docker的學習。
構建鏡像
構建鏡像的兩種方法:
使用docker commit 命令 使用docker build命令和Dockerfile文件Dockerfile更搶到、靈活,推薦使用。
一般來說不是真的“創建”新鏡像,而是基于一個已有的基礎鏡像,比如Ubuntu、Fedora等,構建新的鏡像而已。從零構建一個全新的鏡像可參考這篇文章
用commit創建鏡像
創建Docker賬號
共享和發布鏡像時構建鏡像中重要的環節,可以將鏡像推送到Docker Hub或資金的私有Registry中。首先到https://hub.docker.com/account/signup/ 創建賬號。
clipboard.png
郵件激活后,可以測試登錄:
$ sudo docker login
clipboard.png
這條命令會完成登錄,并將認證信息報錯起來供后面使用。個人認證信息將報錯到$HOME/ .dockercfg文件中.
用 commit 命令創建鏡像
可以想象是往版本控制系統里提交變更:首先創建一個容器,并在容器里做修改,就行修改代碼一樣,最后在講修改提交為一個新鏡像。
創建一個新容器命令:
$ sudo docker run -i -t ubuntu /bin/bash
我用之前創建好的aoct容器:
$ sudo docker start aoct
$ sudo docker attach aoct
clipboard.png
安裝Apache:
root@614122c0aabb:/# apt-get -yqq update
…
root@614122c0aabb:/# apt-get -y install apache2
…
clipboard.png
想把這個容器作為一個Web服務器來運行,所以要把它當前狀態保存下來,就不必每次都創建一個新容器并再次安裝Apache。
所以先用exit命令退出容器,再運行docker commit命令:
$ sudo docker commit 614122c0aabb aoct/apache2
clipboard.png
命令中,指定了要提交的修改過的容器的ID、目標鏡像倉庫、鏡像名。commit提交的知識創建容器的鏡像與容器的當前狀態之間的差異部分,很輕量。
查看新創建的鏡像:
$ sudo docker images aoct/apache2
clipboard.png
也可以像git一樣,在提交鏡像時指定更多信息來描述所做的修改:
$ sudo docker commit -m=‘A new image’ --author=‘Aomine’ 614122c0aabb aoct/apache2
clipboard.png
上面代碼,用-m指定行創建的鏡像的提交信息。–author指定鏡像作者,接著是容器ID、目標鏡像倉庫、鏡像名。
使用docker inspect命令查看新創建的鏡像的詳細信息:
$ sudo docker inspect aoct/apache2
clipboard.png
使用docker run命令從剛創建的新鏡像運行一個容器:
$ sudo docker run -t -i aoct/apache2 /bin/bash
clipboard.png
【本人的學習筆記,主要是對《我的第一本Docker書》、《Docker —— 從入門到實踐》的學習記錄,引用了很多書上的話和例子,并結合其他各種資源的學習。我使用的是windows 7, docker 1.3.2?!?/p>
總結
以上是生活随笔為你收集整理的Docker学习之路 用commit命令创建镜像的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: docker挂载NVIDIA显卡
- 下一篇: docker挂载本地目录的方法总结: