Docker搭建JavaWeb项目
我们这章将创建一个springboot项目,并引入redis,mysql。做一个用户登录的功能,登录成功后用户信息存入redis,并成功显示用户信息(redis数据)。
一、镜像下载
我们首先要下载镜像,这里为了提高可读性,我加入了MySQL和Redis来做一个登录显示用户信息功能(登录成功数据存入Redis,用户信息从Redis里取)
①下载TomCat
docker pull tomcat
②下载Redis
docker pull redis
③下载MySQL
docker pull mysql:5.6
这里指定了一下mysql的版本为5.6 默认下载最新
这样我们的镜像就下载完了
二、小试牛刀
我们首先把mysql和redis的镜像启动起来
docker run --name docker_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d 1f47fade220d
docker run --name docker_redis -p 6379:6379 -d e1a73233e3be
首先第一个是启动的mysql容器,并指定了别名--name,映射了端口号-p,添加了一个root密码-e -d是后台运行。最后的是镜像id
第二个是启动的redis同样指定了别名,映射了端口号 后台运行。
我们现在可以docker ps一下查看我们容器的运行情况。
三、开始实践
我们创建一个springboot项目,并创建相应的实体类,连接数据库创建对于的表(在这里就不贴出了.ps:用工具远程连接数据库的时候要进mysql开启远程权限。)
简单贴出一点代码出来
application.properties配置文件
这里有很重要的一点,host名称不是ip地址,也不是localhost而是一会儿即将要配置的tomcat要link的mysql和redis的别名
--link格式:
--link:alias
我们要把我们的项目打成war包并上传到我们的centos中。
mvn clean install 打包完成利用工具上传到centos中(我用的FileZilla)
我们将war包copy到我们的/usr/local/project目录中。
现在启动tomcat
docker run --name docker_tomcat -p 8081:8080 -d -v /usr/local/project/docker_springboot.war:/usr/local/tomcat/webapps/docker_springboot.war --link docker_redis:docker_redis --link docker_mysql:docker_mysql 41a54fe1f79d
其中--link docker_redis:docker_redis
和--link docker_mysql:docker_myql 第一个docker_redis就是容器名称,第二个docker_redis是起的别名。和application.properties配置文件里是对应的。docker_mysql同理。
四、验证成果
①我们先访问192.168.9.120:8081看看我们tomcat启动了没有
ok。那我们先往数据库里添加条数据
我们使用postman测试登录
先输入错误的密码
再输入正确的密码
查看Redis的数据是否存在
ok教程到此结束。你学会了吗?
文章中demo地址: