了解到docker的优点,搭建快,运行要求资源低,最重要的是实现的功能和效果都能达到预期,于是决定使用docker来搭建gitlab服务器。

效果图如下:

系统环境:CentOS Linux release 7.1.1503 (Core)

git版本:/gitlab/gitlab-ce

一、安装和启动docker

安装:yum -y install docker

启动:systemctl start docker

开机启动:systemctl enable docker

二、拉取镜像文件

docker images  #查看镜像文件,没拉取之前是没有任何镜像的

docker search gitlab #搜索镜像

本文将下载第一个镜像。

docker pull docker.io/gitlab/gitlab-ce  #下载镜像,下载完成后

docker images #查看镜像文件

三、运行gitlab容器

docker run --name='gitlab-ce' -d -p 10022:22 -p 80:80 --restart always --volume /opt/gitlab/config:/etc/gitlab --volume /opt/gitlab/logs:/var/log/gitlab --volume /opt/gitlab/data:/var/opt/gitlab/ gitlab/gitlab-ce

注释:

  --name="nginx-lb": 为容器指定一个名称;

   -d: 后台运行容器,并返回容器ID;

   -p: 指定映射端口号,本文是将ssh的22端口映射为10022端口,web访问的80端口映射为80端口

   -volume: 用来指定挂载目录,将config配置目录、data数据目录、logs日志目录挂载到宿主机上,以后备份方便

  最后就是下载的容器名称

这样就可以通过docker容器来运行一个gitlab服务器。

docker ps #查看运行的容器

docker stop 名称或者ID号 #关闭容器

docker start 名称或者ID号 #开启容器

docker rmi  ID号 #删除容器

四、配置gitlab服务器的访问地址及邮箱

当运行gitlab服务器后,会在映射目录/opt/gitlab/config/目录下生成一个配置文件gitlab.rb

编辑gitlab.rb文件

vim /opt/gitlab/config/gitlab.rb
# 配置http协议所使用的访问地址
external_url 'http://172.16.81.81' # 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '172.16.81.81'
gitlab_rails['gitlab_shell_ssh_port'] = 10022

配置邮件

vim /opt/gitlab/config/gitlab.rb
# 这里以新浪的邮箱为例配置smtp服务器
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.xxx.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "name4mail"
gitlab_rails['smtp_password'] = "passwd4mail"
gitlab_rails['smtp_domain'] = "xxx.com"
gitlab_rails['smtp_authentication'] = :login
gitlab_rails['smtp_enable_starttls_auto'] = true # 还有个需要注意的地方是指定发送邮件所用的邮箱,这个要和上面配置的邮箱一致
gitlab_rails['gitlab_email_from'] = 'name4mail@xxx.com'

设置网络IP

# 设置网络IP
pipework br0 gitlab-ce 172.16.81.81/24@172.16.81.1

修改gitlab.rb配置文件之后,重启容器。

# 进入容器
docker exec -it gitlab-ce bash # 重启gitlab
gitlab-ctl reconfigure

gitlab上的项目生成的访问地址如下

# HTTP
http://172.16.81.81/root/test-docker-gitlab.git
# SSH
ssh://git@172.16.81.81:10022/root/test-docker-gitlab.git

五、web访问验证

初始页面是设置密码,设置完成后就是一开始看到的效果。

初始用户名:root

Centos7使用docker搭建gitlab服务器的更多相关文章

  1. docker搭建gitlab服务器(Centos7)

    系统环境:CentOS Linux release 7.6.1810 (Core) git版本:gitlab/gitlab-ce 一.安装和启动docker 见HTTPRUNNERMANAGER安装部 ...

  2. 基于Docker搭建GitLab服务器

    运行环境:CentOS 7.4 一.安装Docker Docker安装可以参照runoob教程(http://www.runoob.com/docker/centos-docker-install.h ...

  3. 使用docker搭建gitlab服务器

    简单记录Docker的使用和GitLab的搭建 Docker基础篇 没有sudo权限 安装docker 基础命令 docker安装mysql和配置 Dockerfile常用命令 制作镜像 发布镜像 容 ...

  4. 使用docker搭建gitlab 服务器

    本次使用的docker版本为 1.首先需要安装docker. 2.启动docker后,service docker start   3.拉取镜像  docker pull gitlab/gitlab- ...

  5. Docker搭建Gitlab服务器

    1.使用docker搜索gitlab镜像 docker search gitlab 2.下载镜像: docker pull docker.io/gitlab/gitlab-ce 3.查看docker镜 ...

  6. CentOS7 搭建gitlab服务器

    本文介绍如何在CentOS7.2上搭建Gitlab服务器,并简单介绍如何使用. Preface 使用的是CentOS7.2的操作系统,安装当前最新版Gitlab服务器,下载地址:清华大学开源软件镜像站 ...

  7. Ubuntu Docker搭建GitLab以及常规配置使用

    安装启动实例 1.首先创建一个目录用于存放配置 sudo docker pull docker.io/gitlab/gitlab-ce sudo mkdir -p /root/docker/gitla ...

  8. [转帖]知乎专栏:正确使用 Docker 搭建 GitLab 只要半分钟

    正确使用 Docker 搭建 GitLab 只要半分钟 https://zhuanlan.zhihu.com/p/49499229 很多程序员在内网搭建 gitlab 都搭建的坑坑洼洼,不支持 htt ...

  9. 搭建GitLab服务器

    前言 每一个开发工作者无非身处2中开发环境:1.开源环境  2.闭源开发环境,若你身处闭源环境或对自己代码安全性要求较高,搭建和使用自己GitLab服务器是必不可少的环节. 可以通过各种方式搭建自己的 ...

随机推荐

  1. 【MySQL】初识数据库及简单操作

    一.数据库概述 1.1 什么是数据(Data) 描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字.图片,图像.声音.语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机. ...

  2. 从信息论的角度分析DNN的工作原理

    在前面的文章里,使用神经网络的任意函数拟合性结合了一点黎曼几何的坐标系变化的知识,解释了神经网络是怎样根据输入x,计算出每个分类下的能量Ei(x)的,再之后使用能量模型推算出了概率,从而展示了理论上可 ...

  3. es6数值

    ES6在Number对象上,新提供了Number.isFinite()和Number.isNaN()两个方法,用来检查Infinite和NaN这两个特殊值. Number.isFinite(15); ...

  4. SQL视图命名规则:一般以V_xxx_xxxxxx

  5. python3 tkinter添加图片和文本

    在前面一篇文章基础上,使用tkinter添加图片和文本.在开始之前,我们需要安装Pillow图片库. 一.Pillow的安装 1.方法一:需要下载exe文件,根据下面图片下载和安装       下载完 ...

  6. Jmeter监控服务器-CPU,Memory,Disk,Network性能指标

    本文主要说一下如何通过JMeter插件来监控服务器CPU.内存.磁盘.网络等相关资源. 一.下载 首先进入网址https://jmeter-plugins.org/downloads/old/  下载 ...

  7. 解决mysql for docker容器报错:Authentication plugin 'caching_sha2_password' cannot be loaded

    为图方便,懒得在mac上安装mysql了,一个是管理不方便,第二个是为了方便多机器同步开发环境.就使用docker安装了. 拉取mysql镜像 docker pull mysql 运行mysql实例 ...

  8. mac os ssh远程链接centos提示证书错误解决方法

    下面是错误提示 IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you ...

  9. TCP的三次握手 与 四次挥手

    TCP的连接建立是一个三次握手过程,目的是为了通信双方确认开始序号,以便后续通信的有序进行 主要步骤: 服务器一定处于Listen状态,否则客户端发过来的连接会被拒绝.注:服务器和客户端的角色是相对的 ...

  10. 把dotx模板的样式应用到当前文档中(不应用dotx的其他东西)

    Word.Document doc = this.Application.ActiveDocument; //模板样式添加到当前文档 doc.CopyStylesFromTemplate(@" ...