Docker Compose部署GitLab服务,搭建自己的代码托管平台(图文教程)
场景
Docker-Compose简介与Ubuntu Server 上安装Compose:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100902301
Docker Compose基本使用-使用Compose启动Tomcat为例:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100904080
Docker Compose部署项目到容器-基于Tomcat和mysql的商城项目(附源码和sql下载):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100941366
在上面实现基本的Compose的操作的基础上,实现使用Docker Compose搭建Gitlab。
Gitlab
Gitlab是一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。它拥有与Github类似的功能,能够浏览源码,管理缺陷和注释,可以管理团队对仓库的访问,它非常易于浏览提交的版本并提供一个文件历史库。团队成员可以利用内置的简单的聊天程序进行交流。它还提供一个代码片段收集功能可以实现代码复用。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
在安装好Compose后,首先将虚拟机进行克隆,克隆出一份进行部署其他服务,在克隆时选择链接克隆,所以源虚拟机千万不能删掉,否则克隆出的虚拟机也能不能用。
GitLab对于系统性能有要求,所以我们需要将克隆出来的虚拟机的内存提高到至少2G以上。

因为GitLab的镜像比较大,所以需要拉取很长时间。
GitLab 中文社区版:
https://hub.docker.com/r/gitlabcezh/gitlab-ce-zh
输入命令:
docker pull twang2218/gitlab-ce-zh

等待其拉取完成。

然后在 /usr/local下新建docker目录,再在其下新建gitlab目录,进入gitlab目录,在当前目录下新建docker-compose.yml配置文件。
vi docker-compose.yml

然后按 i 进入编辑模式,复制以下配置文件代码,并按shift + ins 粘贴,然后按ESC,输入 :wq!
退出并保存。
version: ''
services:
web:
image: 'twang2218/gitlab-ce-zh' #gitlab镜像
restart: always
hostname: '192.168.208.134' #主机名,即虚拟机的ip
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://192.168.208.134' #外部访问地址
gitlab_rails['gitlab_shell_ssh_port'] = #22端口已经被占用
unicorn['port'] =
nginx['listen_port'] = #这里的监听端口要与外部地址端口一致 则可省略
ports:
- '80:80'
- '8443:443'
- '2222:22'
volumes: #数据卷挂载
- /usr/local/docker/gitlab/config:/etc/gitlab
- /usr/local/docker/gitlab/data:/var/opt/gitlab
- /usr/local/docker/gitlab/logs:/var/log/gitlab
注:
hostname应为域名,这里使用IP,即虚拟机的ip。
nginx的监听端口要和外部访问地址的端口一致,这里因为nginx设置的是80,所以外部访问端口可省略。
然后输入:
docker-compose up
启动服务。

等待一段时间等启动成功后,打开浏览器,输入:
ip,然后回车。

此时需要设置管理员密码,账号为root,密码最少为8位。
设置完密码后进入登录页面

登录成功后

Docker Compose部署GitLab服务,搭建自己的代码托管平台(图文教程)的更多相关文章
- 从零开始一步一步搭建Ubuntu Server服务器、修改数据源、安装Docker、配置镜像加速器、Compose部署Gitlab服务
场景 最终目的是使用Docker Compose部署一个Gitlab服务. 效果 注: 博客: https://blog.csdn.net/badao_liumang_qizhi关注公众号 霸道的程序 ...
- Docker Compose部署Nexus3时的docker-compose,yml代码
场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...
- Docker Compose 部署Nginx服务实现负载均衡
Compose简介: Compose是Docker容器进行编排的工具,定义和运行多容器的应用,可以一条命令启动多个容器,使用Docker Compose,不再需要使用shell脚本来启动容器.Comp ...
- 3.Docker Compose 部署 GitLab
什么是 GitLab GitLab 是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的 Git 项目仓库,可通过 Web 界面进行访问公开的或者私人项目.它拥有与 Githu ...
- Ubuntu Server 上使用Docker Compose 部署Nexus(图文教程)
场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...
- Docker Compose 部署 Redis 及原理讲解 | 懒人屋
原文:Docker Compose 部署 Redis 及原理讲解 | 懒人屋 Docker Compose 部署 Redis 及原理讲解 4.4k 字 16 分钟 2019-10-1 ...
- 使用Docker快速部署各类服务
使用Docker快速部署各类服务 一键安装Docker #Centos环境 wget -O- https://gitee.com/iubest/dinstall/raw/master/install. ...
- 基于Docker Compose部署分布式MinIO集群
一.概述 Minio 是一个基于Go语言的对象存储服务.它实现了大部分亚马逊S3云存储服务接口,可以看做是是S3的开源版本,非常适合于存储大容量非结构化的数据,例如图片.视频.日志文件.备份数据和容器 ...
- Docker Compose 部署前后端分离应用
部署前后端分离应用 容器化 Abp 应用 关于 Abp 应用的容器化,其实和普通的 ASP.NET Core 应用差不多,大家可以参考我此前的文章. 唯一需要注意的是:因为 Abp 解决方案中有多个项 ...
随机推荐
- Shell入门01-bash Shell特性
命令和文件自动补齐 [root@hadoop04 ~]# yum -y install bash-completion 命令历史记忆功能 1.上下键 查看历史命令 2.!number 执行histor ...
- 十一次作业——LL(1)文法的判断,递归下降分析程序
1. 文法 G(S): (1)S -> AB (2)A ->Da|ε (3)B -> cC (4)C -> aADC |ε (5)D -> b|ε 验证文法 G(S)是不 ...
- MongoDB一次节点宕机引发的思考(源码剖析)【华为云分享】
目录 简介 日志分析 副本集 如何实现 Failover 心跳的实现 electionTimeout 定时器 业务影响评估 参考链接 声明:本文同步发表于 MongoDB 中文社区,传送门:http: ...
- 华为云Volcano:让企业AI算力像火山一样爆发
欢迎添加华为云小助手微信(微信号:HWCloud002 或 HWCloud003),输入关键字"加群",加入华为云线上技术讨论群:输入关键字"最新活动",获取华 ...
- 【集合系列】- 深入浅出的分析 Set集合
一.摘要 关于 Set 接口,在实际开发中,其实很少用到,但是如果你出去面试,它可能依然是一个绕不开的话题. 言归正传,废话咱们也不多说了,相信使用过 Set 集合类的朋友都知道,Set集合的特点主要 ...
- python笔记01
一.编码: (一)编码分类 ①ascii编码: 占有1个字节,8位,可表示2**8个字符,(py2默认编码方式). ②unicode: 万国码,占有4个字节,32位,可表示2**32个字符. ③utf ...
- 使用echarts去对数据进行图形分析
首先导入js包:echarts.min.js <script type="text/javascript" src="js/echarts.min.js" ...
- 字典dict的深入学习(item() / items() 一致的)
字典Dict的跟进学习: 一. items()方法的遍历:items()方法把字典中每对key和value组成一个元组,并把这些元组放在列表中返回. dict = {"name" ...
- Python深入之python内存管理机制(重点)
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:醍醐三叶 关于python的存储问题, (1)由于python中 ...
- CSS的三种样式,有一种你肯定不知道
前言本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者LFuser 正文 新手注意:如果你学习遇到问题找不到人解答,可以点我进裙 ...