安装centos
docker pull centos
- 查看镜像
[root@localhost /]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEdocker.io/centos latest 1e1148e4cc2c 2 months ago 202 MB[root@localhost /]#
可以看到centos还是很轻巧,只有202MB,不像虚拟机那样大。
- 启动
centos容器
使用如下命令启动容器docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 1e1148e4cc2c /bin/bash
[root@localhost /]# docker run -i -t -v /root/software/:/mnt/software/ --privileged=true 1e1148e4cc2c /bin/bash[root@6316d53d801f /]#
-i:表示以“交互模式”运行容器
-t:表示容器启动后会进入其命令行
-v:表示需要将本地哪个目录挂载到容器中,格式:-v <宿主机目录>:<容器目录>
—privileged=true 使用该参数,container内的root拥有真正的root权限。
安装jdk
这里通过yum方式安装,当然也可以下载二进制文件安装
#查看yum库中的javayum -y list java*#装需要的jdk版本的所有java程序yum -y install java-1.8.0-openjdk*
安装完成查看java版本
[root@d6ff5de0fba5 /]# java -versionopenjdk version "1.8.0_191"
查看java安装地址 (可通过yum install which安装which)
[root@d6ff5de0fba5 bin]# which java/usr/bin/java
配置环境变量
#打开环境变量配置文件vi /etc/profile#增加下面内容到该文件export JAVA_HOME=/usr/bin/java #这里是java的安装地址export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar#使环境生效source /etc/profile
安装tomcat
yum install wgetwget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.92/bin/apache-tomcat-7.0.92.tar.gztar zxvf apache-tomcat-7.0.92.tar.gz# 添加JAVA_HOME和JRE_HOME两个环境变量vi /mnt/software/apache-tomcat-7.0.92/bin/catalina.sh# 增加下面内容到该文件export JAVA_HOME=/usrexport JRE_HOME=/usr#创建启动脚本vi /root/run.sh# 添加以下内容:#!/bin/bash# Export environment variablesource /etc/profile# Start tomcatsh /mnt/software/apache-tomcat-7.0.92/bin/catalina.sh run#添加可执行权限:chmod u+x /root/run.sh
构建镜像
构建完镜像可选择镜像上传至Docker Hub, 参考方法《docker中镜像的提交和上传》
镜像打包,参考方法 《docker镜像和容器的导出导入》
[root@localhost ~]# docker commit d6ff5de0fba5 mycentos:v1sha256:fce3f9e8d88294ca110bb0ef327926576f664ea9d3d8db09c07be93c9f4f2e16[root@localhost ~]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEmycentos v1 fce3f9e8d882 15 seconds ago 813 MBdocker.io/centos latest 1e1148e4cc2c 2 months ago 202 MB
启动镜像,端口映射值80端口,其他端口也可以,执行/root/run.sh启动脚本。
[root@localhost ~]# docker run -d -p 80:8080 --name javaweb -v /root/software/:/mnt/software/ fce3f9e8d882 /root/run.sh02c0914bd20f916ac10de2e52e1a017552621a76ad9f9a03931439c542a3a460
浏览器访问 宿主机ip:80

# 进入镜像docker exec -it javaweb bash# 测试文件vi /mnt/software/apache-tomcat-7.0.92/webapps/demo.jsp#写入一下内容<%String str = "Hello World";out.print(str);%>
访问测试文件,宿主机ip:80/demo.jsp

下次直接通过docker start javaweb直接启动镜像就可以访问了。
