k8s集群部署单节点gitlab

2023-05-16

k8s集群部署单节点gitlab

  • k8s集群部署单节点gitlab
        • 前言
        • gitlab-redis.yaml
        • gitlab-postgresql.yaml
        • gitlab-server.yaml
        • 安装结果

k8s集群部署单节点gitlab

前言

前提准备
1.需要准备一个k8s单节点或集群环境
2.需要提前部署NFS以及对应的StorageClass

gitlab-redis.yaml

// gitlab-redis.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: gitlab-redis-pvc
  namespace: devops
spec:
  storageClassName: nfs-sc-0  //指定storageClass
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis
  namespace: devops
  labels:
    name: redis
spec:
  replicas: 1
  selector:
    matchLabels:
      name: redis
  template:
    metadata:
      name: redis
      labels:
        name: redis
    spec:
      containers:
        - name: redis
          image: weili666/redis:v1.0.0
          imagePullPolicy: IfNotPresent
          ports:
            - name: redis
              containerPort: 6379
          volumeMounts:
            - mountPath: /var/lib/redis
              name: data
          livenessProbe:
            exec:
              command:
                - redis-cli
                - ping
            initialDelaySeconds: 30
            timeoutSeconds: 5
          readinessProbe:
            exec:
              command:
                - redis-cli
                - ping
            initialDelaySeconds: 5
            timeoutSeconds: 1
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: gitlab-redis-pvc

---
apiVersion: v1
kind: Service
metadata:
  name: redis
  namespace: devops
  labels:
    name: redis
spec:
  ports:
    - name: redis
      port: 6379
      targetPort: redis
  selector:
    name: redis

gitlab-postgresql.yaml

// gitlab-postgresql.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: gitlab-postgresql-pvc
  namespace: devops
spec:
  storageClassName: nfs-sc-0
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: postgresql
  namespace: devops
  labels:
    name: postgresql
spec:
  replicas: 1
  selector:
    matchLabels:
      name: postgresql
  template:
    metadata:
      name: postgresql
      labels:
        name: postgresql
    spec:
      containers:
        - name: postgresql
          image: weili666/postgresql:v1.0.0
          imagePullPolicy: IfNotPresent
          env:
            - name: DB_USER
              value: gitlab
            - name: DB_PASS
              value: passw0rd
            - name: DB_NAME
              value: gitlab_production
            - name: DB_EXTENSION
              value: pg_trgm
          ports:
            - name: postgres
              containerPort: 5432
          volumeMounts:
            - mountPath: /var/lib/postgresql
              name: data
          livenessProbe:
            exec:
              command:
                - pg_isready
                - -h
                - localhost
                - -U
                - postgres
            initialDelaySeconds: 30
            timeoutSeconds: 5
          readinessProbe:
            exec:
              command:
                - pg_isready
                - -h
                - localhost
                - -U
                - postgres
            initialDelaySeconds: 5
            timeoutSeconds: 1
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: gitlab-postgresql-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: postgresql
  namespace: devops
  labels:
    name: postgresql
spec:
  type: NodePort
  ports:
    - name: postgres
      port: 5432
      targetPort: postgres
  selector:
    name: postgresql

gitlab-server.yaml

// gitlab-server.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: gitlab-pvc
  namespace: devops
spec:
  storageClassName: nfs-sc-0  //指定storageClass
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: gitlab
  namespace: devops
  labels:
    name: gitlab
spec:
  replicas: 1
  selector:
    matchLabels:
      name: gitlab
  template:
    metadata:
      name: gitlab
      labels:
        name: gitlab
    spec:
      containers:
        - name: gitlab
          image: sameersbn/gitlab:12.1.6
          imagePullPolicy: IfNotPresent
          env:
            - name: TZ
              value: Asia/Shanghai
            - name: GITLAB_TIMEZONE
              value: Beijing
            - name: GITLAB_SECRETS_DB_KEY_BASE
              value: long-and-random-alpha-numeric-string
            - name: GITLAB_SECRETS_SECRET_KEY_BASE
              value: long-and-random-alpha-numeric-string
            - name: GITLAB_SECRETS_OTP_KEY_BASE
              value: long-and-random-alpha-numeric-string
            - name: GITLAB_ROOT_PASSWORD
              value: admin123456
            - name: GITLAB_ROOT_EMAIL
              value: 1065940@qq.com
            - name: GITLAB_HOST
              value: 0.0.0.0:30005
            - name: GITLAB_PORT
              value: "80"
            - name: GITLAB_SSH_PORT
              value: "22"
            - name: GITLAB_NOTIFY_ON_BROKEN_BUILDS
              value: "true"
            - name: GITLAB_NOTIFY_PUSHER
              value: "false"
            - name: GITLAB_BACKUP_SCHEDULE
              value: daily
            - name: GITLAB_BACKUP_TIME
              value: 01:00
            - name: DB_TYPE
              value: postgres
            - name: DB_HOST
              value: postgresql
            - name: DB_PORT
              value: "5432"
            - name: DB_USER
              value: gitlab
            - name: DB_PASS
              value: passw0rd
            - name: DB_NAME
              value: gitlab_production
            - name: REDIS_HOST
              value: redis
            - name: REDIS_PORT
              value: "6379"
          ports:
            - name: http
              containerPort: 80
            - name: ssh
              containerPort: 22
          volumeMounts:
            - mountPath: /home/git/data
              name: data
          livenessProbe:
            httpGet:
              path: /
              port: 80
            initialDelaySeconds: 180
            timeoutSeconds: 5
          readinessProbe:
            httpGet:
              path: /
              port: 80
            initialDelaySeconds: 5
            timeoutSeconds: 1
      volumes:
        - name: data
          persistentVolumeClaim:
            claimName: gitlab-pvc

---
apiVersion: v1
kind: Service
metadata:
  name: gitlab
  namespace: devops
  labels:
    name: gitlab
spec:
  type: NodePort
  ports:
    - name: http
      port: 80
      targetPort: http
      nodePort: 30005
    - name: ssh
      port: 22
      targetPort: ssh
  selector:
    name: gitlab

安装结果

gitlab的service类型为NodePort,端口号:30005
访问:xx.xx.xx.xx:30005
account:root
password:admin123456
在这里插入图片描述
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

k8s集群部署单节点gitlab 的相关文章

随机推荐

  • debian 11更换阿里镜像源安装vim

    span class token comment debian 11更换阿里镜像源安装vim span cd span class token operator span etc span class token operator span
  • zookeeper启动报错:nohup: failed to run command ‘java’: No such file or directory

    cat zookeeper bin ookeeper out 报错信息 xff1a nohup failed to run command java No such file or directory 解决方案 xff1a 需要安装jdk
  • 网卡参数查询及设置工具ethtool

    ethtool是用来查询和设置网卡驱动 amp 硬件信息的工具 xff0c 功能很强大 xff01 Linux一般都会默认安装 xff0c 在进行网络调试和网络性能分析时非常有用 提供统计信息查询 ring buffer设置 协议卸载设置
  • Ubuntu18.04下安装深度学习框架Pytorch(GPU加速)

    前面我们已经在windows10环境下成功安装了CPU版本的Pytorch 推荐的是利用Anaconda安装 经过接近一天的奋战 xff0c 博主成功在linux系统安装GPU加速的pytorch xff0c 博主使用的发行版是Ubuntu
  • Transformers 如何保存并加载模型

    由于自己经常忘记如何保存Transformers中的模型 xff0c 故在此纪录一下官方提供的例子 output model file span class token operator 61 span span class token s
  • opencv编译出了个跟CUDA相关的错,取消WITH_CUDA就ok了

    sudo cmake gui
  • 使用Navicat打开加密SQLite数据库

    1 在Nuget搜索并安装SQLitePCLRaw bundle e sqlcipher 2 打开项目所在路径 xff0c 按照下面的路径找到e sqlcipher dll文件 3 打开Navicat 的安装目录 xff0c 该目录下有个s
  • xrdp 远程登录需要输入很多次密码

    本人环境为 Ubuntu 20 04 文章目录 问题描述解决方案解决 色彩管理设备 34 color managed device 34 弹窗解决 刷新系统软件源需要认证 34 refresh the system repositories
  • Xrdp 体验优化 减少/解决画面卡顿

    参考链接 xff1a Default TCP send buffer size too low 1483 调整 Xrdp 配置参数 编辑 etc xrdp xrdp ini tcp send buffer bytes 61 4194304
  • 安装debian8操作系统

    安装参考文档 xff1a https wenku baidu com view 0b5b506f0912a21614792995 html 注意 xff1a 步骤可以参考具体配置看需求 修改IP dedian操作系统的IP文件在 etc n
  • 驱动——LED灯循环闪烁

    使用结构体形式对寄存器地址进行映射 xff0c 实现3盏LED灯的循环点亮 1 创建LED灯点亮所需要的GPIO寄存器的结构体 xff0c 并对寄存器地址进行宏定义 2 通过ioremap函数将物理地址映射为虚拟地址 void iorema
  • ubuntu CA安装 证书申请

    1 安装 xff1a apt get install openssl 2 修改配置文件 xff1a 注意不同于网上 xff0c 位置在 xff1a usr lib ssl openssl cnf xff0c 将以下项改为自己的位置 dir
  • URL后面#号的问题

    一 的涵义 代表网页中的一个位置 其右面的字符 xff0c 就是该位置的标识符 比如 xff0c http www example com index html print 就代表网页index html的print位置 浏览器读取这个UR
  • Swift-UIView的创建和使用

    创建 View let view1 61 UIView let view2 61 UIView frame CGRectMake 20 120 100 100 let view3 61 UIView frame CGRectMake 40
  • kali 运行apktool 报错解决方法

    问题描述 xff1a 系统 xff1a kali 1 9 apktool d 123 apk test Input file 123 apk was not found or was not readable 问题解决方法 xff1a 方法
  • pip安装换清华源

    用python的pip安装时有些包安装的太慢了 解决的方法是 xff1a 换成清华源 pip install 要安装的包 i https pypi tuna tsinghua edu cn simple 或者直接替换下载源设置清华源 pip
  • 操作无法完成,因为该文件已在system中打开

    根据提示 xff0c 我们主要的任务是在system xff08 系统 xff09 中将这个文件关闭 1 打开 任务管理器 方法一 xff1a 快捷键 xff1a ctrl 43 shift 43 esc 方法二 xff1a 右击任务栏底部
  • 在CentOS7上安装和配置Node.js

    本文介绍如何在CSDN云主机实例上搭建Node js环境 Node js 是一个基于 Chrome 的 JavaScript 运行时环境构建的开源平台 xff0c 可帮助开发人员构建快速且可扩展的网络应用程序 它在 V8 引擎上运行 xff
  • C++ 输出cout

    span class token macro property span class token directive hash span span class token directive keyword include span spa
  • k8s集群部署单节点gitlab

    k8s集群部署单节点gitlab k8s集群部署单节点gitlab前言gitlab redis yamlgitlab postgresql yamlgitlab server yaml安装结果 k8s集群部署单节点gitlab 前言 前提准