Docker教程之dockerfile構(gòu)建centos鏡像
構(gòu)建自己的centos鏡像
docker pull centos下載下來的鏡像都是基礎(chǔ)版本,缺少很多常用的命令功能,比如:ll、vim等等,
下面介紹制作一個功能較全的自己的centos鏡像。
步驟
1、編寫dockerfile文件
FROM centos MAINTAINER xiao<example@163.com> ENV MYPATH /usr/local WORKDIR $MYPATH RUN yum -y install vim # vim命令 RUN yum -y install net-tools # ifconfig命令 EXPOSE 80 CMD echo $MYPATH CMD echo "---end--" CMD /bin/bash
2、構(gòu)建鏡像
-f file 指定dockerfile文件的路徑
-t tag 指定name:tag
docker build -f ./mydockerfile -t mycentos:0.1 . Successfully built e7527f97f78a Successfully tagged mycentos:0.1
3、測試運行
docker images docker run -it mycentos:0.1
可以看到進(jìn)入容器之后,直接就是在 /usr/local 目錄下,是因為dockerfile配置的WORKDIR

這時,ifconfig、vim命令都可以使用了
4、查看鏡像構(gòu)建歷史記錄
docker history imageID

CMD和ENTRYPOINT的區(qū)別
編寫CMD測試dockerfile文件
編寫dockerfile文件
FROM centos CMD ["ls", "-a"]
構(gòu)建鏡像
docker build -f ./dockerfile -t cmd-test .
啟動鏡像
docker run imageID/iamgeName

測試發(fā)現(xiàn),啟動鏡像時追加的命令替換了CMD命令,如下圖所示:

編寫ENTRYPOINT測試dockerfile文件
每個Dockerfile只能有一個ENTRYPOINT,如果指定了多個,只有最后一個被執(zhí)行,而且一定會被執(zhí)行
FROM centos ENTRYPOINT ["ls", "-a"]
# nginx 鏡像 ENTRYPOINT [ "/usr/sbin/nginx", "-g", "daemon off;" ]

總結(jié) CMD命令會被啟動容器時追加的命令替換執(zhí)行,
2.ENTRYPOINT命令不會被啟動容器時追加的命令替換,而是合并執(zhí)行

到此這篇關(guān)于Docker教程之dockerfile構(gòu)建centos鏡像的文章就介紹到這了,更多相關(guān)dockerfile構(gòu)建centos鏡像內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker四種網(wǎng)絡(luò)模式演示及連通性測試
這篇文章主要為大家介紹了Docker四種網(wǎng)絡(luò)模式演示及連通性測試,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04
Docker創(chuàng)建openresty容器的實現(xiàn)步驟
OpenResty可以用來構(gòu)建高性能的Web應(yīng)用和服務(wù),本文主要介紹了Docker創(chuàng)建openresty容器的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-03-03
Docker手動構(gòu)建JDK鏡像的實現(xiàn)示例
本文主要介紹了 Docker手動構(gòu)建JDK鏡像的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-08-08
快速使用docker-compose部署clickhouse的教程
ClickHouse 的工作速度比傳統(tǒng)方法快 100-1000 倍。它適用于大數(shù)據(jù)、業(yè)務(wù)分析和時間序列數(shù)據(jù)。在這個小教程中,我將向您展示如何以最少的設(shè)置安裝 ClickHouse,感興趣的朋友一起看看吧2021-11-11
Docker 環(huán)境運行 Mysql 和開啟 Binlog 配置主從同步的設(shè)置方法
今天給大家分享Docker 環(huán)境運行 Mysql 和開啟 Binlog 配置主從同步的設(shè)置方法,利用docker模擬mysql設(shè)置的主從同步,通過兩種方式給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-06-06

