Docker方式安装GitLab

Docker方式安装GitLab

GitLab 提供了一个官方 Docker 镜像,该镜像包含了 GitLab 所需的所有服务,并以单个容器的形式运行。

GitLab 官方 Docker 镜像地址:

注意事项

  • GitLab Docker 镜像默认不包含邮件传输代理 (MTA),如 Postfix 或 Sendmail。推荐使用独立容器部署 MTA,或者直接在 GitLab 容器中安装 MTA,尽管这样会增加维护难度。

先决条件

确保您的环境中已经安装了 Docker。若未安装,请参考 Docker 官方安装文档 进行安装。

配置 GitLab 数据目录

在安装之前,需要配置一个目录来存储 GitLab 配置、日志和数据文件。建议设置一个环境变量 $GITLAB_HOME,指向该目录。确保该目录存在并且权限正确。

  • 对于 Linux 用户,设置为 /srv/gitlab

    export GITLAB_HOME=/srv/gitlab
    
  • 对于 macOS 用户,设置为 $HOME/gitlab

    export GITLAB_HOME=$HOME/gitlab
    

在这里插入图片描述

确保将 $GITLAB_HOME 环境变量添加到您的 shell 配置文件中,以便在后续会话中生效:

GitLab 使用挂载卷来存储数据,下面是各个卷的说明:

本地路径容器路径用途
$GITLAB_HOME/data/var/opt/gitlab存储 GitLab 数据
$GITLAB_HOME/logs/var/log/gitlab存储 GitLab 日志
$GITLAB_HOME/config/etc/gitlab存储 GitLab 配置文件

安装 GitLab

GitLab Docker 镜像可以通过多种方式安装,包括直接使用 Docker Engine、Docker Compose 或 Docker Swarm。下面是使用 Docker Engine 安装 GitLab 的步骤。

使用 Docker Engine 安装 GitLab

  1. 设置好 $GITLAB_HOME 环境变量后,运行以下命令启动 GitLab 容器:

    sudo docker run --detach \
      --hostname gitlab.example.com \
      --publish 443:443 --publish 80:80 --publish 22:22 \
      --name gitlab \
      --restart always \
      --volume $GITLAB_HOME/config:/etc/gitlab \
      --volume $GITLAB_HOME/logs:/var/log/gitlab \
      --volume $GITLAB_HOME/data:/var/opt/gitlab \
      --shm-size 256m \
      gitlab/gitlab-ee:latest
    

    该命令会:

    • 下载并启动 GitLab 容器。
    • 映射 GitLab 所需的端口:80(HTTP)、443(HTTPS)、22(SSH)。
    • 使用 $GITLAB_HOME 目录挂载容器的配置、日志和数据。
    • 设置容器自动重启。
  2. 如果您的系统使用 SELinux,您需要加上 :Z 标记来调整权限:

    bash复制代码sudo docker run --detach \
      --hostname gitlab.example.com \
      --publish 443:443 --publish 80:80 --publish 22:22 \
      --name gitlab \
      --restart always \
      --volume $GITLAB_HOME/config:/etc/gitlab:Z \
      --volume $GITLAB_HOME/logs:/var/log/gitlab:Z \
      --volume $GITLAB_HOME/data:/var/opt/gitlab:Z \
      --shm-size 256m \
      gitlab/gitlab-ee:latest
    

    这确保了 Docker 容器能在挂载的卷中创建配置文件。

查看安装日志

初始化过程可能需要一些时间。您可以使用以下命令查看容器的实时日志:

sudo docker logs -f gitlab

获取 GitLab 初始密码

容器启动后,您可以通过以下命令获取 GitLab root 用户的初始密码:

sudo docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

注意:该密码在容器启动 24 小时后会自动被删除。建议尽早登录并修改密码。

访问 GitLab

安装完成后,您可以通过浏览器访问 GitLab。例如,若您使用了 gitlab.example.com 作为主机名,直接访问 http://gitlab.example.com 即可。

如果您在 macOS 上使用 Boot2Docker,可以访问 http://192.168.59.103

管理员登录后设置中文

在这里插入图片描述

总结

通过以上步骤,您可以在 Docker 容器中成功部署 GitLab。注意,GitLab 镜像并不包含邮件传输代理 (MTA),因此需要额外配置邮件发送功能。另外,确保在 Docker 容器启动后及时获取初始密码并进行安全设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

博刻

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值