category
type
status
date
slug
summary
tags
password
Property
Sep 10, 2024 03:26 AM
icon
准备环境
1. Minikube:1.27.0 2. Docker-Desktop:20.10.13 3. Mac操作系统 4. gitlab-runner:使用安装下文安装的gitlab-runner
kubectl连接Minikube测试
- 先在docker中安装kubectl容器,测试该容器内的kubectl是否能连接到主机到Minikube集群,测试流程如下: 1.先在安装了Minikube的机器上查看kubectl的相关配置,得到相关证书的地址:

2.获取安装了Minikube主机的内网地址,比如我的内网地址如下:

宿主Minikube的启动命令如下:
3.将/.kube/config文件复制到一个目标文件夹,我这里选择的文件夹是
/Volumes/axis-data/internship/gitlab-runner/kubeconfig
,然后将第二步查询到的内网地址填到config文件,即下图对应位置:
4.执行以下命令,测试在docker容器中的kubectl能否连接到宿主主机的Kubernetes集群
成功的效果如下:

如果出现如下的错误,则按照以下步骤重启Minikube即可:

重启步骤:

测试成功后,即可编写如下.gitlab-ci.yml文件:
对应的Kubernetes Pod启动文件如下:
创建imagePullSecrets
- 由于kubectl拉起GitLab的docker仓库的镜像需要登陆权限,所以要使用如下命令创建一个imagePullSecrets:
然后在部署服务的yaml文件中将imagePullSecrets设置为上面创建的secret策略:gitlab-register。
运行测试
- 最后将变更push到GitLab上对应的代码仓库中,触发.gitlab-ci.yml中定义的流水线执行,效果如下:
- build:
- deploy_k8s
- 最终效果如如下:







- 作者:axiszql
- 链接:https://axiszql.com/article/internship-gitlab-ci-cd-docker-k8s
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。