因为之前一致出现的跨域问题,从而想到了这个办法,属于偏方。推荐使用nginx部署,再去解决跨域问题。
接下来聊一聊本文所使用的方法。
首先将你的前端vue项目拷贝一份到服务器,准备一个dockerfile文件,用这个进行部署首先你得前提是配置好了vue.config.js的跨域配置了,例如:
module.exports = {
devServer: {
proxy: {
port: 8081,// vue运行端口号
host: '0.0.0.0',
'/api': {
target: 'http://your-spring-boot-server:8080', // 后端Spring Boot项目地址
changeOrigin: true,
pathRewrite: {
'^/api': ''
}
}
}
}
};
//axios的baseurl也得设置成
const http = axios.create({
baseURL: '/api', // 以访问以api开头
timeout: 10000,
}
)
一 、拷贝项目文件和制作Dockerfile
Ddckfile信息
# 使用Node.js官方镜像作为基础镜像
FROM node:14.17.5
# 设置工作目录
WORKDIR /app
# 复制项目文件到容器中
COPY ./app /app
#配置docker容器里面的npm镜像源,不然可能会出现下载超时,出现错误
RUN npm config set registry https://registry.npm.taobao.org/
# 安装项目依赖
RUN npm install
# 打包前端应用
RUN npm run build
# 设置容器启动命令
CMD ["npm", "run", "serve"]
在Dockfile同级目录运行,注意最后的点号
npm build -t vuecli:v1.0 .
最后启动创建容器并启动
docker run -d --name vuepro -p 8080:8080 vuecli:v1.0
输入下面地址即可访问首页文章来源:https://www.toymoban.com/news/detail-624440.html
http://ip地址:8080文章来源地址https://www.toymoban.com/news/detail-624440.html
到了这里,关于以vue2为例,用npm开发环境在后端部署vue2项目(更推荐使用nginx部署)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!