SpringBoot项目部署到Docker
准备材料
1.idea创建的没有错误的springboot项目
2.安装好docker环境的linux服务器 centos7
3.xshell工具
4.xftp工具
开始步骤
一、打包springboot项目
打开idea工具,点击底部Terminal,在命令行中输入命令:mvn clean package 按回车,即可执行自动打包。
然后等到几分钟,出现如下图所示表示打包成功。
二、利用xftp将打包好的jar文件拷贝至linux服务器
打包好的jar文件在target文件夹下
1.打开xshell连上Linux服务器,在root根目录下hsc下创建 好dockerFile文件夹
命令:mkdir -p /root/hsc/dockerFile
2.利用xftp将jar文件拷贝至该文件夹下
注意:放到哪个目录下可以自行选择,无要求。
三、创建Dockerfile文件
注意,文件名必须为Dockerfile,不能是其他名称
1.进入到dockerFile文件夹:命令 cd /root/hsc/dockerFile
2.创建Dockerfile文件:命令 touch Dockerfile
至此,dockerFile文件夹下存在两个文件
3.编辑Dockerfile文件 :命令 vi Dockerfile
按i进入输入状态,将下列信息输入到Dockerfile文件中,输入完成后按esc,然后按Shift+; 输入命令wq!保存。
四、制作docker镜像
1.编辑好Dockerfile文件保存后,在当前文件夹输入命令
docker build -f Dockerfile -t hsc_spring:v1.0 .
hsc_spring:v1.0表示你的镜像名称,可以自己输入其他的。命令后面的 . 不能省略
输入命令,回车后,出现如下界面,表示镜像制作成功
2.输入命令 docker images查看镜像
可以看到镜像制作成功。
五、创建容器,运行springboot项目制作的镜像
输入命令:
// -d表示后台运行 -p后面有两个端口,分别是:宿主机端口:容器端口
hsc_spring 表示你的容器名称
hsc_spring:v1.0 表示容器使用的哪个镜像
docker run -d -p 8089:8080 --name=hsc_spring hsc_spring:v1.0
输入该命令后,回车,即完成了springboot在docker上的部署
六、验证
springboot代码:
@RestController @RequestMapping("/provider") public class NacosTestController { @RequestMapping(value = "/echo", method = RequestMethod.GET) public String getStr() { return "Hello hsc"; }
浏览器验证:
表示已经部署完成了,之前设置的8089端口,即外网访问端口,需要linux服务器打开该端口。
七、部署多个节点
既然部署了一个节点,那么我们想要部署多个,该怎么办呢
很简单,继续在命令行下输入 ,使用8088端口,就可以在docker下部署多个节点了
docker run -d -p 8088:8080 --name=hsc_spring1 hsc_spring:v1.0
docker run -d -p 8087:8080 --name=hsc_spring2 hsc_spring:v1.0
验证:
打开nocos查看,节点
至此,该服务多个节点部署完成。