运行自己的springboot项目
前言
这个系列是对我学习docker的一个总结,先从各种服务的搭建开始,直接带大家实战入门。其实docker本身是运维技能,后端同学只需要了解即可。我这个系列也不会对docker太过深入,点到为止。
补充一个自己项目的部署方案,本次例子采用我的开源项目jladmin为例。
springboot打包
如果是用idea开发,直接可以在截图出处双击package即可
本质上是运行了mvn package命令,关于其他命令同学们可以自己学习。打包完成之后会在主模块(jladmin-system)下的target文件夹下,命名为jladmin.jar(pom.xml里可以修改)。这个是maven多模块的情况下直接找主模块的target,如果是单模块就直接target下找即可。
创建镜像
docker创建镜像有2种方式,一是我们之前几章一直使用的,直接拉取dockerhub里的,我们自己也可以创建自己的docker镜像库,一般大公司都有自己项目都镜像,这边不多讨论。
二,就是我们这次使用的,通过Dockerfile创建自己的专属本地镜像。
#基于openjdk:8
FROM openjdk:8
# 指定当前操作目录
WORKDIR /soft/jladmin
#容器启动后执行的操作
CMD java -jar jladmin.jar
Dockerfile的规则语法这边不多说,同学们自行学习。注释有解释,WORKDIR是指定的你容器的虚拟目录(有点难理解,建议把jar包放到宿主服务器的同样位置,这样就不会纠结目录问题了)。
打开服务器终端,cd到Dockerfile所在目录下,
运行:
docker build -t jladmin .
创建镜像完成,然后运行容器
docker run --name myjladmin -v /soft/jladmin:/soft/jladmin -d -p 8090:8090 jladmin
这就和之前那些公共镜像的容器一样操作了。
补充命令
这边补充2个常用的查看容器状态的命令
当你有很多容器之后你想查看每个容器的占用内存等信息的时候可以用stats命令,但是直接用显示的是id,不是很直观,加上–format显示容器名字。
docker stats $(docker ps --format={{.Names}})
查看你容器的log,10就是每次只显示10条,可以自己调大。
docker logs -f -t --tail 10 myjladmin