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相关推荐

  1. 基于 Docker 和 GitLab 的前端自动化部署实践笔记

    基于 Docker 和 GitLab 的前端自动化部署 实践笔记 随着接触的项目越来越多,在部署测试流程上重复耗时工作也越来越多,所以对前端工作的CI/CD实现愈发迫在眉睫. 前端开发由于三大框架的崛 ...

  2. Linux centos7 docker部署gitlab私有服务器

    Docker部署gitlab私有服务器,那么,这里必须要有两个软件啦,一个是Docker,一个是gitlab.鉴于很多同学还是不太了解这两个东西,并且观看了不少的其他大神的相关博客,发现对于Docke ...

  3. 基于docker部署的微服务架构(九): 分布式服务追踪 Spring Cloud Sleuth

    为什么80%的码农都做不了架构师?>>>    前言 微服务架构中完成一项功能经常会在多个服务之间远程调用(RPC),形成调用链.每个服务节点可能在不同的机器上甚至是不同的集群上,需 ...

  4. 推荐一款基于docker部署的个人免费笔记工具wiznote

    推荐一款基于docker部署的个人免费笔记工具wiznote 作为一个爱写作爱折腾的程序员,在做某个事情的时候,脑子里总是会联想并且不断蹦出各种奇怪的创意和想法,但是这些想法很多时候都是一闪而逝,事情 ...

  5. Docker部署Gitlab,http端口不用80的解决方法

    虚拟机中的端口:80被占用了,所以需要用其他的端口代替 解决办法: web:image: 'gitlab/gitlab-ce:latest'restart: alwayshostname: '146. ...

  6. docker部署gitlab

    这篇文章用来记录下我在使用docker部署gitlab时候遇到的一些坑. 先介绍下我的环境: 阿里云的轻量应用服务器:2核4G(好像最低要求配置,之前用2核2G的部署,直接给内存溢出),centos7 ...

  7. mac 上搭建gitlabel_在Mac OS X中用Docker部署GitLab

    以前采用gitosis在Mac OS上架设Git服务器,用于集中管理课题组中的所有Git仓库.Gitosis 是一套用来管理 authorized_keys文件和实现简单连接限制的脚本,用来添加用户和 ...

  8. 基于Docker搭建Gitlab代码存储

    关于Docker搭建Gitlab,在19年时就已经在博客发过文章了,今天重新回顾一下. 1.拉取镜像 docker pull gitlab/gitlab-ce 默认拉取最新版本: 2.创建Gitlab ...

  9. docker 部署 gitlab gitlab-runner 实现 CI

    GitLab私服搭建 GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务 参考官方Doc: GitLab Docker images | Gi ...

  10. 【K8S】基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)

    写在前面 最近在 K8S 1.18.2 版本的集群上搭建DevOps环境,期间遇到了各种坑.目前,搭建环境的过程中出现的各种坑均已被填平,特此记录,并分享给大家! 服务器规划 IP 主机名 节点 操作 ...

最新文章

  1. 应用层下的人脸识别(一):图像获取
  2. qq邮箱电脑版登录入口_Windows版TIM体验更新,微信可以直接登录QQ
  3. 关于TransactionScope分布式事务在Oracle下的运作
  4. vue人员轨迹_在vue中高德地图引入和轨迹的绘制的实现
  5. intitle:客服机器人代码_游戏客服能影响企业发展?千万别大意
  6. Storm案例:统计单词个数
  7. 深入理解Lock的底层实现原理
  8. 初学者python笔记(json模块、pickle模块、xml模块、shelve模块)
  9. CVE-2020-16875: Microsoft Exchange远程代码执行漏洞通告
  10. 工业互联网方案商“全应科技”获明势领投Pre-A轮融资
  11. 蓝桥杯2020年第十一届C++省赛第四题-蛇形填数
  12. ch2 gpio应用:Buzzer封装
  13. 【Mendeley】自定义文献引用格式(cite style)并保存
  14. 一小时入门proteus使用教程
  15. Xcode failed to get reply to handshake packet
  16. kubeadm安装部署k8s(1)
  17. 12306排队是什么意思_12306网上购票解答 车票购买排队中怎么办
  18. html pc端单位转换,pc是什么单位?
  19. 创建采购订单BADI流程
  20. 7-4 黄金时代 (20 分)

热门文章

  1. 如何在Global Mapper中打开谷歌卫星地图
  2. 3万字史诗级 Hive 性能调优(建议收藏)
  3. [附源码]Python计算机毕业设计SSM旅游足迹分享系统(程序+LW)
  4. 算法实验-最长单调递增子序列长度
  5. 官宣,重量级评委团强势加持腾讯广告算法大赛
  6. Nukeygara Akeytsu(3D动画制作软件)官方正式版V20.3.5 | 动画制作软件哪个好用
  7. 弘辽科技:拼多多一张营业执照能开几个店铺?技巧是什么?
  8. 白萝卜de学习笔记2
  9. Win10 安装 Rational Rose 教程
  10. Problem B: 七龙珠II