docker學(xué)習(xí)(一)docker 概述
docker學(xué)習(xí)(二)docker 安裝部署
docker學(xué)習(xí)(三)常用命令
docker學(xué)習(xí)(四)使用 commit 制作鏡像
docker學(xué)習(xí)(五)使用 Dockerfile 制作鏡像
docker學(xué)習(xí)(六)卷 Volume
docker學(xué)習(xí)(七)docker daemon
docker學(xué)習(xí)(八)HTTP/HTTPS 代理
docker學(xué)習(xí)(九)docker 調(diào)試
docker學(xué)習(xí)(十)docker 持久化存儲(chǔ)
制作Docker鏡像,一般有兩種方式:一種是commit方式,利用已有的鏡像,運(yùn)行后安裝定制自己需要的環(huán)境,然后生成鏡像;另一種就是build方式,通過(guò)編寫(xiě)Dockerfile命令腳本進(jìn)行生成鏡像。
本文介紹使用commit制作鏡像,并配置容器內(nèi)程序自動(dòng)啟動(dòng)。
1.從遠(yuǎn)程倉(cāng)庫(kù)拉取一個(gè)純凈的 centos 系統(tǒng)鏡像
sudo docker pull centos:7
2.創(chuàng)建并進(jìn)入容器
#創(chuàng)建容器
sudo docker run -itd --rm --name centos7-container --privileged=true --user=root -p 805:80 -p 5545:554 centos:7 /bin/bash
#查看所有的容器
sudo docker ps -a
#進(jìn)入容器
sudo docker exec -it centos7-container /bin/bash
3.操作容器
在容器中安裝環(huán)境 ,修改配置文件等(根據(jù)自己需求操作,以下僅供參考)。
sudo docker cp build.tar.gz centos7-container:/opt
容器內(nèi)應(yīng)用服務(wù)自啟動(dòng)設(shè)置(如果不想要自動(dòng)啟動(dòng),以下操作可以略過(guò))
在容器的根目錄下創(chuàng)建start.sh腳本:
#!/bin/sh
/opt/build/bin/MediaServer -c /opt/build/config/config.ini -d #啟動(dòng)服務(wù)(換成自己的命令)
/bin/bash #保留一個(gè)終端,防止容器自動(dòng)退出
修改start.sh權(quán)限:
chmod 777 /start.sh
4.安裝好環(huán)境之后,退出容器
用 exit 退出容器
5.將容器制作成鏡像
sudo docker commit -m 'centos:7 zlmediakit' -a 'creater' centos7-container centos7-zlm-image
6.將制作好的鏡像打成 tar 包
sudo docker save -o centos7-zlm-image.tar centos7-zlm-image
7.加載tar包
換一臺(tái)機(jī)器,加載tar包?;蛘咴诒緳C(jī)上刪除centos7-zlm-image。
加載tar包
sudo docker load -i centos7-zlm-image.tar
需要先stop容器centos7-container,stop之后容器自動(dòng)刪除,然后刪除靜像centos7-zlm-image。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-629253.html
#關(guān)閉現(xiàn)有容器(占用同名端口)
sudo docker stop ca17e6773fc1
sudo docker stop centos7-container
sudo docker rmi centos7-zlm-image
8.使用鏡像創(chuàng)建新容器
#查看現(xiàn)有容器
sudo docker ps -a
#創(chuàng)建新容器(如果不需要自動(dòng)啟動(dòng),可將/start.sh換成/bin/bash)
sudo docker run -itd --rm --name centos7-zlm-image-container --privileged=true --user=root -p 805:80 -p 5545:554 centos7-zlm-image /start.sh
#進(jìn)入新容器
sudo docker exec -it centos7-zlm-image-container /bin/bash
#停止容器(自動(dòng)刪除)
sudo docker stop centos7-zlm-image-container
#刪除靜像
sudo docker rmi centos7-zlm-image
bingo!
參考:
https://blog.csdn.net/lzyzuixin/article/details/119647438
https://blog.csdn.net/wang_magento/article/details/100763622文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-629253.html
到了這里,關(guān)于docker學(xué)習(xí)(四)使用 commit 制作鏡像的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!