Docker图像工作,Kubernetes吊舱不工作。Ubuntu。日志:/bin/sh:[npm,start]:未找到
我正在学习一门使用Kubernetes的课程,当我试图在Kubernetes中创建一个pod时,遇到了一个错误 我正在使用Ubuntu,AMD64 我按照以下说明安装了microk8s.kubectl 这是我的Dockerfile,当我只使用Docker时,它会正确运行Docker图像工作,Kubernetes吊舱不工作。Ubuntu。日志:/bin/sh:[npm,start]:未找到,docker,npm,kubernetes,kubectl,microk8s,Docker,Npm,Kubernetes,Kubectl,Microk8s,我正在学习一门使用Kubernetes的课程,当我试图在Kubernetes中创建一个pod时,遇到了一个错误 我正在使用Ubuntu,AMD64 我按照以下说明安装了microk8s.kubectl 这是我的Dockerfile,当我只使用Docker时,它会正确运行 FROM node:alpine WORKDIR /app COPY package.json ./ RUN npm install COPY ./ ./ CMD ["npm", "star
FROM node:alpine
WORKDIR /app
COPY package.json ./
RUN npm install
COPY ./ ./
CMD ["npm", "start"]
这是我的帖子.yaml文件,逐字记录了我正在学习的课程
apiVersion: v1
kind: Pod
metadata:
name: posts
spec:
containers:
- name: posts
image: emendoza1986/blog_posts:0.0.1
来自kubectl get pods的输出
kubectl日志帖子的输出
kubectl描述pod帖子的输出
来自microk8s inspect的输出
我从日志中看到了错误,但我还没有找到解决方案。谢谢你的帮助 感谢您的宝贵意见。最初我把我的Dockerfile作为 CMD['npm','start']。 我在当地把它修好了 CMD[“npm”,“开始”] 但我没有将新版本推送到docker hub。
推送新版本解决了问题。感谢您的宝贵意见。最初我把我的Dockerfile作为 CMD['npm','start']。 我在当地把它修好了 CMD[“npm”,“开始”] 但我没有将新版本推送到docker hub。
推动新版本解决了这个问题。不会被视为列表,除非它解析为JSONQuotes很重要。需要
[“npm”,“开始”]
;错误消息表示实际值不同。确保它使用的是真正的ASCII引号,而不是卷曲的“智能”引号,等等。或者根本不要尝试将其作为JSON传递,然后切换到CMD npm start
我发布了我的Dockerfile。它看起来正确吗?您已经发布了有效的示例。您的实际设置必须不同。您的实际Dockerfile和此处的Dockerfile可能有所不同。请确保您提取的图像正确。由于您没有使用latest
标记,如果您已将图像推送到同一标记中,kubernetes将不会按默认值提取新图像。除非将其解析为JSONQuotes很重要,否则不会将其视为列表。需要[“npm”,“开始”]
;错误消息表示实际值不同。确保它使用的是真正的ASCII引号,而不是卷曲的“智能”引号,等等。或者根本不要尝试将其作为JSON传递,然后切换到CMD npm start
我发布了我的Dockerfile。它看起来正确吗?您已经发布了有效的示例。您的实际设置必须不同。您的实际Dockerfile和此处的Dockerfile可能有所不同。请确保您提取的图像正确。由于您没有使用latest
标记,如果您已将图像推送到同一标记中,默认情况下kubernetes不会提取新图像
NAME READY STATUS RESTARTS AGE
posts 0/1 CrashLoopBackOff 6 10m
/bin/sh: [npm,start]: not found
Name: posts
Namespace: default
Priority: 0
Node: desktope/192.168.0.18
Start Time: Thu, 23 Jul 2020 10:58:40 -0700
Labels: <none>
Annotations: Status: Running
IP: 10.1.87.20
IPs:
IP: 10.1.87.20
Containers:
posts:
Container ID: containerd://acb403c53759670370959cfa2cc0939f53126aee889e1f6dc2e831bc4dc22c3c
Image: emendoza1986/blog_posts:0.0.1
Image ID: docker.io/emendoza1986/blog_posts@sha256:f69b30cf0382d4c273643ac11c505378854b966063974cc57d187718cc0b0fd5
Port: <none>
Host Port: <none>
State: Waiting
Reason: CrashLoopBackOff
Last State: Terminated
Reason: Error
Exit Code: 127
Started: Thu, 23 Jul 2020 10:58:59 -0700
Finished: Thu, 23 Jul 2020 10:58:59 -0700
Ready: False
Restart Count: 2
Environment: <none>
Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from default-token-2fm2c (ro)
Conditions:
Type Status
Initialized True
Ready False
ContainersReady False
PodScheduled True
Volumes:
default-token-2fm2c:
Type: Secret (a volume populated by a Secret)
SecretName: default-token-2fm2c
Optional: false
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: node.kubernetes.io/not-ready:NoExecute for 300s
node.kubernetes.io/unreachable:NoExecute for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 48s default-scheduler Successfully assigned default/posts to desktope
Normal Pulled 29s (x3 over 47s) kubelet, desktope Container image "emendoza1986/blog_posts:0.0.1" already present on machine
Normal Created 29s (x3 over 47s) kubelet, desktope Created container posts
Normal Started 29s (x3 over 47s) kubelet, desktope Started container posts
Warning BackOff 12s (x4 over 45s) kubelet, desktope Back-off restarting failed container
microk8s is running
addons:
dashboard: enabled
dns: enabled
metrics-server: enabled
cilium: disabled
fluentd: disabled
gpu: disabled
helm: disabled
helm3: disabled
host-access: disabled
ingress: disabled
istio: disabled
jaeger: disabled
knative: disabled
kubeflow: disabled
linkerd: disabled
metallb: disabled
prometheus: disabled
rbac: disabled
registry: disabled
storage: disabled
Inspecting Certificates
Inspecting services
Service snap.microk8s.daemon-cluster-agent is running
Service snap.microk8s.daemon-containerd is running
Service snap.microk8s.daemon-apiserver is running
Service snap.microk8s.daemon-apiserver-kicker is running
Service snap.microk8s.daemon-proxy is running
Service snap.microk8s.daemon-kubelet is running
Service snap.microk8s.daemon-scheduler is running
Service snap.microk8s.daemon-controller-manager is running
Service snap.microk8s.daemon-flanneld is running
Service snap.microk8s.daemon-etcd is running
Copy service arguments to the final report tarball
Inspecting AppArmor configuration
Gathering system information
Copy processes list to the final report tarball
Copy snap list to the final report tarball
Copy VM name (or none) to the final report tarball
Copy disk usage information to the final report tarball
Copy memory usage information to the final report tarball
Copy server uptime to the final report tarball
Copy current linux distribution to the final report tarball
Copy openSSL information to the final report tarball
Copy network configuration to the final report tarball
Inspecting kubernetes cluster
Inspect kubernetes cluster
Building the report tarball
Report tarball is at /var/snap/microk8s/1503/inspection-report-20200723_112646.tar.gz