Nginx 代理设置

生成kibana的访问账号

生成一个密码

openssl passwd '123456'

在Portainer创建一个htpasswd的Config,前面为用户名,后面为上面生成的密码

user1:Iv64DdYe3QxLg

创建Nginx配置文件

接下来再创建一个nginx配置文件default.conf

#kibana面板
server {
    listen 80;
    server_name kibana.example.com;
    location / {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://kibana:5601;
        auth_basic "登陆验证";
        auth_basic_user_file /htpasswd;
    }
}
# 文件存储的外部访问
server {
    listen 80;
    server_name storage.example.com;
    location / {
        proxy_set_header Host $http_host;
        proxy_pass http://minio:9000;
    }
}
#主网站
server {
    listen 80;
    server_name www.example.com;
    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }
    location /user-center/ {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://user-center:9501/;
    }
    location /storage/ {
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://storage/;
    }
}

创建服务

docker service create \
    --name nginx \
    --replicas 1 \
    --network my-net \
    -p 80:80 \
    --config source=default.conf,target=/etc/nginx/conf.d/default.conf \
    --config htpasswd \
     nginx:1.17.6-alpine

接下来只需要把域名解析到任意节点IP就可以了

《PHP微服务练兵》系列索引博客:《PHP 微服务练兵》系列教程

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!