兩種方式創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別介紹(總結(jié)篇)
Docker是建立在Linux內(nèi)核基礎(chǔ)上的,在目前的主流Linux系統(tǒng)中,都已經(jīng)原生支持了Docker且使用體驗(yàn)也最好,當(dāng)然,在Windows平臺(tái)和MacOS系統(tǒng)中也支持Docker,只是需要使用類似Boot2Docker等虛擬化工具來(lái)提供Linux支持。
下面重點(diǎn)給大家介紹基于兩種創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別,感興趣的朋友可以跟著小編一起學(xué)習(xí)!
1.凡是用docker commit生成的鏡像啟動(dòng)的時(shí)候可以加載一個(gè)啟動(dòng)自己應(yīng)用的腳本,例如:
docker run -d -P tomcat7.0b:jdk1.6 /run.sh
最后的/run.sh就是啟動(dòng)tomcat應(yīng)用,表示啟動(dòng)該容器時(shí)順便啟動(dòng)tomcat應(yīng)用。否則只是啟動(dòng)了容器,并沒(méi)有啟動(dòng)自己的應(yīng)用。
run.sh內(nèi)容如下:
#!/bin/bash
/usr/sbin/sshd -D &
exec ${CATALINA_HOME}/bin/catalina.sh run
而且注意,就是現(xiàn)在這個(gè)容器是基于Docfile文件生成的鏡像實(shí)例化,如果你進(jìn)行操作之后,然后使用docker commit來(lái)基于這個(gè)容器生成新鏡像,那么基于新鏡像生成的容器,還是一樣要加載一個(gè)啟動(dòng)自己應(yīng)用的腳步。
2.用Docfile文件生成的鏡像時(shí),來(lái)啟動(dòng)容器就不用再加這個(gè)腳本了
FROM sshd3:ubuntu MAINTAINER waitfish from dockerpool.com(978145009@qq.com) ENV DEBIAN_FRONTEND noninteractive RUN echo "Asia/Shanghai" > /etc/timezone && dpkg-reconfigure -f noninteractive tzdata RUN apt-get install -yq --no-install-recommends wget pwgen ca-certificates && apt-get clean && rm -rf /var/lib/apt/lists/* ENV CATALINA_HOME /tomcat ENV JAVA_HOME /jdk ADD apache-tomcat-7.0.69 /tomcat ADD jdk1.6.0_45 /jdk #ADD create_tomcat_admin_user.sh /create_tomcat_admin_user.sh ADD run.sh /run.sh RUN chmod +x /*.sh RUN chmod +x /tomcat/bin/*.sh EXPOSE 8080 CMD ["/run.sh"]
因?yàn)樽詈笠痪銫MD就是表示啟動(dòng)容器時(shí),調(diào)用這個(gè)腳本。
以上所述是小編給大家介紹的兩種創(chuàng)建docker鏡像的啟動(dòng)容器時(shí)區(qū)別總結(jié),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- docker容器設(shè)置時(shí)區(qū)的幾種方式小結(jié)
- Docker時(shí)間不一致,時(shí)區(qū)設(shè)置方式
- docker容器時(shí)區(qū)錯(cuò)誤問(wèn)題
- Docker Alpine鏡像時(shí)區(qū)問(wèn)題完美解決方案
- docker時(shí)區(qū)問(wèn)題和遷移數(shù)據(jù)問(wèn)題
- Docker的MySQL容器時(shí)區(qū)問(wèn)題修改
- docker中時(shí)區(qū)問(wèn)題的處理方法
- 詳解修改docker時(shí)區(qū)及docker常用命令
- 為運(yùn)行中的docker容器設(shè)置時(shí)區(qū)
相關(guān)文章
docker-compose如何定義一個(gè)橋接網(wǎng)絡(luò),并為該網(wǎng)絡(luò)配置一個(gè)IP地址池
在DockerCompose中定義橋接網(wǎng)絡(luò)并配置IP地址池,可以實(shí)現(xiàn)服務(wù)的自動(dòng)IP地址分配,通過(guò)定義網(wǎng)絡(luò)、指定子網(wǎng)范圍、設(shè)置網(wǎng)關(guān)和啟用自動(dòng)分配功能,可以輕松管理服務(wù)的網(wǎng)絡(luò)配置,確保IP地址在子網(wǎng)范圍內(nèi)且不與其他網(wǎng)絡(luò)沖突,以避免網(wǎng)絡(luò)沖突2025-01-01
如何解決mysql配置文件錯(cuò)誤導(dǎo)致在docker中無(wú)法啟動(dòng)的問(wèn)題
這篇文章主要介紹了如何解決mysql配置文件錯(cuò)誤導(dǎo)致在docker中無(wú)法啟動(dòng)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01
docker的overlay2中存的都是什么及如何清理/var/lib/docker/overlay2
docke roverlay2是Docker中的存儲(chǔ)驅(qū)動(dòng)之一,用于管理鏡像和容器層的數(shù)據(jù),這篇文章主要給大家介紹了關(guān)于docker的overlay2中存的都是什么及如何清理/var/lib/docker/overlay2的相關(guān)資料,需要的朋友可以參考下2024-04-04
docker kubernetes dashboard安裝部署詳細(xì)介紹
這篇文章主要介紹了docker kubernetes dashboard安裝部署詳細(xì)介紹的相關(guān)資料,需要的朋友可以參考下2016-10-10
docker如何將jar包生成鏡像并將宿主機(jī)目錄掛載
這篇文章主要介紹了docker如何將jar包生成鏡像并將宿主機(jī)目錄掛載問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
使用Docker部署openGauss國(guó)產(chǎn)數(shù)據(jù)庫(kù)的操作方法
openGauss是一款支持SQL2003標(biāo)準(zhǔn)語(yǔ)法,支持主備部署的高可用關(guān)系型數(shù)據(jù)庫(kù),這篇文章主要介紹了使用Docker部署openGauss國(guó)產(chǎn)數(shù)據(jù)庫(kù),需要的朋友可以參考下2022-10-10
Docker私有倉(cāng)庫(kù)管理和刪除本地倉(cāng)庫(kù)中的鏡像
這篇文章主要介紹了Docker私有倉(cāng)庫(kù)管理和刪除本地倉(cāng)庫(kù)中的鏡像,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01

