Dra-M Dra-M
首页
技术
冥思
哲学
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

莫小龙

保持理智,相信未来。
首页
技术
冥思
哲学
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Java

  • Golang

  • 编程思想

  • 微服务

  • 中间件

  • Python

  • 运维

    • Linux

    • Bash

    • DevOps

      • 前言:搭建一套自有的围绕K8S的DevOps工具
      • 部署K8S -- kubeasz
      • 部署NFS服务器
      • 为K8S添加StorageClass
      • 学习用NodePort暴露K8S服务
      • 外部nginx代理到nodeport
      • 使用Docker安装LDAP
      • 使用K8S部署LDAP管理面板
      • 使用Docker部署第三方K8S面板Kuboard,并连接LDAP
      • 使用K8S部署GitLab,并连接LDAP
      • 使用K8S部署Jenkins,并连接LDAP
      • 使用K8S部署Nexus,并连接LDAP
      • Nexus Maven私服配置
      • Nexus Docker私服配置+K8S拉取私服镜像
      • Jenkins Pipeline 从 K8s Agent 启动构建
      • Jenkins Pipeline 拉取Git代码 获取提交信息
      • Jenkins Pipeline Maven打包
      • Jenkins Pipeline BuildDockerImage 推送到私服
      • Jenkins Pipeline 部署程序到K8S
      • Jenkins Pipeline 共享库
      • Loki日志收集+K8S
      • SkyWalking链路追踪+K8S、
      • SpringCloud+K8S联调说明
      • DevOps WebHook汇总 (Gitlab,Jenkins,K8S Event)
  • 技术
  • 运维
  • DevOps
莫小龙
2022-04-11

外部nginx代理到nodeport

部署过服务的NodePort之后我们往往不会直接使用NodePort访问服务,而是通过不同host:80访问,因此需要反向代理。 更规范的方法是使用K8S的Ingress,这里不会提及如何使用,我更喜欢自己在外部放一个Nginx。

docker run -di --name nginx -d -p 80:80 -p 9999:9999\
 -v /root/nginx/log:/var/log/nginx \
 -v /root/nginx/conf.d:/etc/nginx/conf.d \
 -v /root/nginx/conf:/etc/nginx/nginx/conf \
 -v /root/nginx/html:/lx/html \
 --restart always \
 --network host nginx
1
2
3
4
5
6
7

--network host : host模式类似于Vmware的桥接模式,与宿主机在同一个网络中,但没有独立IP地址。一个Docker容器一般会分配一个独立的Network Namespace。但如果启动容器的时候使用host模式,那么这个容器将不会获得一个独立的Network Namespace,而是和宿主机共用一个Network Namespace。容器将不会虚拟出自己的网卡,配置自己的IP等,而是使用宿主机的IP和端口。

vi /etc/nginx/conf.d/dev.conf

server {
    ## 监听多个端口 内网用80,外网用9999,避免运营商屏蔽80端口无法访问
    listen 80 default;
    listen 9999 default;
    return 404;    
}
## 支持ws
map $http_upgrade $connection_upgrade {
    default upgrade;
    '' close;
}
server {
    listen 80 ;
    listen 9999 ;
    server_name log.dev.dra-m.com;
    location / {
        proxy_pass http://127.0.0.1:30030;
        client_max_body_size 1024m;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

docker restart nginx


#DevOps#K8S#运维#Nginx
上次更新: 10/23/2024
学习用NodePort暴露K8S服务
使用Docker安装LDAP

← 学习用NodePort暴露K8S服务 使用Docker安装LDAP→

最近更新
01
mosquito配置ws协议
10-23
02
Pip包的离线下载和安装
10-23
03
stable diffusion 相关收藏
02-24
更多文章>
Theme by Vdoing | Copyright © 2019-2024 Dra-M
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式