13、gitlab

13、gitlab

4c8g、100g

docker安装gitlab(使用k8s的ingress暴露)

版本:https://gitlab.com/gitlab-org/gitlab-foss/-/tags?sort=version_desc

官方docker仓库:https://hub.docker.com/r/gitlab/gitlab-ce/tags

shell 复制代码
docker pull gitlab/gitlab-ce:16.8.0-ce.0

docker pull ccr.ccs.tencentyun.com/huanghuanhui/gitlab:16.8.0-ce.0
shell 复制代码
cd && mkdir gitlab && cd gitlab && export GITLAB_HOME=/root/gitlab
shell 复制代码
docker run -d \
--name gitlab \
--hostname 'gitlab.huanghuanhui.cloud' \
--restart always \
--privileged=true \
-p 9797:80 \
-v $GITLAB_HOME/config:/etc/gitlab \
-v $GITLAB_HOME/logs:/var/log/gitlab \
-v $GITLAB_HOME/data:/var/opt/gitlab \
-e TIME_ZONE='Asia/Shanghai' \
ccr.ccs.tencentyun.com/huanghuanhui/gitlab:16.8.0-ce.0

初始化默认密码:

shell 复制代码
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

使用k8s的ingress暴露

shell 复制代码
mkdir -p ~/gitlab-yml

kubectl create ns gitlab
shell 复制代码
cat > ~/gitlab-yml/gitlab-endpoints.yml << 'EOF'
apiVersion: v1
kind: Endpoints
metadata:
  name: gitlab-service
  namespace: gitlab
subsets:
  - addresses:
      - ip: 192.168.1.200
    ports:
      - port: 9797
EOF
shell 复制代码
kubectl apply -f ~/gitlab-yml/gitlab-endpoints.yml
shell 复制代码
cat > ~/gitlab-yml/gitlab-Service.yml << 'EOF'
apiVersion: v1
kind: Service
metadata:
  name: gitlab-service
  namespace: gitlab
spec:
  ports:
    - protocol: TCP
      port: 80
      targetPort: 9797
EOF
shell 复制代码
kubectl apply -f ~/gitlab-yml/gitlab-Service.yml
shell 复制代码
cat > ~/gitlab-yml/gitlab-Ingress.yml << 'EOF'
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: gitlab-ingress
  namespace: gitlab
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: 'true'
    nginx.ingress.kubernetes.io/proxy-body-size: '4G'
spec:
  ingressClassName: nginx
  rules:
  - host: gitlab.huanghuanhui.cloud
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: gitlab-service
            port:
              number: 80

  tls:
  - hosts:
    - gitlab.huanghuanhui.cloud
    secretName: gitlab-ingress-tls
EOF
shell 复制代码
kubectl create secret -n gitlab \
tls gitlab-ingress-tls \
--key=/root/ssl/huanghuanhui.cloud.key \
--cert=/root/ssl/huanghuanhui.cloud.crt
shell 复制代码
kubectl apply -f ~/gitlab-yml/gitlab-Ingress.yml

访问地址:gitlab.huanghuanhui.cloud

https://gitlab.huanghuanhui.cloud/admin/users/root/edit

设置账号密码为:root、huanghuanhui@2024

计划任务备份
shell 复制代码
[root@gitlab ~]# crontab -l
0 0 * * * sync && echo 3 > /proc/sys/vm/drop_caches
0 0 * * * docker exec -t gitlab gitlab-backup create
相关推荐
姚不倒3 小时前
负载均衡的概念、策略以及两个核心组件 Nginx 和 Kube-proxy 的对比。
运维·nginx·云原生·kubernetes
地瓜伯伯3 小时前
Nginx终极配置指南:负载均衡、限流、反向代理、IP白名单、SSL、云原生、DNS解析、缓存加速全都有
spring boot·nginx·spring·spring cloud·微服务·云原生·负载均衡
义一5 小时前
华为eNSP示例说明网关地址和终端IP地址不在同一网段能正常通信吗
网络
颜颜yan_8 小时前
在openEuler上搞个云原生AI模型商店:像点外卖一样部署模型
人工智能·云原生
minji...8 小时前
Linux 基础IO(一) (C语言文件接口、系统调用文件调用接口open,write,close、文件fd)
linux·运维·服务器·网络·数据结构·c++
真正的醒悟8 小时前
202503-经验之道
服务器·网络·php
qq_251616199 小时前
ubuntu nginx文件服务器
linux·服务器·网络
阿里云云原生9 小时前
线下活动速递丨AI 原生应用开源开发者沙龙·杭州站
云原生
云计算练习生10 小时前
渗透测试行业术语—— 网络攻击方式与漏洞利用
服务器·网络·安全·渗透测试术语·网络安全术语
阿里云云原生10 小时前
MCP 网关实战:基于 Higress + Nacos 的零代码工具扩展方案
云原生·mcp