使用 Docker 搭建简易的 Java Web 环境 (二)

group_5622_0
group_5622_0

《从最简单的入手学习 Docker (一)》一文中,能够简单的了解 Docker 的使用,这篇文章将再次重温下 Docker 的使用。java

建立一个 Java Web 环境

最近公司正在使用 Java Web 开发网站应用,因此有必要了解下如何使用 Docker 建立对应的环境。开发 Java Web 应用首要使用 Tomcat。mysql

使用 Tomcat 镜像

Tomcat 是由 Apache 软件基金会下属的 Jakarta 项目开发的一个 Servlet 容器,按照 Sun Microsystems 提供的技术规范,实现了对 Servlet 和 JavaServer Page(JSP)的支持,并提供了做为 Web 服务器的一些特有功能,如 Tomcat 管理和控制平台、安全域管理和 Tomcat 阀等。因为 Tomcat 自己也内含了一个 HTTP 服务器,它也能够被视做一个单独的Web服务器。可是,不能将 Tomcat 和 Apache HTTP 服务器混淆,Apache HTTP 服务器是一个用 C 语言实现的 HTTP Web 服务器;这两个 HTTP web server 不是捆绑在一块儿的。Apache Tomcat 包含了一个配置管理工具,也能够经过编辑 XML 格式的配置文件来进行配置。
来自 zh.wikipedia.org/wiki/Apache…git

使用 Tomcat 镜像很简单:github

docker run -it -p 8080:8080 --rm tomcat:8.0复制代码

WX20170911-212332@2x
WX20170911-212332@2x

运行结果以下:web

WX20170911-212536@2x
WX20170911-212536@2x

使用 MySQL 镜像

若是只是使用 Tomcat 镜像就写一篇文章,那也太 low 了。一个网站避免不了使用数据库,而 Java 应用使用本身的兄弟 --- MySQL,再合适不过了。sql

启动一个 MySQL 实例很是简单:docker

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=000000 -e MYSQL_DATABASE=yemeishu_database daocloud.io/mysql:latest复制代码

WX20170911-213430@2x
WX20170911-213430@2x

咱们进入该容器看看,是否是已经建立了数据库:yemeishu_database,以及是否设置了 root 的密码为:000000。数据库

WX20170911-213820@2x
WX20170911-213820@2x

若是使用数据库客户端,也能够看到建立的数据库:yemeishu_database浏览器

WX20170911-213933@2x
WX20170911-213933@2x

使用 JPress

JPress,一个 wordpress 的 java 代替版本,使用 JFinal 开发。支持相似 wordpress 的几乎全部功能,好比:模板,插件等。同时在模板上, JPress 提出了“模板即模型”的概念,方便模板制做人灵活制做业务模型,移除了 widget 等繁杂功能,同时在模板和插件制做上比 wordpress 更加灵活简洁。
来自github.com/JpressProje…tomcat

使用 JPress 的目标是,学习将 MySQL 容器和 Tomcat 容器配合在一块儿,安装和运行 JPress 博客。

这里主要编写 Dockerfile 文件和将博客源文件 jpress.war (来自于 JPress 官网) 放到 Tomcat 容器中:

FROM tomcat:8.0

MAINTAINER yemeishu "yemeishu@126.com"

COPY jpress.war /usr/local/tomcat/webapps复制代码

而后执行代码来建立新镜像:

docker build -t jpress:latest .复制代码

WX20170911-215021@2x
WX20170911-215021@2x

接着只要建立容器:

docker run -d -p 8888:8080 jpress复制代码

最后只需在浏览器输入网址:http://localhost:8888/jpress/

WX20170911-205014@2x
WX20170911-205014@2x

若是配置完以后,一直停留在最后一步,能够重启容器:

docker restart cefe34ed2003复制代码

WX20170911-204247@2x
WX20170911-204247@2x

预告

若是须要多个容器配合来配置一个项目的开发环境时,不能老是这么操做吧——一个一个容器的建立,而后再进行关联。

还好,Docker 提供了 「docker-compose.yml」文档的形式来组合多个容器来搭建开发环境。

Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a Compose file to configure your application’s services. Then, using a single command, you create and start all the services from your configuration.

下一步咱们将使用「Docker Compose」来构建更加复杂的开发环境。


coding01 期待您关注

qrcode
qrcode


感谢您能看到这了

qrcode
qrcode
相关文章
相关标签/搜索