淡人日记

落花无言,人淡如菊,书之岁华,其曰可读

使用docker部署前端项目

目录配置

|-- rootDir
    |-- Dockerfile
    |-- dist
    |   |-- production
    |       |-- m
    |-- nginxConfig
        |-- default.conf

目录说明

1、Dockerfile 镜像配置文件

2、dist 静态文件目录

3、nginxConfig nginx 配置文件

Dockerfile 配置

FROM nginx:alpine
COPY ./nginxConfig/default.conf /etc/nginx/conf.d/
COPY ./dist/production/ /home/wwwroot/default/app/

配置说明

  • FROM nginx:alpine 使用docker官方镜像nginx,tag为alpine
  • 拷贝nginx配置文件
  • 拷贝静态文件

nginx 配置

server{
        listen 80;
        server_name localhost;
        
        location ~* /  {
            root /home/wwwroot/default/app;
            if ($request_filename ~* .*\.(?:htm|html)$){   
              add_header Cache-Control "no-store";
            }   

            if ($request_filename ~* .*\.(?:js|css)$){   
                expires 7d; 
            }   

            if ($request_filename ~* .*\.(?:jpg|jpeg|gif|png|ico|cur|gz|svg|svgz|mp4|ogg|ogv|webm)$){   
                expires 7d; 
            }   
        }
}

配置说明

生成镜像

rootDir目录中执行docker build -t ycl_h5:1.0 .

创建容器

docker run -d -p 8080:80 ycl_h5

目录