centos7安装gitlab,配置SSH key,修改项目url

这篇具有很好参考价值的文章主要介绍了centos7安装gitlab,配置SSH key,修改项目url。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、 安装并配置必要的依赖关系

在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget,以下这些命令也会打开系统防火墙中的HTTP和SSH端口访问。

注意:用户不是管理员权限,出现如下警告

用户不在sudoers文件中此事将被报告

可以使用 su root 切换root权限

1.安装ssh

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

若出现以下图片的信息则表示成功
gitlab ssh key,运维,ssh,gitlab,linux
2.将SSH服务设置成开机自启动,安装命令:sudo systemctl enable sshd

3.启动SSH服务,安装命令:sudo systemctl start sshd
gitlab ssh key,运维,ssh,gitlab,linux

4。安装防火墙(如果已经安装了防火墙并且已经在运行状态,则可直接进行第6步)

yum install firewalld systemd -y

若出现“完毕!”的字样,则表示安装成功
gitlab ssh key,运维,ssh,gitlab,linux

5.开启防火墙,安装命令:service firewalld start

6.添加http服务到firewalld,pemmanent表示永久生效,若不加–permanent系统下次启动后就会失效。

sudo firewall-cmd --permanent --add-service=http

7.重启防火墙,安装命令:sudo systemctl reload firewalld

8.接下来,安装Postfix以发送通知邮件,安装命令:sudo yum install postfix
gitlab ssh key,运维,ssh,gitlab,linux

9.将postfix服务设置成开机自启动,安装命令:sudo systemctl enable postfix

10.启动postfix,安装命令:sudo systemctl start postfix
gitlab ssh key,运维,ssh,gitlab,linux

二、添加GitLab镜像源并安装gitlab服务器

1.添加gitlab镜像

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm

2.安装gitlab 安装命令:rpm -i gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm

安装过程需要些时间,如果出现下图,则说明安装成功。(个人在安装时并未出现,但是也是成功的)
gitlab ssh key,运维,ssh,gitlab,linux

4.修改gitlab配置文件指定服务器ip和自定义端口:

vim  /etc/gitlab/gitlab.rb

gitlab ssh key,运维,ssh,gitlab,linux

进入编辑器后按“i”键进入编辑状态,修改完毕后,按ESC键退出编辑状态

然后退出并保存,命令输入“:wq”

# 启用 smtp 服务
gitlab_rails['smtp_enable'] = true

# 配置 smtp 服务地址
gitlab_rails['smtp_address'] = "smtp.163.com"

# 配置 smtp 服务的端口号
gitlab_rails['smtp_port'] = 465

# 配置发送邮件的电子邮箱名称
gitlab_rails['smtp_user_name'] = "example@163.com"

# 开启smtp服务时显示的授权密码而不是邮箱登录密码
gitlab_rails['smtp_password'] = "此处填开启smtp服务时显示的授权密码"

# 配置smtp服务的域名,和上面的smtp服务器地址一致
gitlab_rails['smtp_domain'] = "smtp.163.com"

# 配置smtp鉴定类别(此处默认)
gitlab_rails['smtp_authentication'] = "login"

# 开启纯文本通信协议扩展
gitlab_rails['smtp_enable_starttls_auto'] = true

# 开启 smtp_tls (传输安全)
gitlab_rails['smtp_tls'] = true

# gitlab服务邮件的发件邮箱,填写上面的邮箱即可
gitlab_rails['gitlab_email_from'] = 'example@163.com'


链接:https://blog.llyth.cn/1236.html

ps:注意这里设置的端口不能被占用,默认是8080端口,如果8080已经使用,请自定义其它端口,并在防火墙设置开放相对应得端口

5.重置并启动GitLab

执行:

gitlab-ctl reconfigure

gitlab-ctl restart  

提示 "ok: run:"表示启动成功

6.访问 GitLab页面

如果没有域名,直接输入服务器ip和指定端口进行访问

初始账户: root 密码:5iveL!fe

第一次登录修改密码
gitlab ssh key,运维,ssh,gitlab,linux

另外:
附上gitlab的常用命令:

sudo gitlab-ctl start # 启动所有 gitlab 组件;
sudo gitlab-ctl stop # 停止所有 gitlab 组件;
sudo gitlab-ctl restart # 重启所有 gitlab 组件;
sudo gitlab-ctl status # 查看服务状态;
sudo gitlab-ctl reconfigure # 启动服务;
sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;

sudo gitlab-ctl tail # 查看日志;

2020-11-23_17:46:44.48654 chpst: fatal: unable to run: /opt/gitlab/embedded/sbin/nginx: file does not exist

无法访问:查看日志提示如下:
2020-11-23_17:46:44.48654 chpst: fatal: unable to run: /opt/gitlab/embedded/sbin/nginx: file does not exist

网上说是宝塔的问题, 为了防止此nginx和 网关Nginx冲突, 就把gitlab的nginx启动文件名改成了gitlab-nginx, 但是实际上没有同步修改到gitlab的run文件。
gitlab ssh key,运维,ssh,gitlab,linux

解决方法是修改gitlab的nginx启动文件

vi /opt/gitlab/sv/nginx/run

如下图(注释部分是原来的,修改为下面的一行):
gitlab ssh key,运维,ssh,gitlab,linux

修改gitlab的nginx启动文件
最后直接reboot了服务器,然后就正常访问了:

7、为了安全性考虑,需要创建public key
为了方便,本地配置多个ssh key

大多数时候,我们的机器上会有很多的git host,比如公司gitlab、github、oschina等,那我们就需要在本地配置多个ssh key,使得不同的host能使用不同的ssh key ,做法如下(以公司gitlab和github为例):

1、生成 gitlab 的秘钥对ssh key


ssh-keygen -t rsa -b 4096  -C 'yourEmail@xx.com' -f ~/.ssh/gitlab-rsa   //然后一路回车(-C 参数是你的邮箱地址)

2、生成 github 的生成秘钥对ssh key

ssh-keygen -t rsa -b 4096  -C 'yourEmail2@xx.com' -f ~/.ssh/github-rsa   //然后一路回车(-C 参数是你的邮箱地址)

3、在~/.ssh目录下新建名称为config的文件(无后缀名)。用于配置多个不同的host使用不同的ssh key,内容如下:

# gitlab
Host gitlab.com
    HostName gitlab.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/gitlab_id-rsa
# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_id-rsa
  ​
# 配置文件参数
# Host : Host可以看作是一个你要识别的模式,对识别的模式,进行配置对应的的主机名和ssh文件
# HostName : 要登录主机的主机名
# User : 登录名
# IdentityFile : 指明上面User对应的identityFile路径

然后打开/.ssh/id_rsa.pub文件(表示用户目录,比如我的windows就是C:\Users\Administrator),复制其中的内容(比如可以使用记事本打开)

打开gitlab,找到Profile Settings–>SSH Keys—>Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字,点击Add key按钮
gitlab ssh key,运维,ssh,gitlab,linux
到此就完成了gitlab配置ssh key的所有步骤,就可以使用ssh协议进行代码的拉取以及提交等操作了,就不需要输入密码了

4、按照上面的步骤分别往gitlab和github上添加生成的公钥gitlab_id-rsa.pub和github_id-rsa.pub,再次执行git命令验证是不是已经不需要再次验证权限了

5、再次查看~/…ssh目录下的文件,会有gitlab_id-rsa、gitlab_id-rsa.pub和github_id-rsa、github_id-rsa.pub四个文件

总结

我们为什么要使用ssh协议呢?
因为ssh更加安全,然后更加方便,比如我们公司的gitlab由http协议换成了https协议,
那么如果你是使用http协议管理代码,那么需要修改所有的项目中的git地址变成https,这会把我们给逼疯的!
但是如果我们一开始就是用ssh协议,这不需要任何的修改,简直不能再爽一点了。
——————————————

gitlab修改访问项目的url

【Settings】-【General】-【Advanced】-【Expand】-【Change path】
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux

Gitlab服务器修改url如何修改项目path

本地搭建的gitlab 服务器,在 /etc/gitlab/gitlab.rb 中 external_url 通常是局域网ip的形式。如下所示

external_url ‘http://192.168.1.106:90’
1
如果遇到本地的ip地址改变后,此时的 external_url也应对要做出对应的修改。 在修改后,在网页中,看到项目的path路径,有可能还没有更改过来,此时需要手动的进行修改。
查看 下列目录下的gitlab.yml 软链接对应的文件

[ltkj@ltkj config]$ cd /opt/gitlab/embedded/service/gitlab-rails/config    

[ltkj@ltkj config]$ sudo gitlab.yml -> /var/opt/gitlab/gitlab-rails/etc/gitlab.yml

修改 gitlab.yml

[ltkj@ltkj config]$ vim gitlab.yml

 #
 # 1. GitLab app settings
 # ==========================
 ## GitLab settings
 gitlab:
   ## Web server settings (note: host is the FQDN, do not include http://)
   host: 192.168.1.106
   port: 90
   https: false

此处对应的Host ,然后 重启,就可以看到项目的path得到了修改。

sudo gitlab-ctl restart

安装中文语言包(汉化)

以下汉化步骤参考此篇文章,首先确认当前安装版本
https://larryli.cn/2015/07/644905

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

当前安装版本是8.5.7,因此中文补丁需要打8.5版本。

克隆 GitLab 源码仓库:

克隆 GitLab.com 仓库

git clone https://gitlab.com/larryli/gitlab.git
#或 Gitcafe.com 镜像,速度更快
git clone https://gitcafe.com/larryli/gitlab.git
运行汉化补丁:

8.5 版本的汉化补丁(8-5-stable是英文稳定版,8-5-zh是中文版,两个 diff 结果便是汉化补丁)

sudo git diff origin/8-5-stable..8-5-zh > /tmp/8.5.diff
# 停止 gitlab
sudo gitlab-ctl stop
# 应用汉化补丁
cd /opt/gitlab/embedded/service/gitlab-rails
git apply /tmp/8.5.diff  
# 启动gitlab
sudo gitlab-ctl start

至此,汉化完毕。打开地址http://git.home.com,便会看到中文版的GitLab。如下
gitlab ssh key,运维,ssh,gitlab,linux

安装完成。

3.5 设置gitlab的群组

gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux

3.6 创建用户
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux
gitlab ssh key,运维,ssh,gitlab,linux

3.7 为群组创建项目

gitlab ssh key,运维,ssh,gitlab,linux

gitlab ssh key,运维,ssh,gitlab,linux

gitlab ssh key,运维,ssh,gitlab,linux

3.8 从gitlab 上面 拉取项目 然后配置提交到master主线
略。。。。。。

备份

如果是生产环境,备份是必须的。需要备份的文件:配置文件和数据文件。

备份配置文件

配置文件含密码等敏感信息,不要和数据备份文件放在一起。

sh -c 'umask 0077; tar -cf $(date "+etc-gitlab-%s.tar") -C /etc/gitlab'

备份数据文件

默认数据备份目录是/var/opt/gitlab/backups,手动创建备份文件:

# Omnibus 方式安装使用以下命令备份
sudo gitlab-rake gitlab:backup:create

日常备份,添加 crontab,运行crontab -e

# 每天2点执行备份
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create CRON=1

如要修改备份周期和目录,在/etc/gitlab/gitlab.rb中修改以下两个选项

# 设置备份周期为7天 - 604800秒
gitlab_rails['backup_keep_time'] = 604800
# 备份目录
gitlab_rails['backup_path'] = '/mnt/backups'

恢复

恢复之前,确保备份文件所安装 GitLab 和当前要恢复的 GitLab 版本一致。首先,恢复配置文件:文章来源地址https://www.toymoban.com/news/detail-822528.html

sudo mv /etc/gitlab /etc/gitlab.$(date +%s)
# 将下面配置备份文件的时间戳改为你所备份的文件的时间戳
sudo tar -xf etc-gitlab-1399948539.tar -C /

恢复数据文件

# 将数据备份文件拷贝至备份目录
sudo cp 1393513186_gitlab_backup.tar /var/opt/gitlab/backups/
 
# 停止连接数据库的进程
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
 
# 恢复1393513186这个备份文件,将覆盖GitLab数据库!
sudo gitlab-rake gitlab:backup:restore BACKUP=1393513186
 
# 启动 GitLab
sudo gitlab-ctl start
 
# 检查 GitLab
sudo gitlab-rake gitlab:check SANITIZE=true

到了这里,关于centos7安装gitlab,配置SSH key,修改项目url的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • CentOS7.6 修改SSH端口

    执行命令:   首次打开发现 Port 22是被注释的 去掉前面的 #,再增加一条Port 55555,添加的监听端口号最好为10000~65535区间之内,即2的16次方 这样做防止55555端口不能连接的情况下还可以使用22端口连接 2.1 查看防火墙状态 防火墙如果关闭,则需要打开防火墙,执行命令: 2.2 防

    2024年01月20日
    浏览(46)
  • 代码管理git生成ssh key (公钥私钥)配置GitLab

    git在我们日常项目管理中起了很大的作用,是我们能够更好地管理我们的代码,git的管理是基于ssh密钥进行的,所以在使用前我们需要进行ssh配置。 首先我们需要配置user name和email 配置完成我们需要去查看我们本地是否已经存在.ssh文件夹(一般存在c盘用户下面,也可使用命令

    2024年02月16日
    浏览(65)
  • Gitlab配置SSH Key 以及配置后提示输入用户名和密码问题解决

    gitlab配置SSH Key,SSH 密钥用于在你的电脑和 GitLab 建立安全连接,不用每次操作都需要提供用户名和密码,如pull、push等 1、全局配置git用户名 2、全局配置邮箱地址 如果已经配置过的,以上不用再重复,直接生成SSH 3、生成SSH Key 这两个都可以,后者在生成密钥的同时会将指定

    2024年03月23日
    浏览(51)
  • Centos7-yum安装mysql-修改密码-无密码登录-安全配置

    在CentOS中默认安装有MariaDB(MySQL的一个分支),安装完成之后可以直接覆盖MariaDB。 rpm -qa | grep mariadb 查询是否安装了mariadb rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 卸载 mariad wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 安装官网提供的yum源 yum -y install mysql57-communit

    2024年02月03日
    浏览(53)
  • CentOs7 安装Gitlab

    安装gitlab 一、 安装并配置必要的依赖关系 在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget,以下这些命令也会打开系统防火墙中的HTTP和SSH端口访问。 1.安装ssh sudo yum install -y curl policycoreutils-pythonopenssh-server 若出现以下图片的信息则表示成功 2.将SSH服务

    2024年02月08日
    浏览(39)
  • Centos7安装Gitlab--gitlab--ee版

    1 安装必要依赖 2 配置GitLab软件源镜像 3 下载安装GitLab 4 查看管理员root用户默认密码 5 登录GitLab 6 修改密码 7 gitlab相关命令

    2024年02月07日
    浏览(40)
  • 【Mac系统下配置gitlab的SSH Key密钥时git clone无法拉取】

    第一次使用mac系统的电脑配置SSH密钥,公司的项目都放在gitlab上托管,所以想从gitlab上clone下来项目的话就要配置SSH Key,然后才能使用Clone with SSH拉取文件。 结果输入 git clone git@gitlab.xxx 之后 出现了以下提示: 此时一定要输入 yes 才能顺利clone,千万记得!!!,不要默认为

    2024年02月12日
    浏览(57)
  • 在CentOS7安装部署GitLab服务

    官方安装教程:https://about.gitlab.com/install/ 参考安装教程:https://developer.aliyun.com/article/74395 Step1:配置yum源 存入以下内容: Step2:更新本地yum缓存 Step3:安装GitLab社区版 Step4:启动Gitlab Step5:登录并配置Gitlab 打开服务器本地浏览器,访问:127.0.0.1 地址,打开 Gitlab 管理后台,

    2024年02月14日
    浏览(41)
  • 蓝易云:centos7系统如何修改SSH远程端口,如何保障服务器更加安全

    1.修改SSH远程端口 默认情况下,CentOS 7系统的SSH端口是22,这是黑客攻击的热门目标,因此我们可以通过修改SSH远程端口来降低服务器被攻击的风险。 修改SSH远程端口的步骤如下: 1.1 使用root权限登录服务器 1.2 修改SSH配置文件/etc/ssh/sshd_config sudo vi /etc/ssh/sshd_config 1.3 在文件中

    2024年02月16日
    浏览(51)
  • Centos7安装Gitlab-ce(gitlab社区版)15+版本

    在gitlab官网下载了gitlab-ee镜像,离了个大谱,gitlab-ee是企业版,我们要装的自然是社区版(免费)gitlab-ce 安装依赖(官方): 官方快速安装gitlab文档:https://packages.gitlab.com/gitlab/gitlab-ce/install 以上操作相当于下文前两步,不保证对后续操作的影响。 下载社区版镜像: 可以选择

    2024年02月17日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包