zoukankan      html  css  js  c++  java
  • kubernetes-subpath用法(把文件挂载在已存在的目录下,不覆盖原目录)

    以ngxin的配置文件为例子:

    nginx-deployment.yaml :
    
    apiVersion: v1
    kind: ConfigMap
    metadata:
    name: nginx-cm
    data:
    nginx.conf: |
    user nginx;
    worker_processes 4;
    worker_rlimit_nofile 48127;
    error_log /var/log/nginx/error.log warn;
    pid /var/run/nginx.pid; 
    events {
    multi_accept on;
    worker_connections 16384;
    use epoll;
    } 
    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;
    server {
    listen 80;
    server_name localhost;
    location / {
    root /usr/share/nginx/html;
    index index.html index.htm;
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    root /usr/share/nginx/html;
    }
    location /nginx_status {
    #allow 127.0.0.1;
    #deny all;
    access_log off;
    stub_status on;
    }
    }
    } 
    
    ---
    
    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
    name: nginx
    spec:
    replicas: 1
    template:
    metadata:
    labels:
    app: nginx
    spec:
    nodeSelector:
    kubernetes.io/hostname: 192.168.5.86
    containers:
    - name: nginx
    image: nginx:latest
    imagePullPolicy: IfNotPresent
    volumeMounts:
    - mountPath: /etc/nginx/nginx.conf
    name: nginx-config
    subPath: etc/nginx/nginx.conf
    ports:
    - containerPort: 80
    volumes:
    - name: nginx-config
    configMap:
    name: nginx-cm
    items:
    - key: nginx.conf
    path: etc/nginx/nginx.conf
    

      

    创建pod:

    kubectl create -f ./nginx-deployment.yaml


    查看nginx的目录的旧文件是否还在:

    $ kubectl exec -it nginx-6b76cd9c54-fb2q8 -- ls /etc/nginx/
    conf.d		koi-utf  mime.types  nginx.conf   uwsgi_params
    fastcgi_params	koi-win  modules     scgi_params  win-utf
    

      

    查看nginx.conf是否被更新了:

    $ kubectl exec -it nginx-6b76cd9c54-fb2q8 -- cat /etc/nginx/nginx.conf
    user nginx;
    worker_processes 4;
    worker_rlimit_nofile 48127;
    error_log /var/log/nginx/error.log warn;
    pid /var/run/nginx.pid; 
    events {
    multi_accept on;
    worker_connections 16384;
    use epoll;
    } 
    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;
    server {
    listen 80;
    server_name localhost;
    location / {
    root /usr/share/nginx/html;
    index index.html index.htm;
    }
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
    root /usr/share/nginx/html;
    }
    location /nginx_status {
    #allow 127.0.0.1;
    #deny all;
    access_log off;
    stub_status on;
    }
    }
    }
    

      

    实例配置:


  • 相关阅读:
    一些常用的方法(1)--去除DataTable中的重复数据
    皕杰报表入门知识(1)
    Red Hat 6.0 Linux系统跳过登录界面直接进入系统
    解决pycharm无法获取安装包文件列表
    sqlalchemy创建数据库自动映射
    python3使用importlib来重复加载模块
    python3使用exec来动态加载模块
    中间件datasnap用流传递数据
    使用fdmemTable来代替clientDataset,解决MySQL5.6(含)以上版本用cds多次更新时的错误
    dxSpreadSheet动态切换Sheet
  • 原文地址:https://www.cnblogs.com/weifeng1463/p/11332312.html
Copyright © 2011-2022 走看看