腾讯云安装gitlab(腾讯云安装docker)
本文目录一览:
如何安装和配置GitLab在Ubuntu 16.04
安装步骤有:1.依赖包2.ruby3.用户创建4.数据库初始化5.redis6.gitlab源码7.apache
Gitlab-runner 安装和配置
gitlab的 runner 主要作用是用于监视相关项目的变动,然后可以自动拉取对应的分支进行自动构建,测试,和部署。
主要的命令操作有如下: install, start, stop, status, register, unregister,gitlab-runner 的安装位置是 172.16.1.16 的 /usr/bin。有2种方式可以配置 gitlab-runner ,这里采用的是register。
install 命令
安装配置 gitlab-runner, 如果使用yum install 则会默认安装
start 命令
sudo gitlab-runner start, 启动服务
stop 命令
sudo gitlab-runner stop, 关闭服务
status 命令
sudo gitlab-runner status, 查看服务运行状态
在仓库中查阅CI / CD Setting, 得到 CI token
然后输入命令
sudo gitlab-runner register
Please enter the gitlab-ci coordinator URL (e.g. ):
(注意此处必须输入这个地址)
Please enter the gitlab-ci token for this runner:
xxxxxxxxx-P
Please enter the gitlab-ci description for this runner:
hostname
Please enter the gitlab-ci tags for this runner (comma separated):
node,test
Whether to run untagged builds [true/false]:
true
Whether to lock the Runner to current project [true/false]:
false
Registering runner... succeeded runner=gHKt7inn
Please enter the executor: docker+machine, kubernetes, docker-ssh, ssh, shell, virtualbox, docker-ssh+machine, docker, parallels:
shell
注册后使用 gitlab-runner list 查阅配置
sudo gitlab-runner list
Listing configured runners ConfigFile=/etc/gitlab-runner/config.toml
hostname Executor=shell Token=token URL=
注册后,gitlab 页面将出现一个运行的runner
可以在项目里面看到状态:
要注意的地方:
1.项目的 .gitlab-ci.yml 文件需要配置好,里面最重要的参数就是 tags,必须要对应好已经安装好的 gitlab-runner 才能调用正确的 runner。
2.在注册 runner 的时候,所使用的网址必须要是可以访问到的,所以当 gitlab 是用的 docker 的时候,并不是写网页上面提示的那个网址,而是使用地址栏里面的那个网址加上端口。
搭建GitLab服务器
GitLab是GitHub的免费私有库替代方案,并且安装与配置都很方便。
GitLab要求最少4GB内存,支持小团队使用没问题,实测2GB内存的VPS基本没法用,开swapfile也不行,动不动就60秒超时。因此4GB内存是必须的。
关于这一点,内存大户主要是Unicorn,基于ruby的http服务器。Unicorn会在启动后预先占用大部分内存,内存会随着使用逐渐增长,并且不会释放。根据GitLab和Unicorn的官方文档,这不是它们的锅,那么这个锅可能是ruby和rails了。解决方法是unicorn-work-kill,会根据请求次数和内存占用自动重启Unicorn。Omnibus版的GitLab是默认开启的。
GitLab分为社区版和企业版,在未付费的情况下,两者的功能是一样的。并且社区版整合了CI/CD,因此可以满足绝大部分的开发需求。
安装包主要包括Omnibus整合包,Docker、AWS等的云镜像,以及一些第三方维护的版本。其中Omnibus直接整合了所有服务端组件,适合自用和练手。
安装以Omnibus整合包为例,操作系统为Ubuntu16.04。
Gitlab需要 curl,openSSH 和 ca-certificates 这几个组件:
不过服务器系统一般自带,所以是可选的。
邮件服务,用于GitLab发送找回密码的邮件:
不过如果服务器没有域名的话,大部分邮箱会拒收邮件,而管理员帐号可以直接重置其他账号的密码,所以是可选的。
官方提供的脚本:
这个脚本会自动添加源到apt 的source list,以及安全key。另外,如果自己服务器在国内,脚本会自动添加清华的镜像,速度还行。
先更新apt缓存:
推荐使用 apt 而不是 apt-get ,前者大多数情况下更简单一点。
然后是安装:
其中 EXTERNAL_URL ,改成自己的域名。没有域名的话,可以直接设置成IP的形式: ,这个推测跟nginx服务以及GitLab中的项目地址有关,所以最好正确设置。当然也可以之后在配置文件里更改。
安装完成后,可以在配置文件中修改配置 /etc/gitlab/gitlab.rb 。
比如之前的 EXTERNAL_URL :
官方还有一个关于 unicorn 的优化建议:
默认值是2,如果服务器只用于GitLab的话,官方建议是CPU核心数加一,可以提高服务器的响应速度。不过如果内存只有4G,或者服务器同时承载其他服务,就不要改了,以免内存不足。另外,这个参数最小值是2,设为1,服务器可能会卡死。
配置完成后,刷新配置:
每次修改完 gitlab.rb ,都要刷新配置。
如果没有报错的话,GitLab就配置完毕并且正常运行了。接下来可以打开浏览器开始访问了。
腾讯云上怎么安装git服务器
搭建Git服务器需要准备一台运行Linux的机器,强烈推荐用Ubuntu或Debian,这样,通过几条简单的apt命令就可以完成安装。
假设你已经有sudo权限的用户账号,下面,正式开始安装。
第一步,安装git:
$ sudo apt-get install git
第二步,创建一个git用户,用来运行git服务:
$ sudo adduser git
第三步,创建证书登录:
收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
第四步,初始化Git仓库:
先选定一个目录作为Git仓库,假定是/srv/sample.git,在/srv目录下输入命令:
$ sudo git init --bare sample.git
Git就会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。然后,把owner改为git:
$ sudo chown -R git:git sample.git
第五步,禁用shell登录:
出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
git:x:1001:1001:,,,:/home/git:/bin/bash
改为:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。
第六步,克隆远程仓库:
现在,可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:
$ git clone git@server:/srv/sample.git
Cloning into 'sample'...
warning: You appear to have cloned an empty repository.
剩下的推送就简单了。
发表评论
暂时没有评论,来抢沙发吧~