当前位置: 首页 > article >正文

docker 安装 nginx 部署Vue前端项目

1 安装 docker

安装docker详细步骤

安装docker报错解决方案

2 安装 nginx

2.1 拉取镜像

拉取1.18.0版本的镜像

docker pull nginx:1.18.0

查看镜像 

2.2 创建实例并启动 

创建并启动实例

# 随便启动一个nginx实例,只是为了复制出配置
docker run -p 80:80 --name nginx -d nginx:1.18.0
# 将容器内的配置文件拷贝到当前目录/root/docker   
docker container cp nginx:/etc/nginx .
# 修改文件名称 将 nginx 修改为 conf
mv nginx conf
# 将 conf 移动到/root/docker/nginx 下
mkdir nginx
mv conf nginx/
# 将容器中的html文件夹复制到当前目录/root/docker/nginx/   
docker cp nginx:/usr/share/nginx/html /root/docker/nginx/
# 删除随便创建的nginx实例
docker stop nginx
docker rm 容器ID
# 进入 /root/docker/nginx下创建文件夹logs和html
mkdir logs
# 创建nginx实例并运行
docker run --net=host  --name nginx --restart=always --privileged=true \
-v /root/xyd/docker/nginx/html:/usr/share/nginx/html \
-v /root/xyd/docker/nginx/logs:/var/log/nginx \
-v /root/xyd/docker/nginx/conf:/etc/nginx \
-d nginx:1.18.0

注意: 这里使用 --net=host 表示容器和宿主主机共享Network namespace,不在使用 -p 80:80做端口映射,因为设置端口映射,则只有该映射端口起作用,nginx配置的其他端口无效。

命令解释,如下:

命令解释
-p 81:80端口映射,容器的80端口映射至虚拟主机的81端口
--net=host容器和宿主主机共享Network namespace
--name nginx容器名称
--restart=always开启启动
--privileged=true允许容器以超级用户(root)权限运行
-v /root/xyd/docker/nginx/html:/usr/share/nginx/html卷轴映射,挂载nginx内容目录
-v /root/xyd/docker/nginx/logs:/var/log/nginx卷轴映射,挂载nginx日志文件
-v /root/xyd/docker/nginx/conf:/etc/nginx卷轴映射,挂载niginx相关配置
-d后端运行
\换行

2.3 测试访问

使用浏览器访问虚拟机地址

3 部署前端项目

3.1 上传前端的 dist 文件挂在/usr/share/nginx/html/下

3.3 修改 nginx 配置

编写相关项目的配置文件test.conf,放在conf.d文件夹下,具体内容如下:

注意:nginx.conf中配置包含conf.d文件夹下所有的.conf文件)

server {
    listen       88;
    server_name  localhost;

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

    location / {
        # root指令指定了请求资源的根目录
        root   /usr/share/nginx/html/dist;
        # index指令指定了默认的索引文件
        index  index.html index.htm;
        # try_files指令用于按顺序检查文件或目录是否存在
        # 首先尝试按照请求的URI去寻找对应的文件,如果找不到,再尝试将请求作为目录处理,如果还是找不到,最后就返回/index.html文件
        try_files $uri $uri/ /index.html;
    }
    location /dev-api/ {
        proxy_pass http://localhost:89;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        rewrite ^/dev-api/(.*)$ /$1 break;
    }

}

3.3 重启 nginx

docker restart nginx

3.4 访问测试

浏览器访问 http://虚拟机ip:88,测试:

4 部署后端项目

后端部署详细步骤

 


http://www.kler.cn/a/590969.html

相关文章:

  • AOP+Nacos实现动态数据源切换
  • 超详细kubernetes部署k8s----一台master和两台node
  • AK 接口
  • Oracle静默安装方法
  • MySQL事务:确保数据一致性的关键机制
  • 复旦:LLM不同层位置编码缩放
  • 【arXiv 2025】卷积加法自注意力CASAtt,轻量且高效,即插即用!
  • 【紫光同创FPGA开发常用工具】FPGACPLD的下载与固化
  • 数据库设计实验(4)—— 数据更新实验
  • 神思智飞无人机智能调度系统介绍
  • pwn刷题记录
  • 笔记:代码随想录算法训练营day56:图论理论基础、深搜理论基础、98. 所有可达路径、广搜理论基础
  • XXXX数字化交流BI系统分析与设计(40页PPT)(文末有下载方式)
  • Web 小项目: 网页版图书管理系统
  • ESMFold 安装教程
  • (6)用于无GPS导航的Nooploop
  • 音视频处理的“瑞士军刀”与“积木”:FFmpeg 与 GStreamer 的深度揭秘
  • leetcode236-二叉树的公共祖先
  • Django REST Framework中的序列化器类和视图类
  • 基于深度学习的OCR+NLP,医疗化验单智能识别方案