在停止Docker容器时,在IBM Cloud Private中,它会自动重新启动。怎么能停下来?
答案 0 :(得分:3)
以下是更多信息:
当您在IBM Cloud Private上使用容器时,您实际上正在部署单个Pod或更可能的部署。
当Pod由ReplicaSet,DaemonSet或StatefulSet管理时,如果pod意外失败,则会有一些语义适用于重新安排pod。删除Pod与pod中的其他故障(应用程序崩溃或工作节点故障)无区别。
您应该使用kubectl
来处理pod。您可以从用户>配置kubectl
在Web UI的右上角配置客户端。将环境命令复制并粘贴到控制台中。验证IP或网络地址是否可从客户端计算机解析(使用cluster/config.yaml
控制安装cluster_access_ip
中的此值。)
示例kubectl
配置步骤(从用户复制>在Web UI中配置客户端):
kubectl config set-cluster mycluster.icp --server=https://[NETWORK_ADDRESS]:8001 --insecure-skip-tls-verify=true
kubectl config set-context mycluster.icp-context --cluster=mycluster.icp
kubectl config set-credentials mycluster.icp-user --token=[TOKEN]
kubectl config set-context mycluster.icp-context --user=mycluster.icp-user --namespace=default
kubectl config use-context mycluster.icp-context
然后查看正在运行的pod:
kubectl get pods [--namespace default]
这些pod代表基本的部署单位:容器+卷+标签+指向ConfigMaps和Secrets的链接。
这些pod通常从其他管理“集合”部署:
kubectl get deployments [--namespace default]
kubectl get daemonsets [--namespace default]
kubectl get statefulsets [--namespace default]
这些馆藏代表政策+豆荚;关于如何恢复的行为被构建到每个构造中。
您可能有部署,因此要删除容器 -
kubectl get deployments -o wide [--namespace default]
找到感兴趣的部署,并将其删除:
kubectl delete deployments my-deployment [--namespace default]
现在将删除deployment
以及所有相关的广告连播。
答案 1 :(得分:0)
您需要先停止kubelet,否则它会自动启动已退出的容器。您可以运行“systemctl stop kubelet”。
答案 2 :(得分:0)
kubernetes重新启动失败的容器(pods),您应该将部署扩展到0个实例或删除部署,两者都可以使用kubectl(kubectl scale --replicas = 0 ...)或使用ICP控制台来实现。
答案 3 :(得分:0)
您应该将副本数量更改为零。