Vue3 + Docker + Nginx 完整部署流程

  1. 以 vue 项目为例,首先搭建一个vue项目

    powershell 复制代码
    pnpm create vue@latest
  2. 运行项目后随便在页面中输出点东西,然后打包 vue,打包之后的文件将会在项目根目录下的dist 目录下

    powershell 复制代码
    npm run build
  3. 在项目根目录下新建一个nginx的配置文件,文件名叫default.conf,文件内容如下

    • 服务器端监听 80 端口;
    • 服务器名为 localhost;
    json 复制代码
    server {
        listen 80;
        server_name localhost;
    
        location / {
            root /usr/share/nginx/html;
            index index.html index.htm;
        }
    
    
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
            root /usr/share/nginx/html;
        }
    }
  4. 在项目的根目录下创建 Dockerfile 文件,文件内容如下

    • 第一行:基于nginx的最新镜像构建
    • 第二行:将vue 打包后的 dist 文件夹拷贝到镜像的/usr/share/nginx/html/
    • 第三行:将本地的nginx的配置文件替换掉容器的 nginx 的配置文件
    json 复制代码
    FROM nginx:latest
    COPY dist/ /usr/share/nginx/html/
    COPY default.conf /etc/nginx/conf.d/default.conf
  5. 构建镜像:在项目目录下打开终端,在终端中执行下面的命令。

    • 构建的镜像名为my-vue3-image
    • . 表示Dockerfile文件所在的位置,即当前文件夹下
    powershell 复制代码
    docker build -t my-vue3-image .
  6. 执行构建镜像的命令之后可以在镜像列表中看到对应镜像名称,可以用如下命令查看所有镜像

    powershell 复制代码
    docker images
    # 或者,两者选其一即可
    # docker image ls
  7. 在容器中运行项目镜像,在终端中执行如下命令

    • -d:后台运行容器
    • -p 8080:80:将宿主机(自己的电脑)的8080端口映射到容器的80端口
    • --name my-vue3:容器名字叫 my-vue3
    • my-vue3-image:用 my-vue3-image 镜像创建容器
    powershell 复制代码
    docker run -d -p 8080:80 --name my-vue3  my-vue3-image
    • 命令等同于图片
  8. 容器跑起来后,在浏览器输入localhost:8080 可以看到相关的页面

相关推荐
极客先躯4 分钟前
高级java每日一道面试题-2026年02月03日-实战篇[Docker]-如何备份和恢复 Docker Volume?
运维·docker·容器·自动化·备份·持久化·恢复
“码”力全开17 分钟前
基于 Docker 与边缘计算的 AI 视频管理平台:打破 GB28181/RTSP 协议壁垒与源码交付架构解析
人工智能·docker·边缘计算
難釋懷18 分钟前
Nginx-AB安装
运维·nginx
江湖有缘19 分钟前
自建私有任务管理平台|Docker Compose部署Ticky完整教程
运维·docker·容器
ai产品老杨22 分钟前
破局多路异构计算:基于 Docker 容器化与 GB28181/RTSP 统一接入的 AI 边缘计算视频管理平台架构解析
人工智能·docker·边缘计算
梦想的颜色28 分钟前
Docker 知识全貌:一份体系化的知识结构报告
docker·云原生·容器·eureka
zhangfeng113333 分钟前
国家超算中心K8s 容器服务,新版容器和老版本的一些坑
云原生·容器·kubernetes
“码”力全开3 小时前
架构师视角的自研流媒体中台:基于 Docker、GB28181 与 RTSP 的边缘计算 AI 平台,源码交付赋能二次开发
人工智能·docker·边缘计算
杨浦老苏9 小时前
家庭实验室监控仪表盘HomeLab-Monitor
运维·docker·监控·群晖
回忆2012初秋10 小时前
【Nginx】原理、配置与运维实战(2)
运维·nginx·策略模式