nginx经常用,但是对于实际配置意义都不大了解,今天就学习一下nginx
先看一下nginx配置说明,我们以后经常要配置的主要就是server这一块
在这里插入图片描述

  1. 通过docker安装nginx
    先创建映射目录
mkdir -p /data/nginx/{conf,conf.d,html,logs}

创建配置文件nginx.conf

nano /data/nginx/conf/nginx.conf

文件内容

user  nginx;
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" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;
    keepalive_timeout  65;
    #gzip  on;
    include /etc/nginx/conf.d/*.conf;
}

创建docker容器,这里的--net=host代表容器内的所有端口都能够映射出来

docker run --name nginx --net=host -v /data/nginx/html:/usr/share/nginx/html -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/logs:/var/log/nginx -v /data/nginx/conf.d:/etc/nginx/conf.d -d --restart=always nginx:latest
  1. 配置上游服务
    由于微服务的所有服务都是会走网关的,而网关可能会在多个服务器部署,所以需要上游服务统一部署
    修改/data/nginx/conf/nginx.conf文件
    在这里插入图片描述

  2. 创建微服务nginx配置
    新建/data/nginx/conf.d/gulimall.conf,这里配置的监听域名为gulimall.com,端口为80,即当我们在浏览器输入gulimall.com,会自动被当前配置监听到,并将请求转发到http://gulimall,nginx自动将请求转发到具体的网关服务器,及上面配置的上游服务器

server {
    listen       80;
    server_name  gulimall.com;
    location / {
        proxy_pass http://gulimall;
    }
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}
  1. 通过域名访问
    在这里插入图片描述
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐