简介
GitLab 社区版可以提供许多与 GitHub 相同的功能,且部署在属于自己的机器上,我们会因为网络及其他一些问题而不便使用 GitHub ,这时部署一个 GitLab 是最好的选择。
下载 GitLab 并安装
我的环境是 Ubuntu 16.04 下进行部署操作。
GitLab 下载地址:https://about.gitlab.com/downloads/#ubuntu1604
其他版本请自行选择不同系统。
1.首先是安装一些依赖服务
sudo apt-get install curl openssh-server ca-certificates postfix
2.官方的建议是使用脚本直接执行安装
sudo curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt-get install gitlab-ce
打开/etc/gitlab/gitlab.rb,将
external_url = 'http://git.example.com'修改为自己的域名地址:http://example.com,默认为80端口,如要使用其他端口后面加上端口号,如:http://127.0.0.1:8080
然后执行:
sudo gitlab-ctl reconfigure
启动完成后浏览器访问配置好的地址,应该出现重置管理员密码的界面。
汉化
1.下载社区提供的汉化包,在 https://gitlab.com/xhang/gitlab/ 中找到相应的汉化分支。
sudo wget wget -cO gitlab-9.0_zh.tar.gz https://gitlab.com/xhang/gitlab/repository/archive.tar.gz?ref=9-0-stable-zh
2.解压包
sudo tar zxvf gitlab-9.0_zh.tar.gz
3.停止 GitLab 服务
sudo gitlab-ctl stop
4.备份 gitlab-rails 目录,该目录下主要是web应用部分,也是当前项目仓库的起始版本,也是汉化包要覆盖的目录。
sudo tar zcvf /opt/gitlab/embedded/service/gitlab-rails-bak.tar.gz gitlab-rails
5.将解压后的汉化补丁覆盖原来的
sudo cp -rf gitlab-9-0-stable-zh/* gitlab-rails/
6.启动服务
sudo gitlab-ctl start
7.重新执行配置命令
sudo gitlab-ctl reconfigure
汉化完成
一些界面设置
进入界面后关掉一些我们可能用不到的设置,在 「管理区域」的设置中进行更改
「开启 Gravatar 头像」关闭,国内访问不了,要想访问得FQ
「开启注册」关闭,我们自己的仓库系统不需要公开注册,账号分配就好
邮件配置:
sudo vim /etc/gitlab/gitlab.rb
################################ # GitLab email server settings # ################################ # see https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/smtp.md#smtp-settings # Use smtp instead of sendmail/postfix. gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.163.com" gitlab_rails['smtp_port'] = 25 gitlab_rails['smtp_user_name'] = "****@163.com" gitlab_rails['smtp_password'] = "P********" gitlab_rails['smtp_domain'] = "163.com" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = false gitlab_rails['gitlab_email_from'] = "****@163.com" gitlab_rails['gitlab_email_reply_to'] = "****@163.com" # gitlab_rails['smtp_openssl_verify_mode'] = 'none' # gitlab_rails['smtp_ca_path'] = "/etc/ssl/certs" # gitlab_rails['smtp_ca_file'] = "/etc/ssl/certs/ca-certificates.crt"
当修改完成后, 记得重新加载配置并重启:
gitlab-ctl reconfigure
gitlab-ctl restart
测试:
gitlab-rails console
Notify.test_email('xxx@kitking.com', 'test', 'test body').deliver_now