docker+k8s+jenkins+harbor持续集成自动化部署

这篇具有很好参考价值的文章主要介绍了docker+k8s+jenkins+harbor持续集成自动化部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、安装docker

另外一篇文章有讲docker的安装与相关配置,暂时就不讲了

1、关闭防火墙并修改主机名

hostnamectl set-hostname k8s-master && bash #修改主机名
systemctl stop firewalld
systemctl disable firewalld

2、永久禁用swap

vi /etc/fstab
#验证是否关闭,swap必须为0
free -g 

用#注释掉swap一行(新版centos已经默认禁用)
docker+k8s+jenkins+harbor持续集成自动化部署
3、配置镜像加速

到阿里云获取自己镜像加速地址
docker+k8s+jenkins+harbor持续集成自动化部署

cat /etc/docker/daemon.json
        {
        "registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"], ##修改为你的容器加速器地址   登录阿里云点击镜像工具-镜像加速器

4、安装 docker-compose

  • 官网找到下载地址

https://github.com/docker/compose/releases 版本地址
docker+k8s+jenkins+harbor持续集成自动化部署
我的下载地址

wget https://github.com/docker/compose/releases/download/v2.10.0/docker-compose-linux-x86_64
  • 下载后移动至/usr/local/bin/文件夹下 (如果移动不了 就手动移动,记住重命名“docker-compose”)
 mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
 chmod a+x /usr/local/bin/docker-compose

注意 一定要配置挂载 不然磁盘容易满
docker+k8s+jenkins+harbor持续集成自动化部署

  • 启动
./install.sh  #记住到harbor目录中执行install.sh  

我的harbor下载安装的时候在home
docker+k8s+jenkins+harbor持续集成自动化部署
进入到harbor命令 可以用 统一停止 和启动所有harbor插件
docker-compose down 关闭
docker-compose up -d 启动

  • 测试打包上传到镜像仓库

现在下载一个镜像nginx

docker pull nginx

给镜像打tag

docker tag nginx:latest ip:端口/项目/nginx

上传镜像

docker push ip:端口/项目/nginx

#在linux 拉取gitlab的代码 (尤其在jenkins一定要先通过ssh拉取一次代码)

git clone sshxxxxxxxxxx地址

5、项目配置

  • 项目结构

docker+k8s+jenkins+harbor持续集成自动化部署
ums-app 为业务处理
ums-api 为api接口
因api包依赖到根项目的pom.xml 所以 打包时 需要将根项目打包,(但不打包ums-app)
排除ums-app 则在 ums-app的pom.xml

<maven.deploy.skip>true</maven.deploy.skip>
  • 创建Dockerfile
    创建的目录为 app>src>main 因为只构建uniapp
FROM primetoninc/jdk:1.8

LABEL maintainer="wj"

VOLUME /tmp
VOLUME /file
ARG JAR_FILE
RUN echo $JAR_FILE
ADD $JAR_FILE app.jar
RUN sh -c 'touch /app.jar'

EXPOSE 8080
ENV SPRING_PROFILES_ACTIVE=dev
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
  • 父项目加载打包插件
<properties>
        <docker.repository.releases>192.168.1.8:1180</docker.repository.releases>
        <revision>1.0.1-SNAPSHOT</revision>
</properties>

<build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>com.spotify</groupId>
                    <artifactId>docker-maven-plugin</artifactId>
                    <version>1.2.2</version>
                    <configuration>
                        <serverId>docker-releases</serverId>
                        <registryUrl>http://${docker.repository.releases}</registryUrl>
                        <pushImage>true</pushImage>
                        <imageName>${docker.repository.releases}/ums/${project.artifactId}:${revision}</imageName>
                        <!--<dockerHost>http://172.25.6.11:2375</dockerHost>-->
                        <dockerDirectory>${project.basedir}/src/main/docker</dockerDirectory>
                        <buildArgs>
                            <active>dev</active>
                            <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
                        </buildArgs>
                        <rm>true</rm>
                        <!-- 强制添加标签-->
                        <forceTags>true</forceTags>
                        <imageTags>
                            <imageTag>${revision}</imageTag>
                        </imageTags>
                        <resources>
                            <resource>
                                <targetPath>/</targetPath>
                                <directory>${project.build.directory}</directory>
                                <include>${project.build.finalName}.jar</include>
                            </resource>
                        </resources>
                    </configuration>
                </plugin>

            </plugins>
        </pluginManagement>

    </build>
  • 子项目 ums-app引用
<plugin>
  <groupId>com.spotify</groupId>
  <artifactId>docker-maven-plugin</artifactId>
</plugin>

二、安装jenkins

1、拉取jenkins镜像
docker pull docker.io/jenkins/jenkins
2、创建文件夹
mkdir -p /home/jenkins
3、权限
chmod 777 /home/jenkins
4、启动

# 注意jdk8的版本   不然可能会
docker run -d -uroot -p 8080:8080 -p 50000:50000 --name jenkins -v /var/run/docker.sock:/var/run/docker.sock -v $(which docker):/usr/bin/docker -v /home/jenkins:/var/jenkins -v /home/jenkins_home:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins

5、打开客户端
http://serverIp:port
docker+k8s+jenkins+harbor持续集成自动化部署
6、由于在docker容器 安装的jenkins 所以需要进入容器查看密码
进入容器
docker exec -it jenkins bash
查看密码
cat /var/jenkins_home/secrets/initialAdminPassword
登录后 安装推荐插件
docker+k8s+jenkins+harbor持续集成自动化部署
插件安装完成,创建管理员用户
至此,Jenkins安装完成!!!

7、因jenkins会拉取gitlab的代码进行构建,采用ssh的方式则需密钥,然后jenkins在docker容器中 所以需要进入docker容器生成密钥

docker exec -it jenkins bash   # 进入docker容器

生成密钥

#注意这里的-m PEM参数,如果没有的话,会生成较新版本的证书,jsch无法识别,后面无法用于ssh登录
ssh-keygen -m PEM -t rsa  # 输入后 一直按回车键即可
cd ~/.ssh  #进入到jenkins里面的.ssh目录  会看到2个文件 id_rsa  id_rsa.pub

id_rsa.pub 为公钥(放到gitlab中的SSH 密钥) id_rsa 为私钥(放到Jenkins凭证)
docker+k8s+jenkins+harbor持续集成自动化部署
8、安装插件

所需的插件:
• Maven插件 Maven Integration plugin
• 发布插件 Deploy to container Plugin
• SSH连接 Publish Over SSH

安装过程:
系统管理—>插件管理---->可选插件—>过滤Deploy to container---->勾选—>直接安装
docker+k8s+jenkins+harbor持续集成自动化部署

docker+k8s+jenkins+harbor持续集成自动化部署
docker+k8s+jenkins+harbor持续集成自动化部署

已安装好的插件
docker+k8s+jenkins+harbor持续集成自动化部署
9、jenkins配置

  • Dashboard>系统管理>Configure System (如果没有这个配置则需要添加 插件)
    同一页面
    Jenkins Location 这列需要配置 公网地址docker+k8s+jenkins+harbor持续集成自动化部署
    全局属性 这列配置环境变量
    docker+k8s+jenkins+harbor持续集成自动化部署
    配置变量的地址
    vi /usr/lib/systemd/system/docker.service
    –graph /home/docker docker 挂载目录 不处理磁盘容器满了
    docker+k8s+jenkins+harbor持续集成自动化部署
    配置hosts地址
    vi /etc/hosts
    docker+k8s+jenkins+harbor持续集成自动化部署

  • Dashboard>系统管理>全局工具配置 (如果没有这个配置则需要添加 插件)
    拉到最下面 我已经装了 所以是应用,没有装的情况是 需要新增一个
    选择
    maven的版本
    名字
    docker+k8s+jenkins+harbor持续集成自动化部署
    进入jenkins 容器配置settings.xml
    如执行出现 没有vi命令

#安装命令
apt-get update
apt-get install vim 

cd /var/jenkins_home/tools/hudson.tasks.Maven_MavenInstallation/maven3.8.6/conf
修改settings.xml
docker+k8s+jenkins+harbor持续集成自动化部署
docker+k8s+jenkins+harbor持续集成自动化部署

  • 配置jenkins的密钥
    密钥为之前在jenkins生成的,id_rsa 为密钥 docker+k8s+jenkins+harbor持续集成自动化部署docker+k8s+jenkins+harbor持续集成自动化部署

  • 创建maven项目
    docker+k8s+jenkins+harbor持续集成自动化部署

  • BRANCH_ENV 为变量

  • dev、master 对应的分支名,必须一致

docker+k8s+jenkins+harbor持续集成自动化部署

图1:
docker+k8s+jenkins+harbor持续集成自动化部署

clean install -DskipTests=true -U docker:build **-D branch_env=${BRANCH_ENV}**

${BRANCH_ENV}  jenkins中配置的分支变量 下列图1:

-D branch_env branch_env  为项目中pom.xml变量   下列图2:


图2:
docker+k8s+jenkins+harbor持续集成自动化部署
前端构建
docker+k8s+jenkins+harbor持续集成自动化部署
docker+k8s+jenkins+harbor持续集成自动化部署
docker+k8s+jenkins+harbor持续集成自动化部署
记得
插件管理中 安装nodejs插件 和全局工具配置这里选择 NodeJs
docker+k8s+jenkins+harbor持续集成自动化部署

执行的shell命令
cd docker
version=$(date "+%Y%m%d%H%M%S")
npm install
npm run build:$BRANCH_ENV
sh build-$BRANCH_ENV.sh $version
echo  $PASSWORD docker login xxx:1180 --username $USERNAME --password-stdin  # harbor ip:端口
docker push xxx:1180/html/ums-html-$BRANCH_ENV:$version

三、安装Harbor私有镜像仓库

1、下载harbor

wget https://github.com/goharbor/harbor/releases/download/v2.0.6/harbor-offline-installer-v2.0.6.tgz

2、解压下载的harbor

tar -zxvf harbor-offline-installer-v2.0.6.tgz

3、配置harbor
修改harbor.yml文件,如果该文件不存在,则从harbor.yml.tmpl复制一下

hostname: 10.1.1.132    ###修改成自己的主机ip,如果在公网,则添加能访问到该主机的域名
http:
port: 1180                ###默认是80端口,可以修改成自己想设置的端口
harbor_admin_password: 123456		###修改为你要设置的密码
###并把https注释掉,不然在安装的时候会报错:ERROR:root:Error: The protocol is https but attribute ssl_cert is not set
#https:
#port: 443
#certificate: /your/certificate/path
#private_key: /your/private/key/path

4、配置harbor地址 用于上传镜像

[root@master~]# cat /etc/docker/daemon.json
        {
        "registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"], ##修改为你的容器加速器地址   登录阿里云点击镜像工具-镜像加速器
        "insecure-registries":["10.1.1.132:1180"]   ##修改为你的harbor服务器地址和端口
        }

5、此时 可以将代码打包成镜像 推送到harbor中了
启动镜像的命令
docker run -d -p 实际访问端口:项目端口 192.168.1.8:1180/project/ums-app

-------------------------------------- 到此 整个构建、上传已经完成 -----------------------------------------

四、K8S搭建

  1. 如果之前有装过k8s 建议先清理一次
yum remove -y kubelet kubeadm kubectl
kubeadm reset -f
rm -rvf $HOME/.kube
rm -rvf ~/.kube/
rm -rvf /etc/kubernetes/
rm -rvf /etc/systemd/system/kubelet.service.d
rm -rvf /etc/systemd/system/kubelet.service
rm -rvf /usr/bin/kube*
rm -rvf /etc/cni
rm -rvf /opt/cni
rm -rvf /var/lib/etcd
rm -rvf /var/etcd
#杀死运行的容器:
docker kill
#删除所有容器:
docker rm 
#强制删除所有镜像:
docker rmi -f 
#如果发现还是清除不掉
ps -ef|grep kubelet
#然后再kill -9 id
  1. 修改主机名称 (之前有处理过 可不用管)
hostnamectl set-hostname k8s-master && bash
  1. 添加主机的ip (之前有处理过 可不用管)
[root@k8s-master /]# cat /etc/hosts
192.168.1.8 k8s-master

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

185.199.108.133 raw.githubusercontent.com
  1. 关闭防火墙 (之前有处理过 可不用管)
systemctl stop firewalld
systemctl disable firewalld
  1. 关闭selinux(之前有处理过 可不用管)
setenforce 0
$ sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
  1. 关闭swap交换区间(之前有处理过 可不用管)
swapoff -a # 临时
sed -i 's/.*swap.*/#&/' /etc/fstab # 永久
free -g #验证,swap必须为0
  1. 配置 iptables链路(之前有处理过 可不用管)
$ cat > /etc/sysctl.d/k8s.conf <<EOF
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 10
EOF
# 即时生效
$ sysctl --system 

#同步时间
yum install ntpdate -y
ntpdate time.windows.com
  1. 添加k8s yum源(之前有处理过 可不用管)
$ cat > /etc/yum.repos.d/kubernetes.repo << EOF
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
  1. 安装kubeadm、kubelet、kubectl
# 安装版本是v1.21.5
yum -y install kubelet-1.21.5-0 kubectl-1.21.5-0 kubeadm-1.21.5-0
systemctl enable kubelet
  1. 初始化k8s
kubeadm init \
--apiserver-advertise-address 192.168.1.8 \
--image-repository registry.aliyuncs.com/google_containers \
--kubernetes-version v1.21.5 \
--service-cidr 10.96.0.0/12 \
--pod-network-cidr 10.244.0.0/16 \
--ignore-preflight-errors all \
--token-ttl 0

kubernetes-version :kubernetes 程序组件的版本号,尽量与安装的 kubelet 版本号相同
image-repository :指定要使用的镜像仓库 默认: gar.io apiserver-advertise-address
:一般为 Master 节点用于集群内通信的IP地址,填主机的网卡IP地址 10.0.4.16,也可以填 0.0.0.0
(这里我自己填的这个) service-cidr :Service 网络的地址范围,其值为 CIDR 格式的网络地址。默认为
10.96.0.0/12 pod-network-cidr :Pod 网络的地址范围,其值为 CIDR 格式的网络地址。通常 Flannel 的网络插件默认值为 10.244.0.0/16 ;Calico 插件的默认值为 192.168.0.0/16

执行kebeadm时 超时异常
error execution phase upload-config/kubelet: Error writing Crisocket information for the control-plane node: timed out waiting for the condition

执行以下语句 然后再执行 kubeadm init

swapoff -a && kubeadm reset  && systemctl daemon-reload && systemctl restart kubelet  && iptables -F && iptables -t nat -F && iptables -t mangle -F && iptables -X

执行完成后保存以下信息 便于后续加入节点
docker+k8s+jenkins+harbor持续集成自动化部署

  1. 配置kubectl工具
mkdir -p $HOME/.kube
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
  1. 配置k8s网络插件
#安装calico网络插件
yum install -y ca-certificates
# 获取 calico.yaml
wget https://docs.projectcalico.org/manifests/calico.yaml 

sed -i "s#192\.168\.0\.0/16#10\.244\.0\.0/16#" calico.yaml

kubectl apply -f calico.yaml

#查看结果
kubectl get node
  1. k8s单机特殊处理
  • master节点污点处理

单集版的k8s安装后, 无法部署服务。因为默认master不能部署pod,有污点, 需要去掉污点或者新增一个node,我这里是去除污点。

#执行后看到有输出说明有污点  k8s-master 主机名
kubectl describe nodes k8s-master |grep Taints 
#执行这句就行,就是取消污点  gameble-  污点名带减号表示删除
kubectl taint node k8s-master gameble-  
  • 安装补全命令包
yum -y install bash-completion
kubectl completion bash
source /usr/share/bash-completion/bash_completion
kubectl completion bash >/etc/profile.d/kubectl.sh
source /etc/profile.d/kubectl.sh

cat  >>  /root/.bashrc <<EOF
source /etc/profile.d/kubectl.sh
EOF
  • 基于k8s单机部署中间服务
kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort
kubectl get pods,svc

docker+k8s+jenkins+harbor持续集成自动化部署

访问192.168.1.8:32662 nginx是否可以访问 可访问 代表正常

五、K8S可视化

1、k8s-dashboard 下载
官网地址
https://github.com/kubernetes/dashboard/releases
注意要下载对应的版本
目前我的k8s版本为v1.21.5
docker+k8s+jenkins+harbor持续集成自动化部署

所以需要找到官网地址 支持1.21.5的版本
docker+k8s+jenkins+harbor持续集成自动化部署

2、下载并应用文件

kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.4.0/aio/deploy/recommended.yaml

如果下载yaml时 出现
The connection to the server raw.githubusercontent.com was refused - did you specify the right host or port?
配置/etc/hosts 解析地址
docker+k8s+jenkins+harbor持续集成自动化部署

#编辑并应用这个配置
kubectl edit svc kubernetes-dashboard -n kubernetes-dashboard

# 搜索/type 修改为type: NodePort

docker+k8s+jenkins+harbor持续集成自动化部署
修改完成之后 就有端口了
docker+k8s+jenkins+harbor持续集成自动化部署
可以开始访问 k8s 可视化界面了
https://ip:30029

3、创建dashboard-svc-account.yaml 认证文件
我的认证文件存放在 home/k8s 目录下

apiVersion: v1
kind: ServiceAccount
metadata:
  name: dashboard-admin
  namespace: kube-system
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: dashboard-admin
subjects:
  - kind: ServiceAccount
    name: dashboard-admin
    namespace: kube-system
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io

4、执行认证文件

kubectl apply -f dashboard-svc-account.yaml
#获取令牌
[root@i-wgt9mh3x ~]# kubectl get secret -n kube-system |grep admin|awk '{print $1}'
dashboard-admin-token-qt2n5

# 上一部的结果输入到下面
[root@i-wgt9mh3x ~]# kubectl describe secret dashboard-admin-token-qt2n5 -n kube-system|grep '^token'|awk '{print $2}'

# 得到的token值
eyJhbGciOiJSUzI1NiIsImtpZCI6InVsemhnZWtOVFBy ?????????????????

通过token 去登录

5、登录进来后,创建命令空间
docker+k8s+jenkins+harbor持续集成自动化部署
docker+k8s+jenkins+harbor持续集成自动化部署
注意创建的时候选择创建的命名空间,这样就会在命名空间里面了。
docker+k8s+jenkins+harbor持续集成自动化部署

docker+k8s+jenkins+harbor持续集成自动化部署

生产环境运营的时候 拉取镜像后 运行docker镜像 指定环境变量即可
docker -e “SPRING_PROFILES_ACTIVE=pro”

6、可视化 安装查看pods 内存、CPU 插件

wget https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.3.6/components.yaml

修改yaml配置文件的image为国内源,否则拉取不到镜像

image: k8s.gcr.io/metrics-server-amd64:v0.3.6 
#改成   
image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6

加入
args:

- --cert-dir=/tmp
- --secure-port=4443
- --kubelet-insecure-tls
- --kubelet-preferred-address-types=InternalIP,Hostname,InternalDNS,ExternalDNS,ExternalIP

应用

kubectl apply -f components.yaml

#查看cpu 内存占用情况
docker+k8s+jenkins+harbor持续集成自动化部署

kubectl top po -n kube-system
kubectl top po -n default
kubectl -n kube-system top pod

crictl ps -a // 查看k8s信息
k8s 证书过期后

kubeadm certs check-expiration  // 查看证书有效期
kubeadm certs renew all  // 重新生成全部证书
kubeadm init phase kubeconfig all // 重新生成配置文件
systemctl restart kubelet // 重启kubelet
cp /etc/kubernetes/admin.conf  ~/.kube/config //替换kubeconfig 

k8s 版本不更新 拉取最新的镜像部署
在deployments 选择对应的项目 编辑

spec:
      containers:
        - name: sas
          image: 镜像地址
          env:
            - name: SPRING_PROFILES_ACTIVE
              value: test
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          imagePullPolicy: Always

最后一个 imagePullPolicy: Always文章来源地址https://www.toymoban.com/news/detail-479529.html

到了这里,关于docker+k8s+jenkins+harbor持续集成自动化部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • K8S + GitLab + Jenkins自动化发布项目实践(二)

    前置工作:已部署5节点k8s集群,并搭建了代码仓库和镜像仓库(GitLab + Harbor)。 主机名 IP 角色 k8s-master1 192.168.124.a k8s控制平面 k8s-master2 192.168.124.b k8s控制平面 k8s-master3 192.168.124.c k8s控制平面 k8s-worker1 192.168.124.d k8s工作节点 k8s-worker2 192.168.124.e k8s工作节点 harborgit 192.168.124.f

    2024年02月03日
    浏览(79)
  • Vmware虚拟机搭建 K8S ingress Jenkins Gitlab Harbor Docker 一键部署SpringCloud微服务

    本文主要基于Kubernetes1.22.2和Linux操作系统Ubuntu 20.04.6。 操作系统 主机名 IP地址 进程 功能 Ubuntu 20.04.6 k8s-master 192.168.189.128 docker,kube-apiserver,etcd,kube-scheduler,kube-controller-manager,kubelet,kube-proxy,coredns,calico 主节点 Ubuntu 20.04.6 k8s-node1 192.168.189.129 docker,kubelet,kube-proxy,c

    2024年02月03日
    浏览(53)
  • jenkins+docker集成harbor实现可持续集成

    目录 一、前言 二、Harbor介绍 2.1 什么是Harbor 2.1.1 Harbor架构图 2.2 Harbor 特征 2.3 Harbor 核心组件 2.4 Harbor使用场景 三、Harbor部署 3.1 安装docker compose 3.1.1 安装方式一 3.2 基于python3 pip安装docker compose 3.2.1 安装python3 3.2.2 安装python-pip3并升级 3.2.3 执行命令安装 docker-compose 3.2.4 查看d

    2024年04月15日
    浏览(36)
  • DevOps搭建(十九)-Jenkins+K8s自动化CI搭建详细步骤

    完整的pipeline-auto.yml脚本如下 完整的Jenkinsfile脚本如下 在Jenkins插件管理中搜索GitLab插件进行安装。 进入Jenkins项目配置里的 构建触发器 ,勾选如下选项: 从系统管理-系统配置-Gitlab将验证去掉,生产最好配置保证安全。 如果是GitLab和Jenkins在同一台服务器,需要开启允许请求

    2024年01月23日
    浏览(90)
  • Jenkins流水线整合k8s实现代码自动集成和部署

    1、安装好k8s集群 这里先要搭建好一个K8s集群,笔者这边就采用使用了一个一主一丛的k8s集群,k8s集群的版本使用1.19.5版本,服务器的配置:2核4G,操作系统: CentOS Linux release 7.9.2009 (Core) 主机名         ip k8smaster 192.168.19.8 k8sworker         192.168.19.9 具体的安装步骤可以

    2024年02月05日
    浏览(50)
  • K8S:K8S自动化运维容器Docker集群

    (1)K8S全程为Kubernetes,由于K到S直接有8个字母简称为K8S。 (2)版本:目前一般是1.18~1.2.0,后续可能会到1.24-1.26,1.24版本后丢弃了docker(如需要使用需要第三方插件配合),目前最新版本是1.27 (3)官网:https://kubernetes.io GitHub:GitHub - kubernetes/kubernetes: Production-Grade Container S

    2024年02月10日
    浏览(77)
  • k8s集成harbor

    2024年02月16日
    浏览(40)
  • K8S:K8S自动化运维容器化(Docker)集群程序

    目录 一、K8S概述 1、什么是K8S 2、为什么要用K8S 3、作用及功能 二、K8S的特性 1、弹性伸缩 2、自我修复 3、服务发现和复制均衡 5、自动发布和回滚 6、集中化配置管理和秘钥管理 7、存储编排 8、任务批量处理运行 三、K8S的集群架构 四、K8S的核心组件 1、Master组件 ①Kube-apis

    2024年02月12日
    浏览(64)
  • 持续集成部署-k8s-资源调度:HPA - Pod 基于负载指标自动水平扩容缩容

    首先我们找一个 Deployment 配置文件: nginx-deploy.yaml

    2024年02月07日
    浏览(48)
  • golang/云原生/Docker/DevOps/K8S/持续 集成/分布式/etcd 教程

    3-6个月帮助学员掌握golang后端开发岗位必备技术点 教程时长: 150+小时 五大核心专栏,原理+源码+案例分析+项目实战直击工作岗位 golang:解决go语言编程问题 工程组件:解决golang工程化问题 分布式中间件:解决技术栈单一及分布式开发问题 云原生:解决云原生分布式部署及监

    2024年02月07日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包