IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Gitlab 安装教程(保姆级)带邮件服务器配置 -> 正文阅读

[系统运维]Gitlab 安装教程(保姆级)带邮件服务器配置

GitLab安装教程

配置:建议CPU2核,内存2G以上。

1.1 GitLab主要服务构成
Nginx静态Web服务器
Gitlab-workhorse 轻量级的反向代理服务器
Gitlab-shell 用于处理Git命令和修改authorized keys列表
Logrotate 日志文件管理工具
Postgresql数据库
Redis 缓存服务器
1.2 GitLab的工作流程
创建并克隆项目
创建项目某Feature分支
编写代码并提交至该分支
推送改项目分支至远程Gitlab服务器
进行代码检查并提交Master主分支合并申请
项目领导审查代码并确认合并申请
2.安装
2.1安装ssh
sudo yum install -y curl policycoreutils-pythonopenssh-server

2.2将ssh服务设置成开机启动
sudo systemctl enable sshd

2.3安装Postfix以发送邮件通知
sudo yum install postfix

设置开机启动
sudo systemctl start postfix

如果启动不了就改一下

修改 /etc/postfix/main.cf文件中的
inet_interfaces = localhost
inet_protocols = all

修改为:
inet_interfaces = all
inet_protocols = all

在安装Postfix期间,可能会出现配置屏幕。选择“Internet Site”并按enter键。使用您的服务器的外部DNS以“mail name”并按enter。如果出现额外的屏幕,继续按enter键接受默认值。

2.4wget用于外网下载插件
检查系统中是否已经安装wget,使用命令若出现下图wget相关版本描述则说明系统中已经安装wget 若报系统找不到命令说明wget未安装

wget -V

查看是否存在版本信息,如果没有则安装

yum -y install wget

2.5配置域名
vi /var/opt/gitlab/nginx/conf/gitlab-http.conf

在这里插入图片描述

补充说明:因为编译gitlab的配置 /etc/gitlab/gitlab.rb 时会重新生成这个自定义nginx 配置,所以只要 gitlab 的配置配得好,上面的nginx其实不需要自定义的。

也可以修改/etc/gitlab/gitlab.rb文件配置端口号

vi /etc/gitlab/gitlab.rb

找到external_url -> 服务器http://IP:端口 ( vi输入命令 /external_url )
在这里插入图片描述

2.6添加gitlab镜像
//查看el7还是e16
uname -a
在这里插入图片描述

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/“自己需要的版本”

2.7安装gitlab
rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm

全部ok才行
在这里插入图片描述

2.8修改gitlab配置文件指定服务器IP和自定义端口
vi /etc/gitlab/gitlab.rb

修改服务器IP(跟2.3配置的ip端口一致)

external_url ‘http://gitlab.test.domain.com:8088’

执行配置
gitlab-ctl reconfigure
启动
gitlab-ctl start

出现如下说明成功(全部run 不报错)
在这里插入图片描述

一般timeout重启可解决 如果没解决需要根据各个服务而解决
一般是解决方法:
1、按住CTRL+C强制结束
2、先停止gitlab,命令:sudo gitlab-ctl stop
3、执行命令:sudo chmod755 /var/opt/gitlab/postgresql
4、执行命令:sudo systemctl restart gitlab-runsvdir
5、再次配置:sudo gitlab-ctl reconfigure
6、启动即可:sudo gitlab-ctl restart
还不行直接重装快一点

修改储存位置(看你自己要不要改)

sudo vi /etc/gitlab/gitlab.rb

git_data_dirs -> 修改成目标位置

配置执行
sudo gitlab-ctl reconfigure

2.9重启gitlab并访问
如果访问失败先检查服务是否有问题,在检查防火墙是否开启或者端口限制
//关闭防火墙
firewall-cmd –state
systemctl stop firewalld.service
//开机关闭防火墙
systemctl disable firewalld
//开机自启防火墙
systemctl enable firewalld

gitlab-ctl restart

gitlab常用命令

gitlab-ctl start                 # 启动所有 gitlab 组件;
gitlab-ctl stop                  # 停止所有 gitlab 组件;
gitlab-ctl restart               # 重启所有 gitlab 组件;
gitlab-ctl status                # 查看服务状态;
vim /etc/gitlab/gitlab.rb        # 修改gitlab配置文件;
gitlab-ctl reconfigure           # 重新编译gitlab的配置;
gitlab-rake gitlab:check SANITIZE=true --trace    # 检查gitlab;
gitlab-ctl tail                  # 查看日志;
gitlab-ctl tail nginx/gitlab_access.log

查看gitlab版本

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

访问gitlab页面

image-20210926101624319

2.10安全考虑,需要创建public key认证
创建命令

ssh-keygen
一直回车
复制id_rsa.pub公钥
cat .ssh/id_rsa.pub

将cat出来的所有内容公钥添加到gitlab中
在这里插入图片描述

3、配置邮箱信息
sudo vi /etc/gitlab/gitlab.rb

修改如下配置:
gitlab_rails[‘smtp_enable’] = true
gitlab_rails[‘smtp_address’] = “smtp.sina.com”
gitlab_rails[‘smtp_port’] = 465
gitlab_rails[‘smtp_user_name’] = “@sina.com"
gitlab_rails[‘smtp_password’] = "

gitlab_rails[‘smtp_domain’] = “sina.com”
gitlab_rails[‘smtp_authentication’] = “login”
gitlab_rails[‘smtp_enable_starttls_auto’] = true
gitlab_rails[‘smtp_tls’] = true
gitlab_rails[‘gitlab_email_from’] = “****@sina.com”
user[‘git_user_email’] = “*****@sina.com”

gitlab-ctl reconfigure
gitlab-ctl restart

gitlab-rails console

Notify.test_email(‘@***.com’,‘email title’,‘email content desc’).deliver_now
收到邮件证明成功

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-06-06 17:33:28  更:2022-06-06 17:35:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 1:05:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码