未加星标

使用Docker部署 spring-boot maven应用的方法

字体大小 | |
[运维安全 所属分类 运维安全 | 发布者 店小二04 | 时间 | 作者 红领巾 ] 0人收藏点击收藏

本文介绍了使用Docker部署 spring-boot maven应用,分享给大家,具体如下:

部署过程分为以下几个步骤:

创建一个简单的spring-boot应用
打包运行应用
容器化应用
在pom文件中添加docker支持
创建docker镜像
运行docker容器
查看正在运行的容器
启动/关闭/重启/删除docker容器

1. 创建一个简单的spring-boot应用

在IntelliJ IDEA中File->New->Project:
使用Docker部署 spring-boot maven应用的方法

使用Docker部署 spring-boot maven应用的方法

然后点Next->Finish.

2. 打包运行应用

pom.xml中添加依赖:

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>

添加一个控制器:

@Controller
public class HelloWorld{
@GetMapping("/hello")
public void helloworld(HttpServletResponse response) throws IOException {
response.getWriter().write("Hello Spring-boot");
}
}

运行项目,访问: http://localhost:8080/hello,如果出现: Hello Spring-boot 第二步完成.

3. 容器化应用

在项目目录创建Dockerfile文件: src/main/docker/Dockerfile(没有后缀),内容如下:

FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD demo-0.0.1-SNAPSHOT.jar app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]

其中 demo-0.0.1-SNAPSHOT.jar 是项目打包后 /target/ 里面的文件名

4. 在pom文件中添加docker支持

<properties>
<docker.image.prefix>ramer</docker.image.prefix>
</properties>
<build>
<plugins>
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.11</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource><targetPath>/</targetPath><directory>${project.build.directory}</directory><include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
</plugins>
</build>

5. 创建docker镜像

cmd进入到当前目录:

cd Z:/Desktop/springboot-demo

打包,创建镜像:

mvn package -Dmaven.test.skip=true docker:build

注意: 请确保maven已添加到path中;并且已安装docker,如果没有安装,请访问: https://www.docker.com/community-edition#/download 下载合适的版本.

6. 运行docker容器

##最好添加--name参数
docker run --name=springboot-docker-demo -p 8080:8080 -t ramer/demo

在浏览器访问: http://localhost:8080/hello

7. 查看正在运行的容器

cmd: docker ps

8. 启动/关闭/重启/删除docker容器

cmd: docker start/stop/restart/rm CONTAINER_ID/NAME
其中:
CONTAINER_ID: 是容器id,执行 docker ps 可查看
NAME: 是容器的名称,也就是docker run Cname后面的名字

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

本文运维安全相关术语:linux服务器代维 linux服务器搭建 运维管理 运维工程师 企业安全文章 企业安全管理 cf安全系统检测到游戏数据异常

主题: DockerSpring浏览器OPT删除RY
tags: gt,lt,docker,boot,容器,jar,spring,build,artifactId,demo,groupId,maven,添加
分页:12
转载请注明
本文标题:使用Docker部署 spring-boot maven应用的方法
本站链接:http://www.codesec.net/view/561116.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 运维安全 | 评论(0) | 阅读(124)