Docker 部署 GitLab(Mac OS X)

Posted mickjoust

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 部署 GitLab(Mac OS X)相关的知识,希望对你有一定的参考价值。

前言

作为程序员,虽然平时更关系业务的逻辑实现、架构设计,但基础的DevOps运维能力还是要具备,不然,当开始源码研究分析时,会在安装时就失去了继续下去的兴趣。

1.安装Docker

安装参见文章:Mac OS X 极速安装与配置Docker

2.安装GitLab

docker pull gitlab/gitlab-ce

3.运行GitLab

创建数据存放文件夹,并设置环境变量。

mkdir -p `pwd`/data/gitlab
GITLAB_HOME=`pwd`/data/gitlab

运行容器。

docker run -d \\
    --hostname gitlab \\
    -p 30001:22 \\
    -p 30000:80 \\
    -p 30002:443 \\
    --name gitlablocal \\
    --restart always \\
    --volume $GITLAB_HOME/config:/etc/gitlab \\
    --volume $GITLAB_HOME/logs:/var/log/gitlab \\
    --volume $GITLAB_HOME/data:/var/opt/gitlab \\
    gitlab/gitlab-ce

参数说明:

  • -d : 后台进程方式启动
  • –p 30001:22 :分别使用30000 ~ 30002 端口映射端口80,22,443
  • –hostname gitlab :发布域名叫gitlab,还需要配置域名绑定
  • –restart always :电脑启动时自动启动
  • –volume $GITLAB_HOME/config:/etc/gitlab :挂接卷,映射gitlab的配置到本地文件夹
  • –volume $GITLAB_HOME/logs:/var/log/gitlab :挂接卷,映射gitlab的日志到本地文件夹
  • –volume $GITLAB_HOME/data:/var/opt/gitlab :挂接卷,映射gitlab的数据到本地文件夹

这里还要注意,为了让电脑80端口不被占用,使用30000端口号映射虚拟容器的80端口转换,需要修改容器的配置文件。

GitLab的配置存储在/etc/gitlab/gitlab.rb文件中。有两种修改方法:

一种是:登录容器,修改配置,并重启生效。

docker exec -it gitlablocal bash
vi /etc/gitlab/gitlab.rb
# 找到nginx监听端口行,为nil,打开注释,修改为80,保存
nginx['listen_port'] = 80
exit
docker restart gitlocal 

另一种是,直接编辑挂接卷的本地文件 ,修改配置,并重启生效。

vi $GITLAB_HOME/config/gitlab.rb
docker restart gitlocal 

5.使用GitLab

浏览器输入localhost:30000,运行成功。

注册一个账号,就可以使用了。

异常解决

  • 异常1:docker无法运行镜像,报错:docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.See ‘docker run --help’. 如下图:

    原因解析: docker安装出现异常,查了很多解决办法并不好使,可能是部分文件丢失引起的,**强烈建议重装。**安装参见文章:Mac OS X 极速安装与配置Docker

以上是关于Docker 部署 GitLab(Mac OS X)的主要内容,如果未能解决你的问题,请参考以下文章

无法连接到 Mac OS X 上的 Docker 守护程序

如何在Mac OS X上部署开发环境

通过docker安装Gitlab

Install Docker on Mac OS X

Mac OS X 极速安装与配置Docker

Mac OS X sudo docker 无法连接到 Docker 守护程序。 docker 守护进程是不是在此主机上运行?