如何给自己做网站,重庆网站建设aiyom,哪个网站做国内销海外的,如何评价一个企业网站做的好目录
一、实验
1.Go服务发布到k8s集群
二、问题
1.如何从Harbor拉取镜像 一、实验
1.Go服务发布到k8s集群
#xff08;1#xff09;linux机器安装go(基于CentOS 7系统)
yum install go -y #xff08;2#xff09;查看版本
go version #xff08;3#xff09;创…目录
一、实验
1.Go服务发布到k8s集群
二、问题
1.如何从Harbor拉取镜像 一、实验
1.Go服务发布到k8s集群
1linux机器安装go(基于CentOS 7系统)
yum install go -y 2查看版本
go version 3创建源码文件
[rootmaster1 ~]# mkdir test
[rootmaster1 ~]# cd test/
[rootmaster1 test]# cat main.go
package mainimport (net/httpgithub.com/gin-gonic/gin
)func statusOKHandler(c *gin.Context) {c.JSON(http.StatusOK, gin.H{status: success~welcome to study})
}func versionHandler(c *gin.Context) {c.JSON(http.StatusOK, gin.H{version: v1.1版本})
}func main() {router : gin.New()router.Use(gin.Recovery())router.GET(/, statusOKHandler)router.GET(/version, versionHandler)router.Run(:8080)
}注意这里有小括号 这里有2个双引号 4Go mod初始化项目
go mod init test 5设置代理
go env -w GOPROXYhttps://goproxy.cn,direct go mod tidy 6构建源码
CGO_ENABLED0 GOOSlinux GOARCHamd64 go build -o k8s-demo main.go
K8s-demo 为二进制文件 7编写dockerfile文件
实现功能容器里封装二进制代码
[rootmaster1 test]# cat Dockerfile
FROM alpine
ADD k8s-demo /data/app/
WORKDIR /data/app/
CMD [/bin/sh,-c,./k8s-demo]8构建镜像
docker build -t david/k8sdemo:v1 . 9打包镜像传到k8s工作节点
docker save -o k8sdemo.tar.gz david/k8sdemo:v1 scp k8sdemo.tar.gz node1:/root/ 10在node1节点解压镜像
docker load -i k8sdemo.tar.gz 11创建deployment的yaml文件
[rootmaster1 test]# cat k8s.yaml apiVersion: apps/v1kind: Deploymentmetadata:name: k8s-demonamespace: defaultlabels:app: k8s-demospec:selector:matchLabels:app: k8s-demoreplicas: 4template:metadata:labels:app: k8s-demospec:containers:- image: david/k8sdemo:v1imagePullPolicy: IfNotPresentname: k8s-demoports:- containerPort: 8080protocol: TCPresources:limits:cpu: 100mmemory: 100Mirequests:cpu: 50mmemory: 50MilivenessProbe:tcpSocket:port: 8080initialDelaySeconds: 10timeoutSeconds: 3readinessProbe:httpGet:path: /port: 8080initialDelaySeconds: 10timeoutSeconds: 2---apiVersion: v1kind: Servicemetadata:name: k8s-demo-svcnamespace: defaultlabels:app: k8s-demospec:ports:- name: apiport: 8080protocol: TCPtargetPort: 8080selector:app: k8s-demo12更新yaml文件
kubectl apply -f k8s.yaml 13查看pod和svc
kubectl get pods kubectl get svc 14修改svc的type类型变成nodePort
kubectl edit svc k8s-demo-svc 修改前 修改后 15查看svc
kubectl get svc 16浏览器访问测试 二、问题
1.如何从Harbor拉取镜像
1每个节点修改配置文件
vim /etc/docker/daemon.json
#增加如下代码log-driver: json-file,
log-opts: {max-size: 100m}, insecure-registries: [https://192.168.204.110]2Harbor新建项目 3查看镜像
docker images 4新打标签
docker tag david/k8sdemo:v1 192.168.204.110/david-project/k8sdemo:v1 5如遇到Harbor登录不了 6启动
cd /data/install/harbor
docker-compose start(7)成功