• Gitlab安装


    Centos7安装Gitlab

    下载安装包

    # 清华大学开源软件镜像站 https://mirrors.tuna.tsinghua.edu.cn/
    wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.4.2-ce.0.el7.x86_64.rpm --no-check-certificate

    安装相关组件

    yum install systemd curl policycoreutils-python openssh-server -y

    安装Postfix

    yum install -y postfix

    修改配置

    vim /etc/postfix/main.cf
    ...
    inet_interfaces = all
    inet_protocols = ipv4
    ...

    运行Postfix

    systemctl enable postfix
    systemctl start postfix

    关闭防火墙和selinux

    systemctl stop firewalld
    # 临时关闭
    setenforce 0

    安装gitlab-ce

    rpm -ivh gitlab-ce-14.4.2-ce.0.el7.x86_64.rpm

    修改配置文件

    vim  /etc/gitlab/gitlab.rb
    ...
    # 修改访问URL
    external_url 'http://10.4.7.200:8181'
    ...
    # 修改时区
    gitlab_rails['time_zone'] = 'Asia/Shanghai'
    # 邮箱相关
    gitlab_rails['smtp_enable'] = true
    gitlab_rails['smtp_address'] = "smtp.163.com"
    gitlab_rails['smtp_port'] = 465
    gitlab_rails['smtp_user_name'] = "xxx@163.com"  # 邮箱号
    gitlab_rails['smtp_password'] = "*************" # 授权码
    gitlab_rails['smtp_domain'] = "smtp.163.com"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['smtp_tls'] = true
    gitlab_rails['gitlab_email_from'] = 'xxx@163.com' # 邮箱号

    测试邮件

    [root@master ~]# gitlab-rails console
    --------------------------------------------------------------------------------
     Ruby:         ruby 2.7.4p191 (2021-07-07 revision a21a3b7d23) [x86_64-linux]
     GitLab:       14.4.2 (1ce86e92f81) FOSS
     GitLab Shell: 13.21.1
     PostgreSQL:   12.7
    --------------------------------------------------------------------------------
    Loading production environment (Rails 6.1.4.1)
    irb(main):001:0> Notify.test_email('xxx@163.com','邮件标题','邮件内容').deliver_now
    ...
    ...
    irb(main):002:0> exit

    重置Gitlab配置

    (可理解为初始化吧)

    gitlab-ctl reconfigure

    启动Gitlab

    gitlab-ctl start

    安装结束...稍等一会访问URL

    一定要注意本地端口是否被占用!导致访问Web页一直502

    登陆Gitlab

    # 账号root
    # 密码
    cat /etc/gitlab/initial_root_password

    常用命令

    gitlab-ctl start:启动全部服务
    gitlab-ctl restart:重启全部服务
    gitlab-ctl stop:停止全部服务
    gitlab-ctl reconfigure:使配置文件生效(一般修改完主配置文件/etc/gitlab/gitlab.rb,需要执行此命令)
    gitlab-ctl show-config :验证配置文件
    gitlab-ctl uninstall:删除gitlab(保留数据)
    gitlab-ctl cleanse:删除所有数据,从新开始
    gitlab-ctl tail 查看服务的日志

    Gitlab常用组件

    nginx:静态Web服务器
    gitlab-shell:用于处理Git命令和修改authorized keys列表,我们的gitlab是以Git做为最层的,你操作实际上最后就是调用gitlab-shell命令进行处理。
    gitlab-workhorse:轻量级的反向代理服务器
    logrotate:日志文件管理工具
    postgresql:数据库
    redis:缓存数据库
    sidekiq:用于在后台执行队列任务(异步执行)
    unicorn:GitLab Rails应用是托管在这个服务器上面的

    Gitlab目录解释

    /var/opt/gitlab/git-data/repositories:库默认存储目录
    /opt/gitlab:            应用代码和相应的依赖程序
    /var/opt/gitlab:gitlab-ctl reconfigure命令编译后的应用数据和配置文件,不需要人为修改配置
    /etc/gitlab:    配置文件目录
    /var/log/gitlab:此目录下存放了gitlab各个组件产生的日志
    /var/opt/gitlab/backups/:备份文件生成的目录

    卸载Gitlab

    # 停止服务
    gitlab-ctl stop
    # 卸载gitlab
    rpm -e gitlab-ce
    # 强杀守护进程
    ps -ef|grep gitlab|grep runsvdir|awk -F ' ' '{print $2}'|xargs kill -9
    # 删除gitlab相关文件
    find / -name *gitlab* | xargs rm -rf

    参考文档:gitlab介绍与操作 - 游走在边缘的人 - 博客园 (cnblogs.com)

    本文来自博客园,作者:MegaloBox,转载请注明原文链接:https://www.cnblogs.com/cpw6/p/15541643.html

  • 相关阅读:
    gitlab
    MySQL千万级别大表,你要如何优化?
    kafka入门
    zookeeper的原理和应用
    MySQL 性能优化之慢查询
    Redis一些新的看法
    mysql 数据库锁
    MYSQL查看进程和kill进程
    hadoop批量命令脚本xcall.sh及jps找不到命令解决
    java stream 处理分组后取每组最大
  • 原文地址:https://www.cnblogs.com/cpw6/p/15541643.html
Copyright © 2020-2023  润新知