Docker镜像构建中docker commit怎么使用
导读:本文共1700.5字符,通常情况下阅读需要6分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 我们可以通过公共仓库拉取镜像使用,但是,有些时候公共仓库拉取的镜像并不符合我们的需求。尽管已经从繁琐的部署工作中解放出来了,但是在实际开发时,我们可能希望镜像包含整个项目的完整环境,在其他机器上拉取打包完整的镜像,直接运行即可。Docker 支持自己构建镜像,还支持将自己构建的镜像上传到公共仓库,镜像构建可以通过以下两种方式来实现:docker commit:从... ...
目录
(为您整理了一些要点),点击可以直达。我们可以通过公共仓库拉取镜像使用,但是,有些时候公共仓库拉取的镜像并不符合我们的需求。尽管已经从繁琐的部署工作中解放出来了,但是在实际开发时,我们可能希望镜像包含整个项目的完整环境,在其他机器上拉取打包完整的镜像,直接运行即可。
Docker 支持自己构建镜像,还支持将自己构建的镜像上传到公共仓库,镜像构建可以通过以下两种方式来实现:
docker commit:从容器创建一个新的镜像;
docker huild:配合 Dockerfile 文件创建镜像;
示例:通过 docker commit 来实现镜像的构建,通过基础镜像 centos:7,将 jdk 和 Tomcat 安装在该镜像中制作成一个新的镜像
1、创建容器
#拉取镜像dockerpullcentos:7#创建容器dockerrun-id--namecentos7centos:7
2、拷贝资源
将宿主机的 jdk 和Tomcat 拷贝到容器
dockercpjdk-11.0.7_linux-x64_bin.tar.gzcentos7:/rootdockercpapache-tomcat-9.0.39.tar.gzcentos7:/root
3、安装资源
#进入容器dockerexec-itcentos7/bin/bash
在容器中执行以下操作:
#切换到/root目录cdroot/#创建Java和Tomcat目录mkdir-p/usr/local/javamkdir-p/usr/local/tomcat#将jdk和Tomcat解压到容器的Java和Tomcat目录中tar-zxvfjdk-11.0.6_linux-x64_bin.tar.gz-C/usr/local/Java/tar-zxvfapache-tomcat-9.0.39.tar.gz-C/usr/local/tomcat/#在环境变量文件中添加以下内容exportJAVA_HOME=/usr/local/java/jdk-11.0.6/exportPATH=$PATH:$JAVA_HOME/bin#重新加载环境变量文件source/etc/profile#测试环境变量是否配置成功[root@f1cd1a3df1edetc]#java-versionjavaversion"11.0.7"2020-04-14LTSJava(TM)SERuntimeEnvironment18.9(build11.0.7+8-LTS)JavaHotSpot(TM)64-BitServerVM18.9(build11.0.7+8-LTS,mixedmode)
4、构建镜像
dockercommit[OPTIONS]CONTAINER[REPOSITORY[:TAG]]dockercommit-a="xiaoyang"-m="jdk11andtomcat"centos7mycentos:7
-a:提交的镜像作者;
-c:使用 Dockerfile 指令来创建镜像;
-m:提交时的说明文字;
-p:在 commit 时,将容器暂停;
5、使用构建的镜像创建容器
#创建容器dockerrun-id--namemycentos7-p8080:8080mycentos:7#进入容器dockerexec-itmycentos7/bin/bash#重新加载配置文件source/etc/profile#测试Java环境变量[root@7ed6a969f63a/]#java-versionjavaversion"11.0.7"2020-04-14LTSJava(TM)SERuntimeEnvironment18.9(build11.0.7+8-LTS)JavaHotSpot(TM)64-BitServerVM18.9(build11.0.7+8-LTS,mixedmode)#启动Tomcat/usr//local/tomcat/apache-tomcat-9.0.39/bin/startup.sh
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
Docker镜像构建中docker commit怎么使用的详细内容,希望对您有所帮助,信息来源于网络。