CentOS7.2 GitLab部署
1、使用安装包的方式安装gitlab
# vim /etc/yum.repos.d/gitlib.repo
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key # yum install gitlab-ce
2、修改配置文件:
# vim /etc/gitlab/gitlab.rb external_url 'http://X.X.X.X:8088'
......
gitlab_rails['time_zone'] = 'Asia/Shanghai'
gitlab_rails['gitlab_email_from'] = 'xxxxxx@163.com'
......
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "xxxxxx@163.com"
gitlab_rails['smtp_password'] = "111111" # 客户端授权密码
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
......
user["git_user_email"] = "xxxxxx@163.com"
.....
unicorn['listen'] = '127.0.0.1'
unicorn['port'] = 8080 #配置文件默认为8080,若其他程序使用了8080端口,需要修为其他端口,否则网页报错502
3、执行配置并启动服务
# 只要修改配置文件就要reconfigure
# gitlab-ctl reconfigure # gitlab-ctl start
# gitlab-ctl stop
# gitlab-ctl restart
4、检验端口及状态:
# gitlab-ctl status
run: gitlab-workhorse: (pid 67759) 314s; run: log: (pid 28482) 22876s
run: logrotate: (pid 67767) 314s; run: log: (pid 28631) 22858s
run: nginx: (pid 67773) 313s; run: log: (pid 28558) 22869s
run: postgresql: (pid 67781) 313s; run: log: (pid 27722) 22935s
run: redis: (pid 67790) 312s; run: log: (pid 27508) 22946s
run: sidekiq: (pid 67796) 311s; run: log: (pid 28442) 22878s
run: unicorn: (pid 67802) 311s; run: log: (pid 28402) 22879s
ss -tnl | grep PORT
5、访问web页面
- 有时出现502,可以刷新网页或者再次reconfigure
- 有时需要sudo gitlab-ctl restart nginx
- 初次访问Web页面会强制让你改密码,初始用户名/密码:root/5iveL!fe
- 禁止前台注册
登录后:右上角 Admin Area --> Settings --> Sign-in Restrictions

然后保存
- 修改admin的邮箱
Admin Area --> Users --> Edit
然后保存
6、新建用户
- 点击右上角的
添加用户

- 填写用户信息并提交即可

7、新建项目和组
- 登陆root用户或其他需要创建项目的账户,点击左侧的 Projects --> New Project ,即可新建项目

- 填写项目名称,选择项目是共有仓库还是私有仓库,创建

- 若创建私有仓库,需要把其他用户添加到此组中,并确保具有读写权限即可(否则无法拉取和更新代码)
- 点击右上角的
添加组

- 选择我们创建的myweb项目,并创建组

- 添加指定的用户到组

- 关联项目和组,点击左侧导航栏 Projects ,点击 myweb1 项目

- 选择项目右侧管理中的 Groups

- 关联上myweb组,并设置权限

8、上传主机公钥
- 登陆指定的用户(例如jack),点击左侧导航栏 Profile Settings --> SSH Keys ,在Key中输入对应主机的公钥即可。Linux主机可以使用命令: ssh-keygen 生成用户公钥和私钥信息

9、测试无需账户密码获取代码
- 安装 git 命令
yum install git -y
- 执行 git clone 命令无需账户密码即成功
# mkdir /source
# cd /source/
# git clone git@172.20.3.201:root/myweb1.git
10、Git常用命令
# git config --global user.name “name“ #设置全局用户名
# git config --global user.email mail #设置全局邮箱
# git config --global –list #列出用户全局设置
# git add index.html #添加文件到暂存区
# git add --all ./ #添加文件到暂存区
# git commit -m “11“ #提交文件到工作区
# git status #查看工作区的状态
# git push #提交代码到服务器
# git pull #获取代码到本地
# git log #查看操作日志
# vim .gitignore #定义忽略文件
# git reset --hard HEAD^ #git版本回滚, HEAD为当前版本,加一个^为上一个,^^为上上一个版本
# git reflog # #获取每次提交的ID,可以使用--hard根据提交的ID进行版本回退
# git reset --hard 5ae4b06 #回退到指定id的版本
# git branch #查看当前所处的分支
# git checkout -- file #从服务器更新某个那文件覆盖本地的文件
CentOS7.2 GitLab部署的更多相关文章
- 【补充】Gitlab 部署 CI 持续集成
上一篇:<劈荆斩棘:Gitlab 部署 CI 持续集成> 上一篇所配置的.gitlab-ci.yml: stages: - build - test before_script: - ec ...
- 劈荆斩棘:Gitlab 部署 CI 持续集成
阅读目录: install configue gitlab-ci-multi-runner restore nuget packages bulid .sln run unit tests confi ...
- centos7 下zookeeper 部署 单机多实例模式
centos7 下zookeeper 部署 本文参考https://www.linuxidc.com/Linux/2016-09/135052.htm 1.创建/usr/local/zookeeper ...
- centos7 下 安装部署nginx
centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...
- CentOS7.4下部署hadoop3.1.1
CentOS7.4下部署hadoop3.1.1 契机 由于工作原因要部署hadoop的集群,习惯使用最新的稳定版本2018年的时候由于时间紧破部署了2.7.2版本,最新由于又要部署有研究了一下3.x的 ...
- Hadoop生态圈-CentOs7.5单机部署ClickHouse
Hadoop生态圈-CentOs7.5单机部署ClickHouse 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 到了新的公司,认识了新的同事,生产环境也得你去适应新的集群环境,我 ...
- CentOS7.4安装部署openstack [Liberty版] (二)
继上一篇博客CentOS7.4安装部署openstack [Liberty版] (一),本篇继续讲述后续部分的内容 一.添加块设备存储服务 1.服务简述: OpenStack块存储服务为实例提供块存储 ...
- CentOS7.4安装部署openstack [Liberty版] (一)
一.OpenStack简介 OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个 ...
- CentOS7服务器上部署深度/机器学习环境推荐首选anaconda3
CentOS7服务器上部署深度/机器学习环境推荐首选anaconda3,亲测~~ 因为可以创建不同的环境版本或虚拟环境 CentOS7服务器安装anaconda3后,CentOS7服务器开启后自动将a ...
随机推荐
- $.proxy() 的妙用
$.proxy() 最主要就是用来修改函数执行时的上下文对象的. 先看以下情景: <div id="panel" style="display:none;" ...
- Android 平台电容式触摸屏的驱动基本原理
Android 平台电容式触摸屏的驱动基本原理 Android 平台电容式触摸屏硬件基本原理 Linux 与 Android 的多点触摸协议 Linux输入子系统:事件的编码
- STM32探秘 之FSMC
源:STM32探秘 之FSMC STM32 FSMC总线深入研究
- 【Flask】ORM 关系一对一
### 一对一的关系:在sqlalchemy中,如果想要将两个模型映射成一对一的关系,那么应该在父模型中,指定引用的时候,要传递一个`uselist=False`这个参数进去.就是告诉父模型,以后引用 ...
- 以太坊钱包Geth使用命令
一.启动以太坊钱包Geth 打开一个控制台,执行同步区块命令 #同步测试链geth --fast --cache=512 --rpc --rpcapi personal,db,eth,net,web3 ...
- 在.h和.cpp中包含头文件的区别
1.在.h中包含头文件,是为了声明一系列这个头文件的变量等,可能会产生重复包含的问题: 2.在.cpp中包含头文件只是为了实现这个头文件或者使用其中的方法,不会有重复包含的问题,所以尽量在源文件中包含 ...
- Nginx location指令匹配顺序规则
location匹配命令 1. “= ”,字面精确匹配, 如果匹配,则跳出匹配过程.(不再进行正则匹配) 2. “^~ ”,最大前缀匹配,如果匹配,则跳出匹配过程.(不再进行正则匹配) 3. 不带任何 ...
- C#遍历指定文件夹中的所有文件
DirectoryInfo TheFolder=new DirectoryInfo(folderFullName);//遍历文件夹foreach(DirectoryInfo NextFolder in ...
- java中@Qualifier("string")是什么用法
@Qualifier("XXX") Spring的Bean注入配置注解,该注解指定注入的Bean的名称,Spring框架使用byName方式寻找合格的bean,这样就消除了byTy ...
- 更改自己iCloud的地区
百度一大堆都是过时的,而且没有用,通过google后发现google+里有一个文章https://plus.google.com/+%E5%90%B4%E5%BF%97%E5%8B%8776/post ...