欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Docker 部署 vue+spring boot 前后端分离项目详解

程序员文章站 2022-03-04 13:35:09
...

Docker 部署 vue + spring boot 前后端分离项目

  1. 将 spring boot 项目打包,上传到服务器中
  2. 编写 Dockerfile 文件,内容如下:
FROM openjdk:latest
ADD . /home  #将当前文件夹下面的内容,复制到 /home 文件夹内
EXPOSE 9527  #开放9527端口
ENTRYPOINT exec java $JAVA_OPTS -jar /home/你的jar文件  #容器启动时运行该命令,运行jar包文件
  1. 使用该 Dockerfile 文件生成镜像:
docker build -t 为镜像命名 . #最后面的.为Dockerfile文件所在地 
  1. 使用刚刚生成的镜像文件创建运行spring boot项目的容器:
docker run -d --name 为容器命名 -p 9527:9527 镜像名
  1. 将 vue 项目打包,将打包后的 dist 文件上传到服务器
  2. 编写 nginx 的配置文件 default.conf :
server {
        listen  8100;
        server_name 服务器ip;
        
        location / {
           root   /data;	#dist文件挂载到容器的目录
           try_files $uri $uri/ /index.html;
           index index.html;
        }

	# vue向后端拿数据的代理 ip 设置
        location /api {        
		    proxy_pass http://运行spring boot项目的容器ip:9527; 
		}
   }
  1. 创建运行 vue 项目的容器:
docker run --name 为容器命名 -d -p 8100:8100 -v dist文件在服务器的地址:/data -v 在服务器中编写的default.conf文件的地址:/etc/nginx/conf.d nginx
  1. 两个容器启动成功后,即可访问 服务器ip:8100 这个地址访问vue项目