Linux下Docker部署Spring boot项目

前提

1、服务器安装Docker环境,网上自行查找安装( yum -y install docker* )

2、上传准备部署的spring boot jar包

3、编写Dockerfile文件

一、使用idea创建spring boot项目

1、文件》New》新项目

Linux下Docker部署Spring boot项目_第1张图片Linux下Docker部署Spring boot项目_第2张图片

Linux下Docker部署Spring boot项目_第3张图片

Linux下Docker部署Spring boot项目_第4张图片

Linux下Docker部署Spring boot项目_第5张图片

2、编写简单测试代码Project》springTest》src》main》java》com》springtest》demo》DemoApplication

Linux下Docker部署Spring boot项目_第6张图片

3、运行DemoApplication

Linux下Docker部署Spring boot项目_第7张图片

4、浏览器输入 http://localhost:8080/test 测试(默认端口8080),如下所示:成功

Linux下Docker部署Spring boot项目_第8张图片

二、idea生成jar包,直接使用jar包运行项目

1、点击右侧 Maven Projects》Execute Maven Goal

Linux下Docker部署Spring boot项目_第9张图片

2、在执行Maven命令窗口输入clean package,点击执行

Linux下Docker部署Spring boot项目_第10张图片

3、生成的jar包存在项目的target文件夹下

Linux下Docker部署Spring boot项目_第11张图片

4、使用java -jar ××.jar运行(我是在Windows下执行,前提配置好java环境变量,具体操作自行搜索,不做解释)

Linux下Docker部署Spring boot项目_第12张图片

5、浏览器输入 http://localhost:8080/test 测试(默认端口8080),如下所示:成功

Linux下Docker部署Spring boot项目_第13张图片

三、Linux下使用docker部署jar包

1、上传jar到Linux服务器

# 新建project目录

[root@xqk ~]# mkdir /project

[root@xqk ~]# cd /project/

Linux下Docker部署Spring boot项目_第14张图片

2、准备Dockerfile

# 编辑Dockerfile文件

[root@xqk project]# vim Dockerfile

# 加入以下内容

FroM java:8
# VOLUME指令创建挂载点
VOLUME /project
ADD demo-0.0.1-SNAPSHOT.jar springTest.jar
#项目的启动方式
ENTRYPOINT ["java","-jar","/springTest.jar"]

注:

1).java:8 是使用jdk版本
2).demo-0.0.1-SNAPSHOT.jar是使用jar包名称
3).ADD demo-0.0.1-SNAPSHOT.jar /springTest.jar 拷贝jar到容器
4).ENTRYPOINT 执行jar文件

3、生成docker镜像

# Dockerfile和jar放在同一个文件夹下(我这里是/project),使用如下命令生成镜像,注意最后的 “ . ” (代表当前目录)

[root@xqk project]# docker build -t springtest .

注意:Docker  repository不能有大写字母

Linux下Docker部署Spring boot项目_第15张图片

# 查看docker镜像,如下图y已经有了一个名称为springtest的镜像

4、 运行docker容器

[root@xqk project]# docker run -it -d -p 9012:8080 springtest:latest /bin/bash  

Linux下Docker部署Spring boot项目_第16张图片

5、浏览器输入 http://ip:9012/test 测试,如下所示:成功,如访问不成功,容器正常运行的情况下请关闭服务器防火墙,或添加9012端口。

Linux下Docker部署Spring boot项目_第17张图片

 

你可能感兴趣的:(Linux)