zoukankan      html  css  js  c++  java
  • Springboot2 Vue 前后端分离 整合打包 docker镜像

      项目使用springboot2和Vue前后端分离开发模式,再整合,容器化部署。

      主要说明下大体的流程,扫除心里障碍,期间遇到的问题请自行解决。

      首先说下Vue打包:

      1、在Vue项目目录下运行命令打包:npm run build:prod --report

      生成需要使用的dist文件,打包后会出现在项目目录下。(目录结构可能会不同)

      

           按照如下方式整合到springboot项目中,resources在main目录下。

      (结构不同的话)一样拆到static目录下,static下面直接跟img、css、js等

      

           注意static文件的层级位置,app.js、favicon.ico、index.html在static目录下。

      配置好以后,先本地运行下,确保能正常访问并请求接口。

      我遇到了静态资源不能访问的问题:在java中加入如下代码后正常(上网搜的)

    @Configuration
    @EnableAutoConfiguration
    @ComponentScan
    public class LocalConfig implements WebMvcConfigurer {
        @Override
        public void addResourceHandlers(ResourceHandlerRegistry registry) {
            registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
        }
    } 

      2、打成jar包,我使用的是maven方式,在此不详述。

      3、使用docker打包成镜像

      

       将jar包和Dockerfile文件放在一个目录下。Dockerfile内容文件如下:

    FROM java:8
    VOLUME /tmp
    COPY personnel.jar app.jar
    RUN bash -c "touch /app.jar"
    EXPOSE 9100
    ENTRYPOINT ["java", "-jar", "app.jar", "--spring.profiles.active=test", "--server.port=9100", "/log/app.log"]

      java:8              Java版本号

      COPY personnel.jar app.jar      复制jar包为app.jar

      9100                是项目端口号

           其它的设置不用修改,具体的含义我也不清楚,望不吝赐教。

      在当前目录执行命令:

      docker build -t project-name .    打包命令 注意有个``.`` (首次打包会比较慢)

      docker images            查看image命令

         docker run -d -p 8080:9100 project-name

      运行Image命令,9100是项目接口,8080是镜像端口,镜像运行后使用localhost:8080访问。

      我们项目是直接把镜像推到阿里云容器中,阿里云上有现成的推送代码,不再赘述。

      简单的流程,希望能帮助找到方向。

  • 相关阅读:
    分享一些曾经设计的ASP.NET自定义服务端控件(附源程序下载)
    使用SuperSocket实现TLV自定义协议网络通信的Demo
    让Silverlight支持GB2312中文编码
    在Sqlite中通过Replace来实现插入和更新
    在VS2010项目中引用Lib静态库(以Openssl为例)
    金融系统中PBOC/EMV的TLV的算法实现(含C++/C#)
    在Windows下C++实现UNIX中的GZ格式的解压缩(附工具)
    Opensuse网络配置备忘
    项目管理理论与实践系列文章索引
    让Windows远程访问Opensuse桌面的解决办法
  • 原文地址:https://www.cnblogs.com/SamNicole1809/p/12096914.html
Copyright © 2011-2022 走看看