一、概述

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

二、搭建

环境说明

操作系统:centos 7.6

docker版本:19.03.12

ip地址:192.168.31.145

配置:2核4g

拉取镜像

docker pull gitlab/gitlab-ce

运行

mkdir -p /data/gitlab/
docker run -d \
--restart=always \
--name=gitlab-ce \
-p 8443:443 -p 8090:80 -p 8022:22 \
-v /data/gitlab/config:/etc/gitlab \
-v /data/gitlab/logs:/var/log/gitlab \
-v /data/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce

查看日志

docker logs -f gitlab-ce

等待10分钟,输入如下:

...
2020-07-23_06:03:55.07085 t=2020-07-23T06:03:55+0000 lvl=info msg="Starting DB migration" logger=migrator
2020-07-23_06:03:55.07856 t=2020-07-23T06:03:55+0000 lvl=info msg="Starting plugin search" logger=plugins
2020-07-23_06:03:55.11010 t=2020-07-23T06:03:55+0000 lvl=info msg="HTTP Server Listen" logger=http.server address=127.0.0.1:3000 protocol=http subUrl=/-/grafana socket=

出现以上信息,表示启动成功了。

三、配置文件

修改ip和端口

cd /data/gitlab/config
cp gitlab.rb gitlab.rb.bak
vi gitlab.rb

# external_url 'GENERATED_EXTERNAL_URL'

修改为:

external_url 'http://gitlab.aliyun.com'

注意:这里表示gitlab的访问url,如果需要域名访问,这里必须指定为域名才行。

# gitlab_rails['gitlab_ssh_host'] = 'ssh.host_example.com'

修改为:

gitlab_rails['gitlab_ssh_host'] = 'gitlab.aliyun.com'

注意:这里表示gitlab的ssh访问地址

# gitlab_rails['gitlab_shell_ssh_port'] = 22

修改为:

gitlab_rails['gitlab_shell_ssh_port'] = 8022

注意:这里表示gitlab的ssh端口

修改邮箱

# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.server"
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "smtp user"
# gitlab_rails['smtp_password'] = "smtp password"
# gitlab_rails['smtp_domain'] = "example.com"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = false

修改为:

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "aliyun@163.com"
gitlab_rails['smtp_password'] = "123456"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

注意:请根据实际情况填写。

# gitlab_rails['gitlab_email_from'] = 'example@example.com'

修改为:

gitlab_rails['gitlab_email_from'] = 'aliyun@163.com'

注意:这里表示gitlab的发件人地址

重启gitlab

docker exec -it gitlab-ce gitlab-ctl reconfigure
docker restart gitlab-ce

四、nginx发布gitlab

安装nginx

yum install -y nginx
mkdir -p /data/log/nginx
nginx

配置文件

vi /etc/nginx/conf.d/gitlab.aliyun.com.conf

内容如下:

server {
listen 80;
server_name gitlab.aliyun.com;
charset utf-8;
access_log /data/log/nginx/gitlab.aliyun.com.access.log main;
error_log /data/log/nginx/gitlab.aliyun.com.error.log;
client_max_body_size 3072m;
location / {
index index.html index.htm;
proxy_pass http://192.168.31.145:8090;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}

注意:请根据实际情况填写。

重新加载配置

nginx -s reload

访问页面

http://gitlab.aliyun.com

输入新的密码,比如:abcd@1234

重新登录页面,用户名:root,密码就是刚才修改的。

效果如下:

五、切换中文

gitlab 官方已经开始支持多语言,中文设置方法: 依次点击工具栏最右侧用户头像—>Settings—>Preferred—>Localization
点击Language下面的选择框,选择中文

刷新页面,效果如下:

六、关闭注册功能

点击扳手图标

点击设置

点击注册限制-->展开

默认是勾选的,去除勾选

点击底部的保存按钮。

等待几秒钟,重新打开登录页,就没有注册了

最新文章

  1. K近邻分类法
  2. macbook air 128g 磁盘清理
  3. 有k个list列表, 各个list列表的元素是有序的,将这k个列表元素进行排序( 基于堆排序的K路归并排序)
  4. 使用JS截取字符串函数详解
  5. JS功能代码集锦
  6. [置顶] Embedded Server:像写main函数一样写Web Server
  7. HBase_在Linux上安装以及运用
  8. linux环境下安装jdk(本文示例是jdk1.6.0_export JAVA_HOME=/usr/java/jdk1.6.0_45 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar45)
  9. 抽象工厂模式(Java与Kotlin版)
  10. python codis集群客户端(二) - 基于zookeeper对实例创建与摘除
  11. 程序员的自我救赎---11.4:FileSystem文件服务
  12. 2018最新版本Sublime Text3注册码(仅供测试交流使用)
  13. mkdir(): Permission denied
  14. MapReduce输出文件名更改
  15. Codeforces Round #518 (Div. 2) B LCM
  16. sklearn学习笔记
  17. ideal通过svn上传项目和激活方式
  18. PHP中文件操作(1)--打开/读取文件
  19. MICROSOFT SQLSERVER 总结
  20. BeautifulSoup解析库

热门文章

  1. 深度解读.NET5 授权中间件执行策略
  2. linux(11)配置环境变量
  3. HDU - 6761 Minimum Index (字符串,Lyndon分解)
  4. 2019 ccpc秦皇岛
  5. 2019牛客暑期多校训练营(第七场)F-Energy stones(思维+树状数组)
  6. 「SCOI2005」互不侵犯 (状压DP)
  7. 【poj 1988】Cube Stacking(图论--带权并查集)
  8. P2062 分队问题(DP)
  9. 哈尔滨理工大学软件与微电子学院程序设计竞赛(同步赛) C.Coronavirus (BFS)
  10. Linux ulimit使用