docker部署vue项目

前几天折腾vue项目部署,这里记录下操作流程,方便后续自己使用参考。

处理nodejs版本导致报错

shell 复制代码
export NODE_OPTIONS=--openssl-legacy-provider

docker 部署Vue项目

  • 1、安装nginx
shell 复制代码
docker pull nginx
  • 2、配置default.conf
shell 复制代码
# 第一版
server {
 listen  80;
 server_name localhost;

 #charset koi8-r;
 access_log /var/log/nginx/host.access.log main;
 error_log /var/log/nginx/error.log error;

 location / {
  root /usr/share/nginx/html;
  index index.html index.htm;
 }

 #error_page 404    /404.html;

 # redirect server error pages to the static page /50x.html
 #
 error_page 500 502 503 504 /50x.html;
 location = /50x.html {
  root /usr/share/nginx/html;
 }
}
  • 3、编写Dockerfile文件,并基于该文件创建镜像
shell 复制代码
# 设置基础镜像
FROM nginx

# 将dist文件中所有的内容复制到  /usr/share/nginx/html/目录下
COPY dist/ /usr/share/nginx/html/

# 用本地的default.conf 配置来替换nginx默认的配置
COPY nginx/default.conf /etc/nginx/conf.d/default.conf

基于Dockerfile创建镜像

shell 复制代码
# .代表当前路径
docker build -t 镜像名称 .

创建完成之后,可以使用docker image ls 查看镜像

  • 4、基于镜像启动容器
shell 复制代码
docker run -p 4001:80 -d --name 容器名称  镜像名称

docker run 表示docker运行一个软件,也就是在指定的镜像上创建一个新容器,可以通过--name指定容器名称。 -p 4001:80 表示端口的暴露,端口4001暴露在容器的80端口/宿主机的4001端口映射到容器的80端口 -d 表示在后台运行 --name xxx 表示给这个容器命名 democontainer是起的容器名称 demonginx是刚才创建的镜像名称。

查看所有容器

shell 复制代码
docker ps -a

查看当前在运行的容器

shell 复制代码
docker ps
  • 5、访问端口查看Vue项目

直接访问上面的端口4001即可 localhost:4001

参考自:

blog.csdn.net/m0_52043522...

相关推荐
刘联其11 分钟前
.net也可以用Electron开发跨平台的桌面程序了
前端·javascript·electron
韩曙亮11 分钟前
【jQuery】jQuery 选择器 ④ ( jQuery 筛选方法 | 方法分类场景 - 向下找后代、向上找祖先、同级找兄弟、范围限定查找 )
前端·javascript·jquery·jquery筛选方法
前端 贾公子12 分钟前
Node.js 如何处理 ES6 模块
前端·node.js·es6
pas13617 分钟前
42-mini-vue 实现 transform 功能
前端·javascript·vue.js
hopsky24 分钟前
Docker Desktop 报 500
运维·docker·容器
曦云沐28 分钟前
一键部署ROS2开发环境!Docker run命令详解与实战
docker·容器·ros2
H Journey42 分钟前
Docker swarm 集群搭建实战
运维·docker·容器
esmap1 小时前
OpenClaw与ESMAP AOA定位系统融合技术分析
前端·人工智能·计算机视觉·3d·ai·js
毕设源码-钟学长1 小时前
【开题答辩全过程】以 基于node.js vue的点餐系统的设计与实现为例,包含答辩的问题和答案
前端·vue.js·node.js
小白路过1 小时前
记录vue-cli-service serve启动本地服务卡住问题
前端·javascript·vue.js