使用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;
}
}
}
配置说明
listen 80;
监听80端口root /home/wwwroot/default/app;
静态文件目录- 缓存配置
.html
配置Cache-Control:no-store
,其他类型的静态文件配置缓存为7d
,缓存配置方法详解见https://www.tapd.cn/52529947/markdown_wikis/?#1152529947001000238
生成镜像
在rootDir
目录中执行docker build -t ycl_h5:1.0 .
创建容器
docker run -d -p 8080:80 ycl_h5