GitLab安装与配置
- 安装ssh
yum install curl policycoreutils openssh-server openssh-clients postfix
- 启动ssh并设置为开机自启动
systemctl start postfix
- 安装gitlab-ce
yum install -y gitlab-ce #安装最新版本
或
yum install gitlab-ce-x.x.x -y #安装指定版本
- 修改配置文件
vim /etc/gitlab/gitlab.rb #修改配置文件
external_url '' #gitlab域名
gitlab_rails['gitlab_email_enabled'] = true #gitlab启用email通知
gitlab_rails['gitlab_email_from'] = '' #gitlab email来源
gitlab_rails['gitlab_email_display_name'] = 'gitlab-servce' #email展示名称
gitlab_rails['gitlab_email_reply_to'] = '' #gitlab返回邮箱地址
gitlab_rails['gitlab_email_subject_suffix'] = ''
gitlab_rails['manage_backup_path'] = true #启用backup路径配置
gitlab_rails['backup_path'] = "/gitlab-backups" #设置gitlab备份路径
gitlab_rails['gitlab_shell_ssh_port'] = 22 #设置gitlab ssh端口
gitlab_rails['git_max_size'] = 20971520
gitlab_rails['git_timeout'] = 10
gitlab_rails['gitlab_shell_git_timeout'] = 800
gitlab_rails['initial_root_password'] = " " #gitlab初始化root密码
gitlab_rails['smtp_enable'] = true #设置gitlab 发送邮件smtp服务器信息
gitlab_rails['smtp_address'] = "" #设置smtp服务器地址
gitlab_rails['smtp_port'] = 25 #设置smtp服务器端口
gitlab_rails['smtp_user_name'] = "abc" #设置smtp用户名
gitlab_rails['smtp_password'] = "abc" #设置smtp密码
gitlab_rails['smtp_domain'] = "123@xxx.com" #设置smtp域名
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = false #根据邮箱服务器加密方式设置
gitlab_rails['smtp_tls'] = false #根据邮箱服务器加密方式设置
gitlab_rails['smtp_ssl'] = false #根据邮箱服务器加密方式设置
gitlab_rails['smtp_force_ssl'] = false #根据邮箱服务器加密方式设置
gitlab_rails['smtp_openssl_verify_mode'] = 'none' #根据邮箱服务器加密方式设置
gitlab_rails['gitlab_email_from'] = "abc@xxxx.com" #一些smtp服务器要求身份验证账号必须与发件人一致
git_data_dir "/data/gitlab-data" #设置gitlab数据目录
- 启动gitlab-ce
gitlab-ctl reconfigure #gitlab配置文件生效
sudo gitlab-ctl start #启动gitlab 组件
sudo gitlab-ctl stop #停止gitlab 组件
sudo gitlab-ctl restart #重启gitlab 组件
sudo gitlab-ctl status #查看服务状态
- 访问gitlab
访问路径: http://服务器IP:80
- 查看日志
sudo gitlab-ctl tail # 查看所有日志
production.log:
该日志位于/var/log/gitlab/gitlab-rails中,其作用是记录gitlab的每次请求的具体信息,包括请求的URL、ip地址、请求类型、以及此次请求所涉及的具体代码、SQL请求以及SQL请求消耗的时间。
application.log:
此日志文件位于/var/log/gitlab/gitlab-rails中,
其作用是记录创建用户、创建项目、移动项目等日志。
githost.log:
此日志文件位于/var/log/gitlab/gitlab-rails中,
此日志的作用是记录对gitlab服务器的错误请求日志。
sidekiq.log:
此日志文件位于/var/log/gitlab/gitlab-rails中,
gitlab中可能存在一些任务需要运行很长时间,因此会选择将这些任务在后台执行,
sidekiq.log文件就是用来记录这一类任务的处理信息,此日志文件是一个软连接文件。
gitlab-shell.log:
此日志文件位于/var/log/gitlab/gitlab-shell中,
该日志文件的作用是记录执行gitlab命令以及为项目添加ssh权限的日志文件
unicorn/stderr.log:
此日志文件位于/var/log/gitlab/unicorn,该日志文件的作用是记录gitlab的web服务器的相关记录。
repochec.log:
此日志文件位于/var/log/gitlab/prometheus
- Gitlab目录结构
/opt/gitlab/ # 主目录
/etc/gitlab/ # 放置配置文件
/var/opt/gitlab/ # 各个组件
/var/log/gitlab/ # 放置日志文件
/var/opt/gitlab/git-data/repositories #数据库的地址
/var/opt/gitlab/postgresql/data #gitlab组和项目的地址
/etc/gitlab/gitlab.rb #gitlab配置文件