【发布时间】:2018-04-14 09:53:56
【问题描述】:
对 kubernetes/kops 很陌生,我已经按照 aws 上的 kops 教程进行操作,并且创建了一个集群。我想在集群上从 hub.docker 运行一个非常简单的容器,我该如何将这个容器添加到集群中?是在集群配置文件中还是我需要向节点添加另一个图像。
【问题讨论】:
标签: docker kubernetes kops
对 kubernetes/kops 很陌生,我已经按照 aws 上的 kops 教程进行操作,并且创建了一个集群。我想在集群上从 hub.docker 运行一个非常简单的容器,我该如何将这个容器添加到集群中?是在集群配置文件中还是我需要向节点添加另一个图像。
【问题讨论】:
标签: docker kubernetes kops
例如,要在集群中运行 nginx Web 服务器,您可以使用下面的命令行,这将从 docker hub 下载图像并启动实例。
kubectl 运行 nginx --image=nginx --port=80
这里是命令https://kubernetes.io/docs/user-guide/kubectl/v1.8/。
要运行您的图像,请使用您的图像名称更改 nginx。
apiVersion: extensions/v1beta1 kind: Deployment metadata: labels: run: nginx name: nginx spec: replicas: 2 selector: matchLabels: run: nginx strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 1 type: RollingUpdate template: metadata: labels: run: nginx tier: frontend spec: containers: - image: nginx:1.10 imagePullPolicy: IfNotPresent name: nginx lifecycle: preStop: exec: command: ["/usr/sbin/nginx","-s","quit"] restartPolicy: Always terminationGracePeriodSeconds: 30
将上述文件存储在nginx.yaml 文件中,然后使用 kubectl 命令运行它。
kubectl create -f nginx.yaml
【讨论】:
在 Kubernetes 中,容器可以作为 Pod 运行,Pod 是 Kubernetes 中的资源。
您可以准备一个 yaml 或 json 文件来使用命令 kubectl create -f $yourfile 创建您的 pod
可以在这里找到示例https://github.com/kubernetes/kubernetes/blob/master/examples/javaweb-tomcat-sidecar/javaweb.yaml
默认情况下,如果您的集群中不存在镜像,Kubernetes 将从 Docker Hub 拉取镜像,并且还取决于您的 ImagePullPolicy
你只需要在spec.containers.image部分指定你的图片
希望这会对你有所帮助。
【讨论】: