这篇文章主要介绍“MyBank怎么进行容器化”,在日常操作中,相信很多人在MyBank怎么进行容器化问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MyBank怎么进行容器化”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
示例:把一个简单的 Java Web 应用---MyBank 进行容器化。
它包含了 Java 源代码、JSP文件、图片和 CSS 等静态资源文件。
MyBank 的项目结构是基于 Maven 的要求部署,通过 Maven 可以编译和构建 MyBank 的部署包---WAR包。
和其它的应用程序一样,MyBank 在开发过程中,它的所以在源代码都被上传到配置管理库进行版本控制,这里所使用的配置管理服务器是 GitHub。
1. 安装部署源代码工具 Git.
# yum -y install git
2.从 GitHub 上下载示例的 Java 应用源代码。
[root@master ~]# cd /opt/
[root@master opt]# git clone https://github.com/nichochen/mybank-demo-maven
3.准备编译和构建环境。安装应用构建所需的Java开发工具包 JDK 及构建工具 Maven
# yum -y install maven
4.通过构建工具编译及构建应用。
# cd mybank-demo-maven/
[root@master mybank-demo-maven]# mvn package
构建完毕,将在 target 目录下生成一个 WAR 包 ROOT.war.
# ls target/
classes maven-archiver ROOT ROOT.war surefire surefire-reports test-classes
5.选择满足应用运行要求的基础容器镜像,或者从基础的操作系统镜像开始安装和构建。
# docker pull tomcat:7.0.70-jre7-alpine
6.编写 Dockerfile 。把构建好的应用部署包拷贝到发布目录。Dockerfile示例如下:
# cat Dockerfile
FROM tomcat:7.0.70-jre7-alpine
ADD ./target/ROOT.war /usr/local/tomcat/webapps/mybank.war
7.执行 Docker Build 构建镜像。把镜像命命为 mybank-tomcat。在没有指定镜像的 tag 的请求下,默认的标签为 latest。
# docker build -t mybank-tomcatbank-tomcat .
构建完后,可以看见 Docker Build 生成的新镜像
# docker images | grep mybank-tomcat
mybank-tomcat latest 0a46e831b130 2 days ago 150 MB
8.测试镜像。通过 docker run 命令测试新创建的镜像。参数 -p 8080:8080 把容器的 8080端口映射到主机的 8080端口。
# docker run -it --rm -p 8080:8080 mybank-tomcat
完成后通过浏览器访问 MyBank 的主页测试。
# oc get service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
hello-openshift ClusterIP 172.30.242.25 <none> 8080/TCP,8888/TCP 3d
9.推送镜像。测试通过后,将把镜像发布到相应的镜像仓库中。
# docker tag mybank-tomcat:latest 192.168.100.133:5000/mybank-tomcat:latest
# docker push 192.168.100.133:5000/mybank-tomcat:latest
到此,关于“MyBank怎么进行容器化”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注天达云网站,小编会继续努力为大家带来更多实用的文章!