运维
Helm 2 、Helm 3 比较
· ☕ 4 分钟
Helm 3 终于发布了。我们可以告别 Tiller 了,但 Helm 3 的改变不仅于此。让我们继续探讨其他的变化。 1. 告别 Tiller Helm 3 移除了 Tiller ,是个不错的决定。但是要理解为什么不错,我们还需要了解一下 Tiller 产生的背景。Tiller 是 Helm 的服务端组件(运行在 Kubernetes 集群上),主要目的是为了让多

国内的 Helm 镜像源
· ☕ 1 分钟
helm 官方源 https://charts.helm.sh/stable ,国内的某些机器无法访问,需要配置镜像源。 1. 官方镜像源 1 helm repo add stable https://charts.helm.sh/stable 2. Git Pages 镜像 1 helm repo add stable https://burdenbear.github.io/kube-charts-mirror/ 可以参考 kube-charts-mirror ,搭建一个自主可控的镜像源。 3. Aliyun 镜像 长时间未更新,版本较旧 1 helm repo add stable https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts/ 4. Azure 镜像源 已经不可用,2021.07.08 更新。 1 2 helm repo add stable http://mirror.azure.cn/kubernetes/charts/

Harbor 使用自签证书支持 Https 访问
· ☕ 2 分钟
在之前的文章 使用 Helm 安装 harbor 中,我已经详细描述了安装 Ingress 、Harbor ,最后成功推送镜像的步骤。其中的域名是公网可以访问的,证书是认证机构签发的。但是在内网环境下,我们需要使用内网域名进行访问。本文主要解决使用自签证书通过 Https 访问 Harbor 的问题。 1. 生成自

如何使用 kfctl 安装 Kubeflow
· ☕ 1 分钟
1. 安装基础环境 安装 Kubernetes 参考链接:使用 Kubeadm 安装 Kubernetes 集群 。值得注意的是 Kubeflow 并不是对每个版本的 Kubernetes 兼容,system-requirements。 1 2 3 4 kubectl version Client Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.12", GitCommit:"e2a822d9f3c2fdb5c9bfbe64313cf9f657f0a725", GitTreeState:"clean", BuildDate:"2020-05-06T05:17:59Z", GoVersion:"go1.12.17", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"15", GitVersion:"v1.15.12", GitCommit:"e2a822d9f3c2fdb5c9bfbe64313cf9f657f0a725", GitTreeState:"clean", BuildDate:"2020-05-06T05:09:48Z", GoVersion:"go1.12.17", Compiler:"gc", Platform:"linux/amd64"} 安装 kustomize 1 2 curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash mv kustomize /usr/local/bin/ 1 2 3 kustomize version {Version:kustomize/v3.5.5 GitCommit:897e7b6e61e65188d846c32bd3af9ef68b0f746a BuildDate:2020-05-11T16:51:33Z GoOs:linux GoArch:amd64} 2. 安装 Kubefolow 确

你不知道的 Docker 使用技巧
· ☕ 2 分钟
1. 分阶段构建 编译项目需要借助一系列特定的工具,但在运行阶段并不需要这些工具。为了减小镜像体积,可以分阶段构建。在第一阶段进行构建,然后将编译生成的文件传入下一个阶段,生成更小体积的镜像。 1 2 3 4 5 6 7 8 9 10 11 FROM golang:1.12 as builder COPY / /go/src/github.com/shaowenchen/goproject WORKDIR /go/src/github.com/shaowenchen/goproject RUN CGO_ENABLED=0 GO111MODULE=on GOOS=linux GOARCH=amd64 GOFLAGS=-mod=vendor go