docker创建容器
我们可以通过公共仓库拉取镜像使用,但是,有些时候公共仓库拉取的镜像并不符合我们的要求。尽管已经从繁琐的部署工作中解放出来,但是实际开发时,我们可能希望镜像包含整个项目的完成环境,在其他机器上拉取打包完成的镜像,直接运行即可。Dokcer支持自己构建镜像,还支持将自己构建的镜像上传至公共仓库,镜像构建可以通过以下两种方式来实现docker commit:从容器创建一个新的镜像docker build
·
我们可以通过公共仓库拉取镜像使用,但是,有些时候公共仓库拉取的镜像并不符合我们的要求。尽管已经从繁琐的部署工作中解放出来,但是实际开发时,我们可能希望镜像包含整个项目的完成环境,在其他机器上拉取打包完成的镜像,直接运行即可。
Dokcer支持自己构建镜像,还支持将自己构建的镜像上传至公共仓库,镜像构建可以通过以下两种方式来实现
docker commit:从容器创建一个新的镜像
docker build:配合dockerfile文件创建镜像
- 实战
通过docker commit来实现镜像的构建,目标,通过基础镜像centos:7,在该镜像中安装jdk和tomcat以后将其制作为一个新的镜像mycentos:7
1、创建容器
#拉取镜像
docker pull centos:7
#创建容器
docker run -di --name centos7 centos:7
2、拷贝资源
#将宿主机的jdk和tomcat拷贝至容器
docker cp -jdk-11.0.6_linux_x64_bin.tar.gz centos7:/root
docker cp apache-tomcat-9.0.37.tar.gz centos7:/root
- 安装资源
#进入容器
docker exec -it centos /bin/bash
--------------------以下操作在容器内部执行------------
#切换至/root目录
mkdir -p /usr/local/java
mkdir -p /usr/local/tomcat
#将 jdk和tomcat解压至容器/usr/local/java 和 /usr/local/tomcat目录中
tar -zxvf jdk-11.06_linux_x64_bin.tar.gz -C /usr/local/java
tar -zxvf apache-tomcat-9.0.37.tar.gz -C /usr/local/tomcat
#配置jdk环境变量
vi /etc/profile
#在环境变量中添加以下内容
export JAVA_HOME=/usr/local/java/jdk-11.0.6/
export PATH=$PATH:$JAVA_HOME/bin
#重新加载环境变量文件
source /etc/profile
- 构建镜像
docker commit -a="mrhelloword" -m="jdk and tomcat9" centos mycentos:7
-a:提交的作者
-c:使用Dockerfile命令来创建镜像
-m:提交的说明文字
-p:在commit时,将容器暂停
更多推荐
已为社区贡献4条内容
所有评论(0)