zoukankan      html  css  js  c++  java
  • Docker发布SpringBoot工程(小白版)

    Linux RHEL docker上运行springboot项目,步骤略有小坑,现经过半小时的折腾,总结流程如下:
    1)linux RHEL安装docker
    很简单,

    yum install docker
    

    2)docker环境安装(例如JDK)
    但这里先别急着安装,可以在工程里面配置运行环境,届时会自动安装
    3)springboot工程建立
    这里注意不要用默认的springboot项目ide,推荐采用STS的maven工程项目,并且在建立工程的时候选取maven的archetype
    参考git上的spring-boot-docker用法
    工程创建好了之后,别忘记导入src/main/docker文件夹,里面有重要的DockerFile引导文件和json(aws专用,没有似乎也不影响)
    此工程框架自带的pom里面含有docker打包的一些插件,根据插件会在target目录生成或拷贝相应的文件(DockerFile,jar,zip等)
    DockerFile里面第一行似乎有问题(这似乎是Ubuntu的风格),

    FROM dockerfile/java:oracle-java8
    

    应该改为

    FROM java:latest
    

    反正需要根据实际项目需求修改DockerFile/pom,xml
    4)mvn打包,生成jar,

    mvn clean package
    

    然后将DockerFile一并移到linux RHEL的目标文件夹下(建议放到空文件夹下)
    注意不要放到非空文件夹下,否则后面会不小心把所有文件都上传到container,那就尴尬了
    5)docker命令build刚刚的jar包

    docker build -t docker-boot-demo .
    

    注意上述的命令行后面的".",代表当前路径下所有文件,这里会触发上传、环境镜像的下载更新等多个操作
    最后会提示Successfully built xxxxxx (xxxxxx代表自动生成的uuid)
    输入命令行docker images, 可以看到相应的依赖镜像、本体jar镜像等信息
    6)运行docker镜像,执行命令:

    docker run -p 8085:8080 -t xxxxxx (out:in 代表端口外部:端口内部映射关系,内部端口在DockerFile里面有声明,xxxxxx代表uuid或者镜像名)
    

    很快就可以发现熟悉的boot命令行启动了,此时访问localhost:8085/就可以看到相应的Hello World!了

    接下来,可以做如下的事情:
    打包发布可以用CI/CD集成,即将所有流水线操作脚本化,可以配置到Jenkins或者k8s,具体方案待研究
    docker镜像可以上传到nexus私服或者其他docker的registry

  • 相关阅读:
    PHP 使用 GET 传递数组变量
    Java实现 蓝桥杯 算法训练 数据交换
    Java实现 蓝桥杯 算法训练 数据交换
    Java实现 蓝桥杯 算法训练 数据交换
    Java实现 蓝桥杯 算法训练 景点游览
    Java实现 蓝桥杯 算法训练 景点游览
    Java实现 蓝桥杯 算法训练 景点游览
    Java实现 蓝桥杯 算法训练 二进制数数
    Java实现 蓝桥杯 算法训练 二进制数数
    Java实现 蓝桥杯 算法训练 二进制数数
  • 原文地址:https://www.cnblogs.com/kokomal/p/10690313.html
Copyright © 2011-2022 走看看