制作Nginx自定义Docker镜像
1、直接看DockerFile
基础镜像
FROM nginx
# 维护者信息
MAINTAINER Oscar
将vue构建后的dist目录中的内容复制到docker容器中nginx默认配置的部署目录
COPY ./dist /usr/share/nginx/html
将docker容器中默认的配置替换为本地配置
COPY ./docker/nginx/nginx.conf /etc/nginx/nginx.conf
COPY ./docker/nginx/default.conf /etc/nginx/conf.d/default.conf
端口映射
EXPOSE 3000
2、nginx配置文件
nginx.conf文件:
user root;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '<br /> '$status $body_bytes_sent "$http_referer" '<br /> '"$http_user_agent" "$http_x_forwarded_for"';access_log /var/log/nginx/access.log main;sendfile on;<br /> #tcp_nopush on;keepalive_timeout 65;#gzip on;include /etc/nginx/conf.d/*.conf;<br />}
default.conf文件
server {
listen 5000;
server_name localhost;
#charset koi8-r;<br /> #access_log /var/log/nginx/host.access.log main;location / {<br /> root /usr/share/nginx/html;<br /> index index.html index.htm;<br /> # 此处主要增加该配置,解决界面刷新报 404 的问题<br /> # 参考博客: [https://blog.csdn.net/qq_27985607/article/details/86608392](https://blog.csdn.net/qq_27985607/article/details/86608392)<br /> try_files $uri $uri/ /index.html =404;<br /> }#error_page 404 /404.html;<br /> # redirect server error pages to the static page /50x.html<br /> #<br /> error_page 500 502 503 504 /50x.html;<br /> location = /50x.html {<br /> root /usr/share/nginx/html;<br /> }
}
3、利用DockerFile构建Nginx镜像
docker build -t nginx-test .
4、启动Nginx容器
docker run —name my-nginx -p 5080:5000 -d nginx-test

