搭建GitLab版本控制系统
时间:2022-05-07
本文章向大家介绍搭建GitLab版本控制系统,主要内容包括1. GitLab 简介、2. 安装、(2)获取 GitLab 镜像、(3)启动容器、(4)配置外部访问 URL、(5)访问、3. 配置、4. 客户端测试、(2)clone 刚刚新建的项目、(2)修改项目,添加一个说明文件、(3)提交到仓库、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
1. GitLab 简介
GitLab 是一款基于 git 的开源代码仓库系统
GitLab 与著名的 GitHub 最大的区别就是:
允许我们搭建自己的 git 代码私有仓库,非常方便
2. 安装
直接安装 GitLab 比较复杂,需要安装很多依赖,例如:Redis, Nginx, 数据库 ……
为了简化安装过程,GitLab 提供了 Docker 镜像,可以很快的运行起来
具体过程:
(1)配置docker镜像
直接从 docker hub 获取的话速度非常慢,所以需要配置一个镜像
我使用的是 daocloud.io
提供的加速器,速度很快
(2)获取 GitLab 镜像
docker pull gitlab/gitlab-ce
下载完成后,查看镜像列表
docker images
列表中会显示出 gitlab 的镜像
docker.io/gitlab/gitlab-ce ......
(3)启动容器
sudo docker run --detach
--hostname gitlab
--publish 443:443
--publish 80:80
--publish 2222:22
--name gitlab
--restart always
--volume /root/data/gitlab/config:/etc/gitlab
--volume /root/data/gitlab/logs:/var/log/gitlab
--volume /root/data/gitlab/data:/var/opt/gitlab
docker.io/gitlab/gitlab-ce
3个--publish
指定容器与主机的端口映射,分别是 http、https、ssh
3个--volume
指定数据卷的映射,分别是 gitlab 的 配置、日志、数据
(4)配置外部访问 URL
修改 gitlab 配置文件
docker exec -it gitlab vi /etc/gitlab/gitlab.rb
找到 external_url
这一项
修改为自己服务器的访问地址:
external_url 'http://114.215.223.62'
保存后,重启容器
docker restart gitlab
(5)访问
这时,gitlab 就已经安装完成,并成功运行,可以访问了
3. 配置
初次访问时,gitlab 要求我们重置管理员密码,修改完成后,登录
新建一个项目,输入名称和描述信息,项目就创建完成了
4. 客户端测试
(1)全局设置
gitlab 项目页面中会给出全局配置信息,例如
git config --global user.name "Administrator"
git config --global user.email "admin@example.com"
在本地执行一下
(2)clone 刚刚新建的项目
git clone http://114.215.223.62/root/test.git
(2)修改项目,添加一个说明文件
cd test
vi README.md # 写入内容 “测试一下”
git add README.md
git commit -m "add README"
(3)提交到仓库
git push -u origin master
到 gitlab 就可以查看到,说明我们自己的 gitlab 环境可以正常工作了
gitlab 文档地址:
https://docs.gitlab.com/ce/README.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- codeforces 1384A(构造)
- codeforces 982C (dfs)
- POJ 2493 (map)
- codeforces 1417C(思维)
- codeforces 1256C (贪心+构造)
- codeforces 722C(带权并查集+反向思维)
- codeforces 1144D(思维)
- 经典的SparkSQL/Hive-SQL/MySQL面试-练习题
- codeforces 1249E(dp)
- Redis-KV数据库Java连接以及Jedis包的使用
- codeforces 1203D1(暴力)
- codeforces 1366B(线段相交)
- 一文搞懂Python自动化测试框架
- codeforces 1005D(数学)
- JSP开发简单实例演示