当前位置 博文首页 > CHQIUU的专栏:基于Maven的Springboot项目源码部署到Docker解决

    CHQIUU的专栏:基于Maven的Springboot项目源码部署到Docker解决

    作者:[db:作者] 时间:2021-07-20 21:58

    在实训项目部署过程中需使用Maven对项目进行构建,这样用户只需要提交项目源代码,由Maven对项目进行构建。

    一、开发环境准备

    本次实战需要提前准备好以下内容:

    1. Docker服务所在环境:CentOS Linux release 7.6.1810
    2. Docker:19.03.12

    二、实现步骤

    1. 项目源码准备

    首先,需要将Springboot项目源代码拷贝到Docker服务所在服务器上,需包含src文件夹和pom.xml文件。如下图所示:

    image.png

    2. 添加Dockerfile文件

    在pom.xml所在目录中新建Dockerfile文件,并对项目进行配置。

    # 基础镜像,使用alpine操作系统,openjkd使用8u201
    FROM openjdk:8u201-jdk-alpine3.9
    
    #作者
    LABEL name="chqiuu" email="chqiuu@qq.com" verison="1.0.5"
    
    #设置环境变量,系统编码
    ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
    
    #声明一个挂载点,容器内此路径会对应宿主机的某个文件夹
    VOLUME ["/tmp"]
    
    #应用构建成功后的jar文件被复制到镜像内,名字也改成了ithe.jar
    ADD target/ithe-1.0.5.jar /usr/local/ithe/ithe.jar
    
    #启动容器时的进程
    ENTRYPOINT ["java","-jar","/usr/local/ithe/ithe.jar","--spring.profiles.active=prod"]
    
    #暴露端口
    EXPOSE 8030

    3. 执行Docker构建命令

    # 进入项目源码所在路径
    [root@localhost ~]# cd /usr/src/ithe
    # 执行Docker构建命令
    [root@localhost ithe]# docker run -it --rm --name maven -v "$(pwd)":/usr/src/ithe -v maven-repo:/usr/share/maven/ref -w /usr/src/app registry.cn-hangzhou.aliyuncs.com/acs/maven mvn clean install -Dmaven.test.skip=true && docker build -t ithe . && docker run -p 8030:8030 --name ithe ithe

    检查项目容器是否正常运行,如下图所示表示项目已正常启动,部署完成。

    image.png

    cs