openshift 小技巧之“启动参数”

原创
04/21 13:54
阅读数 445

    openshift 上部署应用的时候基本上和docker差不多,可以挂在磁盘添加环境变量。今天记录一个比较不常见的小知识。

    在docker部署的时候有时候会传入容器启动参数,类似于:

docker run -p 9090:9090 \
         --restart=always \
         -d --name=prometheus \
         -v /data/prometheus/config/prometheus.yml:/etc/prometheus/prometheus.yml \
         -v /data/prometheus/prometheus_data_backup:/etc/prometheus/data \
         docker.io/prom/prometheus:v2.6.1 \
         --storage.tsdb.retention=365d \
         --web.enable-admin-api \
         --web.enable-lifecycle

在镜像名称后面根的都是容器的启动参数,相当于:

/bin/bash /etc/prometheus/prometheus --storage.tsdb.retention=365d  --web.enable-admin-api --web.enable-lifecycle

这个在openshift中没有现有的功能,值能修改yaml文件了

  template:
    metadata:
      creationTimestamp: null
      labels:
        app: prometheus
        deploymentconfig: prometheus
    spec:
      containers:  # 添加上下面的四行
        - args:
            - '--storage.tsdb.retention=365d'
            - '--web.enable-admin-api'
            - '--web.enable-lifecycle'
          image: >-
            docker.io/prom/prometheus@sha256:acd95556f589764b00bf0eb46048ab1cdedc95b4fa380c29e911f61dab7ecc51
          imagePullPolicy: IfNotPresent
          name: prometheus
          ports:
            - containerPort: 9090
              protocol: TCP
          resources:
            limits:
              cpu: 500m
              memory: 2Gi
            requests:
              cpu: 125m
              memory: 2Gi
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File

注意:在添加了args 之后 后面的image,ports,resources 等列都要向后退一级,否则yaml格式会报错的。

下面就去启动后检查一下

/etc/prometheus $ ps -ef
PID   USER     TIME  COMMAND
    1 nobody    0:03 /bin/prometheus --storage.tsdb.retention=365d --web.enable-admin-api --web.enable-lifecycle
   29 nobody    0:00 /bin/sh
   75 nobody    0:00 /bin/sh
   92 nobody    0:00 /bin/sh
   99 nobody    0:00 ps -ef

 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部