CentOS7中使用Dockerfile部署后台jar包

生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

导读:本篇文章讲解 CentOS7中使用Dockerfile部署后台jar包,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

场景

使用Dockerfile定制镜像来部署Tomcat项目:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/99105626

在上面使用Tomcat部署项目之外,还可以使用Dockfile基于openjdk部署jar包项目。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

1、新建SpringBoot项目,使用基本的web项目模板,然后添加一个get接口.

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
@RequestMapping("/badao")
public class DemoController {

    @GetMapping("/list")
    public String list()
    {
        System.out.println("公众号:霸道的程序猿");
        return "公众号:霸道的程序猿";
    }
}

2、将此服务打成一个jar包,命名为badao.jar,并将次jar包上传到CentOS服务器上

在根目录下新建目录

cd /
mkdir dockerfiledemo

然后将上面的badao.jar上传到该目录下,在此目录下新建Dockerfile文件

vi Dockerfile

然后将此文件的内容修改为:

FROM openjdk:8-jdk-alpine
MAINTAINER "badaodechengxvyuan"
LABEL description="公众号-霸道的程序猿"
WORKDIR app
ADD badao.jar /app/badao.jar
EXPOSE 9090
CMD java -jar /app/badao.jar

CentOS7中使用Dockerfile部署后台jar包

3、Dockerfile命令说明

FROM:指定基础镜像,必须为第一个命令

MAINTAINER: 维护者信息

LABEL:用于为镜像添加元数据

ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget

COPY:功能类似ADD,但是是不会自动解压文件,也不能访问网络资源

WORKDIR:工作目录,类似于cd命令

RUN:构建镜像时执行的命令

CMD:构建容器后调用,也就是在容器启动时才进行调用。

ENTRYPOINT:配置容器,使其可执行化。配合CMD可省去”application”,只使用参数。

ENV:设置环境变量

EXPOSE:指定于外界交互的端口

VOLUME:用于指定持久化目录

ARG:用于指定传递给构建运行时的变量

USER:指定运行容器时的用户名或 UID,后续的 RUN 也会使用指定用户。使用USER指定用户时,可以使用用户名、UID或GID,或是两者的组合。当服务不需要管理员权限时,可以通过该命令指定运行用户。并且可以在之前创建所需要的用户

ONBUILD:用于设置镜像触发器

4、上面的Dockerfile文件的意思

以openjdk为基础镜像

设置工作目录为app目录

将当前本地目录下badao.jar添加到容器add目录下

暴露9090端口

cmd运行命令启动jar包。

5、编译Dockerfile文件生成Docker镜像

docker build -t badaoimage .

注意这里的镜像名 不能有大写,后面还有一个点

CentOS7中使用Dockerfile部署后台jar包

注意:

-t代表目标镜像名

.代表Dockerfile文件路径

如果需要删除旧的镜像

docker rmi 镜像名

构建成功后可以通过

docker images

看到自己构建的镜像

6、运行构建的badaoimage镜像

docker run -d -p 9090:9090 badaoimage

然后查看运行中的容器

docker ps

并且在浏览器中访问get接口成功。

CentOS7中使用Dockerfile部署后台jar包

 

并且查看容器运行的输出日志

docker logs -f 容器ID

CentOS7中使用Dockerfile部署后台jar包

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136210.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!