docker 安装与配置 gitlab

前提条件

  • Docker :确保你已经安装了 Docker 和 Docker Compose。可以通过以下命令来检查是否安装 Docker:

    bash 复制代码
    docker --version

1. 拉取 GitLab Docker 镜像

首先,我们需要拉取 GitLab 的官方 Docker 镜像。可以使用以下命令来获取 GitLab CE(社区版)镜像:

bash 复制代码
docker pull gitlab/gitlab-ce

如果你想要安装 GitLab EE(企业版),则需要:

bash 复制代码
docker pull gitlab/gitlab-ee

2. 运行 GitLab 容器

接下来,可以通过运行以下命令来启动 GitLab 实例。为了确保数据持久化,我们需要将宿主机的目录挂载到容器中,以便 GitLab 的配置和数据能够在容器重启后保持。

bash 复制代码
docker run --detach \
  --hostname gitlab.example.com \
  --publish 443:443 --publish 80:80 --publish 22:22 \
  --name gitlab \
  --restart always \
  --volume /srv/gitlab/config:/etc/gitlab \
  --volume /srv/gitlab/logs:/var/log/gitlab \
  --volume /srv/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

参数说明:

  • --hostname gitlab.example.com: 设置 GitLab 的主机名,可以根据需要更改。
  • --publish 443:443 --publish 80:80 --publish 22:22: 将容器的端口 443(HTTPS)、80(HTTP)和 22(SSH)映射到宿主机。
  • --name gitlab: 设置容器名称为 gitlab
  • --restart always: 设置容器在 Docker 重启时自动重启。
  • --volume /srv/gitlab/config:/etc/gitlab: 挂载配置文件目录。
  • --volume /srv/gitlab/logs:/var/log/gitlab: 挂载日志文件目录。
  • --volume /srv/gitlab/data:/var/opt/gitlab: 挂载数据目录。

确保 /srv/gitlab 目录存在,如果没有,可以先创建:

bash 复制代码
sudo mkdir -p /srv/gitlab/config /srv/gitlab/logs /srv/gitlab/data

3. 访问 GitLab

安装完成后,GitLab 应该可以通过浏览器访问了。根据上述配置,可以通过以下地址访问 GitLab:

  • HTTP: http://<your-server-ip>
  • HTTPS: https://<your-server-ip>

默认情况下,GitLab 的管理员账户用户名是 root,密码在第一次访问时会要求设置。

4. 配置 GitLab(可选)

GitLab 在第一次启动时会初始化配置并生成相应的配置文件。可以在 /srv/gitlab/config/gitlab.rb 文件中进一步配置 GitLab 的设置。常见的设置包括:

  • 更改外部 URL (external_url),
  • 配置 SMTP 邮件服务器,
  • 配置备份等。

例如,修改外部 URL:

bash 复制代码
external_url 'http://gitlab.example.com'

修改后,需要重新配置 GitLab 来使更改生效:

bash 复制代码
docker exec -it gitlab gitlab-ctl reconfigure

5. 获取 GitLab 容器的日志(如果有问题)

如果你遇到问题,可以通过以下命令查看 GitLab 容器的日志:

bash 复制代码
docker logs -f gitlab

6. 停止和启动 GitLab

如果你需要停止或启动 GitLab 容器,可以使用以下命令:

  • 停止容器:

    bash 复制代码
    docker stop gitlab
  • 启动容器:

    bash 复制代码
    docker start gitlab

7. 升级 GitLab

要升级 GitLab 版本,只需拉取新版本的镜像并重新启动容器:

bash 复制代码
docker pull gitlab/gitlab-ce:latest
docker stop gitlab
docker rm gitlab
docker run --detach ... # 使用之前的 docker run 命令重新启动容器

以上步骤应该帮助在 Docker 中安装并运行 GitLab。

相关推荐
计算机小手1 小时前
推荐一个 GitHub 开源项目信息卡片生成工具,支持Docker快速部署和API调用
经验分享·docker·github·开源软件
饭来_2 小时前
通过 SSH 远程连接 docker 容器
vscode·docker·ssh
kura_tsuki4 小时前
[Docker集群] Docker 容器入门
运维·docker·容器
开始学AI4 小时前
【Docker技术】docker-compose.yml与Dockerfile解析
java·docker·eureka
一水鉴天17 小时前
整体设计 逻辑系统程序 之18 Source 容器(Docker)承载 C/P/D 三式的完整设计与双闭环验证 之2
docker·架构·认知科学·公共逻辑
飞快的蜗牛18 小时前
利用linux系统自带的cron 定时备份数据库,不需要写代码了
java·docker
香吧香20 小时前
Docker Registry 使用总结
docker
赵渝强老师20 小时前
【赵渝强老师】Docker容器的资源管理机制
linux·docker·容器·kubernetes
haicome21 小时前
deepseek部署
docker·ragflow·deepseek 部署
乄bluefox1 天前
保姆级docker部署nacos集群
java·docker·容器