k8s 的容器command用法相关

问题描述以及解决:
问题一 CrashLoopBackOff

如容器运行报如下错误:

在这里插入图片描述
且在describe和kubelet日志中没有明确记录原因,基本都是因为command命令不合法导致

如需要运行多条命令,使用;不要使用&&

如下示例:

          command: ["/bin/sh"]

          args: ["-c","/usr/local/bin/redis_start;while true;do echo hello;sleep 1;done"]

参考资料:

https://blog.csdn.net/iiiiher/article/details/72551638

https://docs.docker.com/engine/reference/commandline/run/
https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/

docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

k8s的command对应如上docker命令的[COMMAND] [ARG…]

1. 但在k8里这样报错,top必须得有个参数

[python]

[root@node131 yaml]# cat centos.yaml   
apiVersion: v1    
kind: Pod    
metadata:    
  name: centos  
  labels:    
    app: centos    
spec:    
  containers:    
  - name: mycentos  
    image: centos  
    imagePullPolicy: IfNotPresent  
    command: ["top",]  

报错是:env找不到…

2.给top加上参数

[python]
[root@node131 yaml]# cat centos.yaml   
apiVersion: v1    
kind: Pod    
metadata:    
  name: centos  
  labels:    
    app: centos    
spec:    
  containers:    
  - name: mycentos  
    image: centos  
    imagePullPolicy: IfNotPresent  
    command: ["top","-b"]  

3.已可以这样写

[python]

apiVersion: v1    
kind: Pod    
metadata:    
  name: centos  
  labels:    
    app: centos    
spec:    
  containers:    
  - name: mycentos  
    image: centos  
    imagePullPolicy: IfNotPresent  
    command: ["top"]  
    args: ["-b"]  

4,使用shell命令.

[python]

apiVersion: v1    
kind: Pod    
metadata:    
  name: centos  
  labels:    
    app: centos    
spec:    
  containers:    
  - name: mycentos  
    image: centos  
    imagePullPolicy: IfNotPresent  
    command: ["/bin/sh"]  
    args: ["-c","while true;do echo hello;sleep 1;done"]  

5,也可以这样

[python]

[root@node131 yaml]# cat centos.yaml   
apiVersion: v1      
kind: Pod      
metadata:      
  name: centos    
  labels:      
    app: centos      
spec:      
  containers:      
  - name: mycentos    
    image: centos    
    imagePullPolicy: IfNotPresent    
    command: ["/bin/sh","-c","while true;do echo hello;sleep 1;done"]  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值