Docker搭建Gitlab代码管理平台
一、Gitlab的安装
宿主机环境:
- CentOS 7
- docker
- docker-compose
1、查找镜像
docker search gitlab
2、拉取镜像
docker pull gitlab/gitlab-ce
3、构建容器
# 切换目录
mkdir /usr/local/docker
cd /usr/local/docker
touch docker-compose.yml
docker-compose.yml内容如下:
version: "3.7"
services:
gitlab:
image: gitlab/gitlab-ce
restart: on-failure
container_name: gitlab
ports:
- '8080:80'
- '8443:443'
- '222:22'
volumes:
- /usr/local/docker/gitlab/data:/var/opt/gitlab
- /usr/local/docker/gitlab/logs:/var/log/gitlab
- /usr/local/docker/gitlab/conf:/etc/gitlab
4、启动容器
docker-compose up -d
注意:
这样启动容器之后,无论使用ssh还是http方式进行clone时,显示的地址中的主机名都是容器产生的随机id,这就导致外部主机无法解析。
解决方法:
vi gitlab/conf/gitlab.rb
# 修改external_url和gitlab_ssh_host属性为自己虚拟机的访问地址,然后去掉注释,不要加端口号
external_url 'http://192.168.172.142'
gitlab_rails['gitlab_ssh_host'] = '192.168.172.142'
同时如果在上面指定的端口映射不是默认的,比如上面将ssh端口映射到虚拟机的222端口,这时还需要修改:
gitlab_rails['gitlab_shell_ssh_port'] = 222
二、测试Gitlab
像github一样,要使用ssh克隆代码,先要配置ssh秘钥。
1、在物理机生成秘钥
ssh-keygen -t rsa -b 4096 -C "your email"
cd <用户目录>/.ssh/
# 拷贝 id_rsa.pub
2、拷贝到gitlab
点击头像
> settings
> 左导航栏
> SSH keys
3、创建项目
创建项目,测试ssh
注意:
github和gitlab都要用ssh秘钥,而生成的秘钥文件都是id_rsa.pub,为了区分开来,可以这样做:
1、在 .ssh目录下创建
config
,注意文件名和编码,内容如下:
Host github.com
Preferredauthentications publickey
IdentityFile ~/.ssh/github_rsa
单独指定github的ssh秘钥文件为github_rsa
,gitlab使用默认的id_rsa
文件;
2、生成github的秘钥文件
cd <用户目录>/.ssh/
ssh-keygen -t rsa -b 4096 -C "your email" -f github_rsa
3、公钥拷贝到github
4、将私钥添加到
ssh-agent
打开git bash
ssh-agent bash
ssh-add ~/.ssh/github_rsa
然后就OK了。
Docker搭建Gitlab代码管理平台的更多相关文章
- 基于Docker搭建GitLab代码管理
关于Git.SVN的优缺点就不再重复了,本篇主要以实际搭建为主. 1.下载镜像文件 在命令行窗口执行如下指令,预计下载完成4分钟. docker pull beginor/gitlab-ce:11.0 ...
- 从零开始搭建gitea代码管理平台
Gitea,一款极易搭建的Git自助服务.如其名,Git with a cup of tea.跨平台的开源服务,支持Linux.Windows.macOS和ARM平台.配置要求低,甚至可以运行在树莓派 ...
- 如何用Baas快速在腾讯云上开发小程序-系列2:搭建Phabricator开发管理平台
版权声明:本文由贺嘉 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/905333001487424158 来源:腾云阁 h ...
- Visual SVN 企业版代码管理平台的建设
通常需要完整的SVN的代码管理平台系统的搭建,需要安装三个文件,Visual SVN server , TortoiseSVN, Visual SVN. Visual SVN server 企业版 ...
- Ubuntu Docker搭建GitLab以及常规配置使用
安装启动实例 1.首先创建一个目录用于存放配置 sudo docker pull docker.io/gitlab/gitlab-ce sudo mkdir -p /root/docker/gitla ...
- [转帖]知乎专栏:正确使用 Docker 搭建 GitLab 只要半分钟
正确使用 Docker 搭建 GitLab 只要半分钟 https://zhuanlan.zhihu.com/p/49499229 很多程序员在内网搭建 gitlab 都搭建的坑坑洼洼,不支持 htt ...
- 【Devops】【docker】【CI/CD】1.docker搭建Gitlab环境
CI/CD[持续化集成/持续化交付] docker搭建Gitlab环境 1.查询并拉取gitlab镜像 docker search gitlab docker pull gitlab/gitlab-c ...
- Docker 三种UI管理平台
docker集中化web管理平台 一.shipyard 1.启动docker,下载镜像 # systemctl restart docker # docker pull alpine # docker ...
- 阿里云代码管理平台 Teambition Codeup(行云)亮相,为企业代码安全护航
2019杭州云栖大会企业协作与研发效能专场,企业协同平台Teambition负责人齐俊元正式发布阿里云自研的代码管理平台Teambition Codeup(行云),Codeup是一款企业级代码管理产品 ...
随机推荐
- Linux学习:Makefile简介及模板
一.基本概念介绍: Makefile 文件就是告诉make命令需要怎么样的去编译和链接程序. 编写Makefile的基本规则: 1.如果这个工程没有编译过,那么我们的所有C文件都要编译并被链接. 2. ...
- iOS实现TextField光标居中
// // MyTextField.m // DriverEpoch // // Created by 思 彭 on 2017/10/12. // Copyright © 2017年 http://h ...
- (转)svn执行clean up命令时报错“Previous operation has not finished; run 'cleanup' if it was interrupted”
今天碰到了个郁闷的问题,svn执行clean up命令时报错“Previous operation has not finished; run 'cleanup' if it was interrup ...
- 图像欧拉数计算 matlab实现
EUL = C - H 其中EUL表示欧拉数 C表示对象数 H表示孔洞数 欧拉数常用来识别数字: 识别数字 8 ,8 的欧拉数为 -1 ,不同于0,1,2,3,4,5,6,7,9 close all ...
- Java学习笔记-包,classpath,import,jar
这里介绍Java的包,classpath,import和jar 包(package) 对类文件进行分类管理 给类提供多层命名空间 写在程序文件的第一行 类名的全称的是 包名.类名 包也是一种封装形式 ...
- Reactor系列(八)concatMap有序映射
#java#reactor#comcatMap# 有序映射 视频讲解:https://www.bilibili.com/video/av79705356/ FluxMonoTestCase.java ...
- 使用Dockerfile创建ssh服务的镜像02
使用Dockerfile创建ssh服务的镜像02 1:创建工作目录---一个镜像的所有文件都放这个目录下 ubuntu@ubuntu:~$ mkdir sshd_ubuntu ubuntu@ubunt ...
- DB2 数据库权限
以下内容转载: http://blog.csdn.net/xiyuan1999/article/details/8135263 DB2中的权限 DB2 中有三种主要的安全机制,可以帮助 DBA 实现 ...
- [百度]将ftp添加到本地映射磁盘的方法
在桌面上鼠标双击“计算机”,进入“计算机”窗口 2 在“计算机”窗口中,选择“映射网络驱动器” 3 进入“映射网络驱动器”窗口 4 设置盘符,可以使用默认,也可以自己手动设置 5 在“映射网络驱动器” ...
- ibox 的使用
<div class="ibox float-e-margins"> <div class="ibox-title"> <h5&g ...