[转帖]新建k8s nginx容器(需要外网访问)

新建,k8s,nginx,容器,需要,外网,访问 · 浏览次数 : 0

小编点评

**第一步:创建deployapiVersion: extensions/v1beta1 的 deployment 资源** ```yaml apiVersion: extensions/v1beta1 kind: Deployment metadata: name: mynginx namespace: defaultspec spec: replicas: 1 selector: matchLabels: app: nginx template: metadata: name: web labels: app: nginx containers: - name: nginx image: nginx ports: - name: nginx containerPort: 80 volumeMounts: - name: html-config mountPath: /etc/nginx/conf.d/nginx.conf readOnly: true - name: nginx-logs mountPath: /var/log/nginx/ volumes: - name: html-config configMap: name: nginx.conf key: nginx.conf - name: nginx-logs hostPath: /test-nginx/logs/2 ``` **第二步:创建Ingress 规则** ```yaml kind: Ingress metadata: name: test-nginx namespace: defaultspec spec: rules: - host: test-nginx.test.net #域名 http: paths: - backend: serviceName: service-nginx servicePort: 80 ``` **第三步:添加阿里云 DNS 域名解析** ``` # 在阿里云设置中添加域名解析 ``` **第四步:访问域名** 在外放访问域名 `test-nginx.test.net`,应该能访问到 nginx 服务。

正文

https://www.cnblogs.com/fengzi7314/p/16337852.html

 

第一步,创建deploy

复制代码
apiVersion: extensions/v1beta1   #k8s版本不同,api可能也不同
kind: Deployment
metadata:
  name: mynginx
  namespace: default
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      name: web
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - name: nginx
          containerPort: 80
        volumeMounts:
          - name: html-config
            mountPath: /etc/nginx/conf.d/nginx.conf
            subPath: nginx.conf
            readOnly: true
          - name: nginx-logs
            mountPath: /var/log/nginx/
      volumes:
      - name: html-config
        configMap:
          name: nginx.conf
      - name: nginx-logs
        hostPath:
          path: /test-nginx/logs/
复制代码

2.创建configmap文件挂载到容器中

kubectl create cm nginx.conf --from-file=./nginx.conf

nginx.conf内容如下

复制代码
server{
        listen       80;
        server_name             test-nginx.test.net;
        access_log              /var/log/nginx/access.log main;
        error_log               /var/log/nginx/error.log error;

        location / {
                return 200;
        }
}
复制代码

3.创建ingress,使nginx可以通过域名访问

复制代码
apiVersion: extensions/v1beta1    #k8s版本不同,api可能也不同
kind: Ingress
metadata:
  name: test-nginx
  namespace: default
spec:
  rules:
  - host: test-nginx.test.net #域名
    http:
      paths:
      - backend:
          serviceName: service-nginx    #关联后端的svc
          servicePort: 80         #svc的端口号
status:
  loadBalancer:
    ingress:
    - ip: xxx.xxx.xxx.xxx                 #阿里云的k8s的负载均衡地址
复制代码

4.添加阿里云dns域名解析

 

5.现在就可以在外放访问域名了

与[转帖]新建k8s nginx容器(需要外网访问)相似的内容:

[转帖]新建k8s nginx容器(需要外网访问)

https://www.cnblogs.com/fengzi7314/p/16337852.html 第一步,创建deploy apiVersion: extensions/v1beta1 #k8s版本不同,api可能也不同 kind: Deployment metadata: name: myng

[转帖]k8s-mtu设置不当引发的线上故障

https://www.cnblogs.com/zisefeizhu/p/16611626.html 背景 在部署新的paas平台线上环境时,突发consul和es中间件无法创建。 排查过程 以consul 通过查询k8s集群中pod状态发现原来3pod的consul集群,其中2个pod一直重启。

[转帖]记一次flannel网络调整

https://www.jianshu.com/p/a772e4b951f2 背景 最近给一个子公司部署一套k8s集群,集群搭建完之后有几个新需求需要新增几个node节点,在新增节点时发现添加失败,经过查询发现是网络规划问题导致。 flannel启动失败,报错信息如下:Error registeri

[转帖]新建bat文件时处理路径中存在中文问题

https://www.jianshu.com/p/392464f222d5 如下我们修改txt文档时内容如下,存在中文路径,当另存为bat文件时运行报错: F: cd F:\测试\安全测试\软件\burp "G:\Program Files (x86)\jdk-19\bin\javaw.exe"

[转帖]Redis集群——SpringBoot连接Redis集群(带密码)

第一步,新建项目maven项目,添加依赖 (1)本文所采用的SpringBoot的版本如下 org.springframework.boot spring-boot-starter-parent

[转帖]jmeter正则表达式应用-01篇

如图所示 1.先新建一个login的http请求,然后再login的请求下新增一个正则表达式提取器,增加一个查看结果树查看结果 假如后端接口返回的数据为"{'msg': 'login success', 'code': 1001, 'token': '48b2837a33461f58988ae72b

[转帖]分享一个Navicat16最新版永久试用的办法

https://zhuanlan.zhihu.com/p/614621302 新建bat,就叫 navicat无限试用.bat @echo off echo Delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Registrati

[转帖]jmeter之发送jdbc请求--06篇

1.setup线程组中新建一个JDBC Connection Configuration配置元件 2.设置配置信息 Database URL:jdbc:mysql://127.0.0.1:3306/vue_interface?useUnicode=true&characterEncoding=utf

[转帖]金仓数据库KingbaseES V8R6 中unlogged表

KingbaseESV8R6有一种表称为unlogged,在该表新建的索引也属于unlogged。和普通表的区别是,对该表进行DML操作时候不将该表的变更记录变更写入到wal文件中。在数据库异常关机或者异常崩溃后该表的数据会被truncate掉,但是在写入性能上会比普通表快几倍。 这个特性类似于or

[转帖]grafana配置邮件发送

grafana的邮件配置文件是/etc/grafana/grafana.ini,新建grafana.ini文件,内容如下。 chown 472:472 grafana.ini #################################### SMTP / Emailing #########