[docker学习笔记] 5.docker镜像构建

PS:实际开发,我们希望镜像能包含整个项目的完整环境,在其他机器上拉取打包完整的环境,直接运行即可

  • docker commit:从容器创建一个新的镜像

  • docker build:配合dockerfile创建镜像

5.1创建容器

 #拉取镜像
 docker pull nginx
 #创建容器
 docker run -di --name centos7 centos:7

5.2拷贝资源

 #拷贝宿主机根目录下的资源到centos7容器的root目录下
 docker cp /root/apache-tomcat-9.0.52.tar.gz  centos7:/root 
 docker cp /root/jdk-11.0.12_linux-x64_bin.tar.gz  centos7:/root 

5.3安装资源

 #进入容器内
 docker exec -it centos7 /bin/bash
 #确认复制结果
 cd root
 ls
 #创建java和tomcat目录
 mkdir -p /usr/local/java
 mkdir -p /usr/local/tomcat
 #解压jdk和tomcat
 tar -zxvf apache-tomcat-9.0.52.tar.gz -C /usr/local/tomcat
 tar -zxvf jdk-11.0.12_linux-x64_bin.tar.gz -C /usr/local/java
 #配置java jdk环境
 vi /etc/profile
 #找到export那行,回车添加配置信息

 export JAVA_HOME=/usr/local/java/jdk-11.0.12
 export PATH=$PATH:$JAVA_HOME/bin
 ​
 #重新加载环境变量文件
 source /etc/profile
 #检查java版本
 java -version
 ​
 #启动tomcat
 cd /usr/local/tomcat/apache-tomcat-9.0.52/  #跳转到tomcat目录
 bin/startup.sh #启动tomcat
 ​
 #删除安装包
 bin/shutdown.sh #关闭tomcat
 cd /root #回到根目录
 rm apache-tomcat-9.0.52.tar.gz  jdk-11.0.12_linux-x64_bin.tar.gz -rf  #删除文件

5.4构建镜像

docker commit -a="sdy" -m="tomcat9 and jdk11" centos7 mycentos:7

  • -a:提交镜像的作者

  • -m:镜像的描述

  • -c:使用dockfile指令来创建镜像

  • -p:在commit时,将容器暂停

 #用自定义镜像创建容器
 docker run -di --name mycentos7 -p 8080:8080 mycentos:7
 #验证镜像是否为打包时的样子
 docker exec -it mycentos7 bash #进入容器命令行模式
 source /etc/profile #启用配置
 java -version #查看java版本
 cd /usr/local/tomcat/apache-tomcat-9.0.52/ #跳到tomcat目录
 bin/startup.sh #启动tomcat
 #浏览器查看http://192.168.146.124:8080/,成功。(IP为VM装的centos的宿主机IP,端口为创建容器时的指定端口)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值