gitlab 安装、配置

对于企业级的私有 git 仓库,gitlab 是个不错的选择。

今天就来说说 gitlab 的安装、配置。

系统配置建议:最低双核 4G 内存。

当前针对 gitlab 版本:11.5.3

1. 说明

根据官方的安装教程,选取 ubuntu 环境下的社区版进行安装:https://about.gitlab.com/install/#ubuntu?version=ce

如果需要其他的环境(如 CentOSdocker 等)或者企业版,参考这里:https://about.gitlab.com/install/

注:社区版是免费的,企业版是收费的。

2. 安装、配置所需依赖


sudo apt-get install -y curl openssh-server ca-certificates

sudo apt-get install -y postfix

3. 添加安装包地址,并安装


curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

sudo EXTERNAL_URL="http://gitlab.example.com" apt-get install gitlab-ce

这里需要把 http://gitlab.example.com 改成你自己的真正对外服务的 gitlab url 地址(也可以安装后在配置文件里面更改)。

到这里为止,gitlab 就算安装好了。

4. 安装之后

gitlab 默认建议安装在一个单独的主机上,默认使用内置的 nginx 服务器,并使用 808080 两个端口。

如果你是按照 gitlab 的默认建议,使用的是单独的主机,直接访问 ip 地址 http://ip,或者把域名解析到这台机器上后直接访问域名 http://gitlab.your.com,然后按照步骤在 web 页面上初始化 gitlab 就可以了。

然而,很多情况下,gitlab 并不会部署到一台单独的服务器上,而是像其他很多服务一样(如 jenkins),部署到同一台服务器上,然后使用 nginx 反向代理。

5. nginx 反向代理配置

添加 nginx 配置:


upstream gitlab-workhorse {
server unix:/var/opt/gitlab/gitlab-workhorse/socket;
} server {
listen 0.0.0.0:80;
listen [::]:80;
server_name gitlab.your.com;
server_tokens off;
root /opt/gitlab/embedded/service/gitlab-rails/public; access_log /var/log/nginx/gitlab_access.log;
error_log /var/log/nginx/gitlab_error.log; location / {
client_max_body_size 0;
gzip off; proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://gitlab-workhorse;
}
}

如果想要了解更详细的配置,可以参考:NGINX settings | GitLab

重新加载 nginx 配置:


service nginx reload
# or
service nginx restart

修改 gitlab 配置:


vi /etc/gitlab/gitlab.rb external_url 'http://gitlab.your.com' # 此处修为你自己的 gitlab url
web_server['external_users'] = ['www-data'] # 设置外部 webserver 用户
nginx['enable'] = false # 不使用内置的 nginx

sudo usermod -aG gitlab-www www-data # 把 www-data 用户添加到 gitlab-www 组

gitlab 服务默认使用的是 8080 端口,如果 8080 端口已经被其他程序(如 tomcat)占用,需要改成其他端口:


unicorn['port'] = 8081 # 改成你自己觉得好的端口

更新 gitlab 配置,重启服务:


gitlab-ctl reconfigure
gitlab-ctl restart

现在你就可以访问 http://gitlab.your.com,然后按照步骤在 web 页面上初始化 gitlab 就可以了。

6. 常用命令


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

7. 常用目录


/var/log/gitlab/ # 日志地址
/var/opt/gitlab/ # 服务地址

8. 查看版本


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

9. 可能遇到的一些问题

9.1 File to import not found or unreadable

解决:需要 npm 安装一下


cd /opt/gitlab/embedded/service/gitlab-rails
npm install
gitlab-ctl restart # 重启服务

后续

更多博客,查看 https://github.com/senntyou/blogs

作者:深予之 (@senntyou)

版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证

gitlab 安装、配置的更多相关文章

  1. CentOS gitlab 安装配置

    CentOS gitlab 安装配置 2018-11-02 11:23:09   Visit  5 在/etc/yum.repos.d 目录下创建文件gitlab-ce.repo,使用国内的安装源 b ...

  2. [ci]gitlab安装配置(含gitlab邮件配置)

    gitlab安装配置 参考: https://www.unixhot.com/article/48 原则:简单维护为准,故yum安装gitlab 1,gitlab安装 2,gitlab邮箱配置 1,g ...

  3. GitLab 安装配置笔记(转)

    GitLab的安装方式 GitLab的两种安装方法: 编译安装 优点:可定制性强.数据库既可以选择MySQL,也可以选择PostgreSQL;服务器既可以选择Apache,也可以选择Nginx. 缺点 ...

  4. gitlab之一: gitlab安装配置使用

    参考: gitlab 安装和配置 gitlab下载地址: https://mirror.tuna.tsinghua.edu.cn/gitlab-ce/ 官方教程: https://about.gitl ...

  5. centos7.3 gitlab 安装配置

    1. 设备环境 硬件配置联想 TS250 E3-1225,16G内存,2X1 TB 软件CentOS-7-x86_64-DVD-1804.iso ,安装时选择桌面版 推荐配置参考:https://do ...

  6. Centos 6.5 GitLab安装配置搭建详细过程

    GitLab搭建详细过程   一.前提 系统:Centos 6.5 软件版本:gitlab-7.8.4 Selinux:关闭 防火墙规则:先清空(搭建好了后续自己添加相关放行规则) 二.yum源配置和 ...

  7. gitlab安装配置

    一.安装依赖服务 yum install curl policycoreutils-python openssh-server postfix -y systemctl start postfix s ...

  8. Gitlab 安装配置

    Gitlab 很好的替代Github,可以安装到公司的内网服务器 进行管理 ,可以分布式的管理,集中的管理 下面介绍安装这个软件的步骤 其实安装很简单的  按照官网可以安装 https://about ...

  9. 一文搞懂GitLab安装部署及服务配置

    GitLab安装部署 Git,GitHub,GitLab,这三个东东长得好像呀,都是个啥? Git是Linus Torvalds(如果不知道这位大神是谁,请出门左转,慢走不送~)为了帮助管理Linux ...

  10. gitlab安装随记

    gitlab安装 配置yum源 sudo vim /etc/yum.repos.d/gitlab-ce.repo 按照网上别人的例子,修改为清华的源 [gitlab-ce] name=Gitlab C ...

随机推荐

  1. AcWing:246. 区间最大公约数(线段树 + 增量数组(树状数组) + 差分序列)

    给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1.“C l r d”,表示把 A[l],A[l+1],…,A[r] 都加上 d. 2.“Q l r”,表示询问 A[l],A[l ...

  2. JS框架_(JQuery.js)圆形多选菜单选项

    百度云盘 传送门 密码:zb1c 圆形多选菜单选项效果: <!DOCTYPE html> <html lang="en" > <head> &l ...

  3. 取消 vue 的严格模式

    vue 中 有个 ' use strict ' 为严格模式,导致我们的一些东西都不可以使用,使用便会报错 解决方法:我们下载 babel-plugin-transform-remove-strict- ...

  4. python自然语言处理学习笔记2

    基础语法 搜索文本----词语索引使我们看到词的上下 text1.concordance("monstrous") 词出现在相似的上下文中 text1.similar(" ...

  5. PHP结合Ueditor并修改图片上传路径 微信小程序 拼接域名显示图片

    前言 在使用UEditor编辑器时,一般我们都是需要修改默认的图片上传路径的,下面是我整理好的修改位置和方法供大家参考. 操作 Ueditor PHP版本本身自带了一套上传程序,我们可以在此基础中,找 ...

  6. Linux常用命令touch/grep/mkdir/rm/cat/find/cp/mv/tar/gzip等

    Unix-->Linux(Ubuntu,Redhat,suse,fedora) 1. cd - :回到上次执行的那个目录(相当于“回看”的功能) 2. touch :创建一个文件,可以是任意后缀 ...

  7. linux配置多个ip

    linux配置多个ip /sbin/ifconfig eth0:1 172.19.121.180 broadcast 172.19.121.255  netmask 255.255.255.0 up ...

  8. SVN的使用和问题解决方法总结

    添加仓库之类的很简单,这里就不说了哈...不会的可以问问我,当然百度再快了..嘿嘿 1.从服务器Check Out代码: 2.提交代码: 3.你是不是今天和我一样纠结如何删除已经上传SVN的内容,其实 ...

  9. shell历史命令

    1.每分钟备份历史命令 制定计划任务:每分钟执行备份历史命令的脚本 注意:要用python写计划任务脚本,因为用shell脚本写的计划任务总是不执行 先写脚本: [root@master ~]# ca ...

  10. [转] JavaScript学习:BOM和DOM的区别和关联

    BOM 1.  BOM是Browser Object Model的缩写,即浏览器对象模型. 2.  BOM没有相关标准. 3.  BOM的最根本对象是window. 从1可以看出来:BOM和浏览器关系 ...