其他分享
首页 > 其他分享> > 部署自己的第一个image到dockerhub,然后部署到k8s

部署自己的第一个image到dockerhub,然后部署到k8s

作者:互联网

准备工作

下载安装docker、kubectl、kind、kubectx、kubens
mac环境下直接brew就好
检查安装
1)docker contianer list有交互
docker contianer list有交互
2)kubectl version --client
kubectl version --client
3)kind自动化这些过程,kubeadm
kind -version

如何使用kind来新建一个k8s cluster

新建一个yaml文件,配置文件,内容如下

kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
name: my-cluster
nodes:
- role: control-plane
- role: worker
- role: worker
- role: worker
kind create cluster -config=kind-cluster.yaml
docker container list #使用查看running的集群

结果
在这里插入图片描述
tips:

创建容器化的应用greeter并将其上传至 dockerhub

创建容器化的应用greeter并将其上传至 dockerhub,部署到k8s

总的文件目录
.
└── lesson1
├── app
│ ├── Dockerfile
│ ├── go.mod
│ └── greeter.go
├── k8s
│ └── greeter.yaml
└── kind-cluster.yaml

本地使用

  1. greeter.go
package main
//每隔1s打印一次hello world
import (
	"fmt"
	"time"
)

func main() {
	idx := 0

	for true {
		fmt.Printf("%d,hello world\n", idx)
		idx++
		time.Sleep(time.Second)
	}

}

  1. go.mod
module app
go 1.17
//自动生成的go
  1. Dockerfile
FROM golang:1.16-alpine

WORKDIR /app

COPY go.mod ./

RUN go mod download

COPY *.go ./

RUN go build -o /greeter

CMD ["/greeter"]

goLand有直接运行的按钮,但是vscode没有找到
运行结果图在这里插入图片描述

上传到自己的dockerhub

docker build -t xxx(hub用户名)/greeter:v1.0.0 . #注意后面有个.
docker push xxx(hub用户名)/greeter:v1.0.0

先是生成镜像文件,然后上传到hub上,上传成功之后可以看到
在这里插入图片描述

新建一个pod来部署greeter container

manifest——用来部署资源的文件,这里是yaml,直接使用pod的模版就可以
greeter.yaml

apiVersion: v1
kind: Pod
metadata:
  name: greeter
  labels:
    plan: dev
spec:
  containers:
  - name: greeter
    image: tiana001/greeter:v1.0.0
    resources:
      limits:
        memory: "128Mi"
        cpu: "500m"

image这里需要指定版本

kubectl apply -f greeter.yaml
kubectl get pods

查看到如下结果,即为成功
在这里插入图片描述
这里使用了k: aliased to kubectl

后续的一些指令补充

k logs greeter # 程序运行时的log信
k logs greeter -f #使用follow的模式
k get pod greeter -oyaml #现在在k8s上部署资源的详细内容
k get pod greeter -owide #更多的信息
k delete -f greater.yaml #删除

标签:kubectl,kind,yaml,部署,image,dockerhub,go,greeter,k8s
来源: https://blog.csdn.net/qq_41123190/article/details/120999340