基于Docker 部署gitlab-ce
1. 获取Gitlab镜像
1.1 查找Gitlab镜像
# 查找Gitlab镜像
$ sudo docker search gitlab-ce
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
gitlab/gitlab-ce GitLab Community Edition docker image based … 3620 [OK]
twang2218/gitlab-ce-zh 汉化的 GitLab 社区版 Docker Image 256 [OK]
beginor/gitlab-ce GitLab Community Edition with zh-cn 71 [OK]
yrzr/gitlab-ce-arm64v8 GitLab Community Edition docker image for ar… 33
gitlab/gitlab-ce-qa GitLab QA has a test suite that allows end-t… 8
drud/gitlab-ce 5
polinux/gitlab-ce GitLab-CE on Steroids (Extra features - see … 3 [OK]
slpcat/gitlab-ce gitlab-ce最新社区版10.1.0,omnibus二进制包 3
marq/gitlab-ce-subgit A GitLab container with SubGit included. 3 [OK]
lizhenliang/gitlab-ce-zh 2
computersciencehouse/gitlab-ce-oidc GitLab CE Docker image with OpenID Connect s… 1 [OK]
projectatomic/gitlab-centos7-atomicapp Gitlab Atomic App 1 [OK]
idoall/gitlab-ce gitlab-ce 1 [OK]
lezapedrola/gitlab-ce 0
oidatiftla/gitlab-ce Mirror of gitlab/gitlab-ce with more tags (m… 0
toshi0123/gitlab-ce gitlab-ce based on alpine linux 0 [OK]
visitsb/gitlab-ce Fixes official https://hub.docker.com/r/gitl… 0
sstruss/gitlab-ce-armhf gitlab-ce armhf image for armv7/armhf platfo… 0
jbuncle/gitlab-ce 0
visualon/gitlab-ce customized gitlab-ce docker image 0
chefplatform/gitlab-ce-kitchen Docker image based on gitlab/gitlab-ce provi… 0
ragboy/gitlab-ce gitlab-ce 8.4.2 0
mjvdende/gitlab-ce gitlab-ce pimped with latest postgresql-clie… 0 [OK]
imachineml/gitlab-ce 0
floydev/gitlab-ce 0
1.2 拉取gitlab镜像
# 拉取Gitlab镜像(通过上面的列表并且后面带OK的,我们选择最好的官方的)
$ docker pull gitlab/gitlab-ce:latest
1.3 查看本机镜像
$ docker images
2. 启动Gitlab容器
# 启动Gitlab容器
$ sudo docker run \-itd \-p 9980:80 \-p 9922:22 \-v /home/ubuntu/Env/Gitlab/etc:/etc/gitlab \-v /home/ubuntu/Env/Gitlab/log:/var/log/gitlab \-v /home/ubuntu/Env/Gitlab/opt:/var/opt/gitlab \--restart always \--privileged=true \--name gitlab \gitlab/gitlab-ce
命令 | 描述 |
---|---|
-i | 以交互模式运行容器,通常与 -t 同时使用命令解释 |
-t | 为容器重新分配一个伪输入终端,通常与 -i 同时使用 |
-d | 后台运行容器,并返回容器ID |
-p 9980:80 | 将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口 |
-p 9922:22 | 将容器内22端口映射至宿主机9922端口,这是访问ssh的端口 |
-v /home/ubuntu/Env/Gitlab/etc:/etc/gitlab | 将容器/etc/gitlab目录挂载到宿主机/home/ubuntu/Env/Gitlab/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样 |
–restart always | 容器自启动 |
–privileged=true | 让容器获取宿主机root权限 |
–name gitlab | 设置容器名称为gitlab |
gitlab/gitlab-ce | 镜像的名称,这里也可以写镜像ID |
接下来的配置请在容器内进行修改,不要在挂载到宿主机的文件上进行修改。否则可能出现配置更新不到容器内,或者是不能即时更新到容器内,导致gitlab启动成功,但是无法访问
3. 修改配置
# 进容器内部
$ sudo docker exec -it gitlab /bin/bash
# 修改gitlab.rb
$ vi /etc/gitlab/gitlab.rb
# 加入如下:
# 1.gitlab访问地址,可以写域名。如果端口不写的话默认为80端口
external_url 'http://192.168.137.100'
# 2.ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '192.168.137.100'
# 3. ssh连接端口
gitlab_rails['gitlab_shell_ssh_port'] = 9922
# 让配置生效
$ gitlab-ctl reconfigure
注意不要重启,/etc/gitlab/gitlab.rb文件的配置会映射到gitlab.yml这个文件,由于咱们在docker中运行,在gitlab上生成的http地址应该是http://192.168.137.100:9980,所以,要修改下面文件
4. 修改http和ssh配置
# 在docker中操作,将文件中gitlab的端口(默认80)改为9980(与前面一致)
$ vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
重启gitlab:
$ gitlab-ctl restart
退出docker命令行:
$ exit
现在在浏览器输入地址http://192.168.137.100:9980/
即可访问到web界面:
但是我们还没有可用的用户以及密码。
5. 修改root密码
第一次访问,会让修改root密码,修改后才能够进行登录以root用户登录即可。
# 进入容器内部
$ docker exec -it gitlab /bin/bash
# 进入gitlab控制台
$ gitlab-rails console -e production
# 查询id为1的用户,id为1的用户是超级管理员
$ user = User.where(id:1).first
# 修改密码为:`@W908164f`
$ user.password='@W908164f'
# 保存
$ user.save!
# 退出
$ exit
6. 登录测试
gitlab
基于Docker 部署gitlab-ce相关推荐
- 基于 Docker 和 GitLab 的前端自动化部署实践笔记
基于 Docker 和 GitLab 的前端自动化部署 实践笔记 随着接触的项目越来越多,在部署测试流程上重复耗时工作也越来越多,所以对前端工作的CI/CD实现愈发迫在眉睫. 前端开发由于三大框架的崛 ...
- Linux centos7 docker部署gitlab私有服务器
Docker部署gitlab私有服务器,那么,这里必须要有两个软件啦,一个是Docker,一个是gitlab.鉴于很多同学还是不太了解这两个东西,并且观看了不少的其他大神的相关博客,发现对于Docke ...
- 基于docker部署的微服务架构(九): 分布式服务追踪 Spring Cloud Sleuth
为什么80%的码农都做不了架构师?>>> 前言 微服务架构中完成一项功能经常会在多个服务之间远程调用(RPC),形成调用链.每个服务节点可能在不同的机器上甚至是不同的集群上,需 ...
- 推荐一款基于docker部署的个人免费笔记工具wiznote
推荐一款基于docker部署的个人免费笔记工具wiznote 作为一个爱写作爱折腾的程序员,在做某个事情的时候,脑子里总是会联想并且不断蹦出各种奇怪的创意和想法,但是这些想法很多时候都是一闪而逝,事情 ...
- Docker部署Gitlab,http端口不用80的解决方法
虚拟机中的端口:80被占用了,所以需要用其他的端口代替 解决办法: web:image: 'gitlab/gitlab-ce:latest'restart: alwayshostname: '146. ...
- docker部署gitlab
这篇文章用来记录下我在使用docker部署gitlab时候遇到的一些坑. 先介绍下我的环境: 阿里云的轻量应用服务器:2核4G(好像最低要求配置,之前用2核2G的部署,直接给内存溢出),centos7 ...
- mac 上搭建gitlabel_在Mac OS X中用Docker部署GitLab
以前采用gitosis在Mac OS上架设Git服务器,用于集中管理课题组中的所有Git仓库.Gitosis 是一套用来管理 authorized_keys文件和实现简单连接限制的脚本,用来添加用户和 ...
- 基于Docker搭建Gitlab代码存储
关于Docker搭建Gitlab,在19年时就已经在博客发过文章了,今天重新回顾一下. 1.拉取镜像 docker pull gitlab/gitlab-ce 默认拉取最新版本: 2.创建Gitlab ...
- docker 部署 gitlab gitlab-runner 实现 CI
GitLab私服搭建 GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务 参考官方Doc: GitLab Docker images | Gi ...
- 【K8S】基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)
写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 服务器规划 IP 主机名 节点 操作 ...
最新文章
- 应用层下的人脸识别(一):图像获取
- qq邮箱电脑版登录入口_Windows版TIM体验更新,微信可以直接登录QQ
- 关于TransactionScope分布式事务在Oracle下的运作
- vue人员轨迹_在vue中高德地图引入和轨迹的绘制的实现
- intitle:客服机器人代码_游戏客服能影响企业发展?千万别大意
- Storm案例:统计单词个数
- 深入理解Lock的底层实现原理
- 初学者python笔记(json模块、pickle模块、xml模块、shelve模块)
- CVE-2020-16875: Microsoft Exchange远程代码执行漏洞通告
- 工业互联网方案商“全应科技”获明势领投Pre-A轮融资
- 蓝桥杯2020年第十一届C++省赛第四题-蛇形填数
- ch2 gpio应用:Buzzer封装
- 【Mendeley】自定义文献引用格式(cite style)并保存
- 一小时入门proteus使用教程
- Xcode failed to get reply to handshake packet
- kubeadm安装部署k8s(1)
- 12306排队是什么意思_12306网上购票解答 车票购买排队中怎么办
- html pc端单位转换,pc是什么单位?
- 创建采购订单BADI流程
- 7-4 黄金时代 (20 分)
热门文章
- 如何在Global Mapper中打开谷歌卫星地图
- 3万字史诗级 Hive 性能调优(建议收藏)
- [附源码]Python计算机毕业设计SSM旅游足迹分享系统(程序+LW)
- 算法实验-最长单调递增子序列长度
- 官宣,重量级评委团强势加持腾讯广告算法大赛
- Nukeygara Akeytsu(3D动画制作软件)官方正式版V20.3.5 | 动画制作软件哪个好用
- 弘辽科技:拼多多一张营业执照能开几个店铺?技巧是什么?
- 白萝卜de学习笔记2
- Win10 安装 Rational Rose 教程
- Problem B: 七龙珠II