2016-12-16 57 views
0

直到我将args(添加到下面)添加到部署之后,此部署才算正常。当我添加简单的参数时,我无法弄清楚它为什么会变成CrashLoopError。我甚至试图回应Hello World,它仍然导致CrashLoopError。CrashLoopBackOff在Kubernetes中添加参数时

有没有日志,当我描述荚它表明:

Warning  FailedSync Error syncing pod, skipping: failed to "StartContainer" for "nginx" with CrashLoopBackOff: "Back-off 10s restarting failed container=nginx pod=nginx-2247906467-r9znh_dave-testing(98c3999e-c39b-11e6-936e-0050568b4a68)" 

这里是YAML:

- kind: Deployment 
    apiVersion: extensions/v1beta1 
    metadata: 
    name: nginx 
    spec: 
    replicas: 1 
    template: 
     metadata: 
     labels: 
      name: nginx 
      version: "1.9" 
     spec: 
     containers: 
     - name: nginx 
      imagePullPolicy: Always 
      image: "nginx:1.9" 
      ports: 
      - containerPort: 80 
      args: 
      - "echo $NGINX_CONF > /etc/nginx/nginx.conf" 
      env: 
      - name: NGINX_CONF 
      valueFrom: 
       secretKeyRef: 
       name: confs 
       key: nginx 
+0

你应该用kubectl logs -f 检查你的日志,看看你的吊舱为什么会崩溃。该错误可能是由于nginx在启动时将错误的nginx.conf文件视为输入。 – iamnat

+0

该命令没有输出日志。无意中回应HELLO WORLD也会无限地崩溃这个吊舱。 –

+0

使用'kubectl描述po ',你会得到更多的信息 – jaxxstorm

回答

1

这里是Kubernetes吊舱nginx的高山搬运工像一个工作版本:

apiVersion: v1 
kind: Pod 
metadata: 
    name: frontend-nginx-pod 
    labels: 
    app: nginx-test 
spec: 
    containers: 
    - name: nginx 
     image: nginx:1.11.6-alpine 
     ports: 
     - containerPort: 80 
      name: "http-server" 
     args: 
     - /bin/sh 
     - -c 
     - echo "hello" > /usr/share/nginx/html/index.html && nginx "-g daemon off;" 

我得到了同样的错误没有列出args如上。