AxisZql’s blog
首页
搜索
归档
Reading List
留言
友情链接
随笔
axiszql
文章
29
分类
7
标签
51
Reading List
留言
友情链接
随笔
归档
搜索
分类
标签
技术分享
✍️集成Gitlab CI/CD、Docker、Kubernetes来实现流水线部署
发布于: 2022-12-16
最后更新: 2024-9-10
次查看
GitLab
CI/CD
Docker
Kubernetes
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
GitLab CI/CD+Docker的CI/CD部署工作流 | AxisZql's blog
最近学习了GitLab的CI/CD,想结合GitLab runner和Docker来实现一个简单的自动化CI/CD方案👀
GitLab CI/CD+Docker的CI/CD部署工作流 | AxisZql's blog
https://notion.axiszql.com/article/internship-gitlab-ci-cd-docker
GitLab CI/CD+Docker的CI/CD部署工作流 | AxisZql's blog

kubectl连接Minikube测试

  • 先在docker中安装kubectl容器,测试该容器内的kubectl是否能连接到主机到Minikube集群,测试流程如下: 1.先在安装了Minikube的机器上查看kubectl的相关配置,得到相关证书的地址:
    • notion image
      2.获取安装了Minikube主机的内网地址,比如我的内网地址如下:
      notion image
      宿主Minikube的启动命令如下:
      3.将/.kube/config文件复制到一个目标文件夹,我这里选择的文件夹是/Volumes/axis-data/internship/gitlab-runner/kubeconfig ,然后将第二步查询到的内网地址填到config文件,即下图对应位置:
      notion image
      4.执行以下命令,测试在docker容器中的kubectl能否连接到宿主主机的Kubernetes集群
      成功的效果如下:
      notion image
      如果出现如下的错误,则按照以下步骤重启Minikube即可:
      notion image
      重启步骤:
      notion image

测试成功后,即可编写如下.gitlab-ci.yml文件:

对应的Kubernetes Pod启动文件如下:

创建imagePullSecrets

  • 由于kubectl拉起GitLab的docker仓库的镜像需要登陆权限,所以要使用如下命令创建一个imagePullSecrets:
    • 然后在部署服务的yaml文件中将imagePullSecrets设置为上面创建的secret策略:gitlab-register。

运行测试

  • 最后将变更push到GitLab上对应的代码仓库中,触发.gitlab-ci.yml中定义的流水线执行,效果如下:
    • notion image
    • build:
      • notion image
        notion image
    • deploy_k8s
      • notion image
        notion image
    • 最终效果如如下:
      • notion image
        notion image
 
 
  • 作者:axiszql
  • 链接:https://axiszql.com/article/internship-gitlab-ci-cd-docker-k8s
  • 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章
Git小技巧—https模式转换为ssh模式
使用Docker compose部署es集群及kibana的使用
GitLab CI/CD+Docker的CI/CD部署工作流
低代码平台:腾讯微搭,自定义APIs的常规使用流程 GitLab CI/CD+Docker的CI/CD部署工作流
Loading...
目录
0%
准备环境kubectl连接Minikube测试测试成功后,即可编写如下.gitlab-ci.yml文件:创建imagePullSecrets运行测试
axiszql
axiszql
向往Rust、C++和Go的家伙!🐧
文章
29
分类
7
标签
51
最新发布
《Rust Course》 learning Not
《Rust Course》 learning Not
2025-4-3
Algorithm Note
Algorithm Note
2025-4-3
Vscode-NeoVim、WLS2 Vim /NeoVim、Goland+Vim使用技巧
Vscode-NeoVim、WLS2 Vim /NeoVim、Goland+Vim使用技巧
2025-3-16
Windows 开发环境下的疑难杂症
Windows 开发环境下的疑难杂症
2025-3-16
C++开发常用技巧
C++开发常用技巧
2024-10-4
集成Gitlab CI/CD、Docker、Kubernetes来实现流水线部署
集成Gitlab CI/CD、Docker、Kubernetes来实现流水线部署
2024-9-10
目录
0%
准备环境kubectl连接Minikube测试测试成功后,即可编写如下.gitlab-ci.yml文件:创建imagePullSecrets运行测试
2022-2025axiszql.

AxisZql’s blog | 向往Rust、C++和Go的家伙!🐧

Powered byNotionNext 4.7.7.