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。

相关推荐
.冰块.17 分钟前
Docker 镜像深度学习:分层 Copy‑on‑Write、Dockerfile 语法、Harbor 私有仓库实操
docker·容器·harbor·镜像·dockerfile·images
szephyr28 分钟前
Docker 镜像瘦身实战:从 1.2GB 压到 85MB 的完整过程
docker·容器·部署·多阶段构建·镜像优化
溪语流沙3 小时前
Django + Vue电商项目第001讲:开篇|注册登录加增删改查,那不是电商
redis·python·mysql·docker·typescript·django·vue
一直在努力学习的菜鸟5 小时前
Docker Info 详细解析(Rocky Linux 8.10 / Docker 29.8.1)
docker
AlfredZhao5 小时前
Docker 删除 none 镜像:一次真实的清理记录
docker
bosins15 小时前
WSL2 启动即崩溃?调整超时参数解决 Docker 阻塞问题
linux·docker·wsl
一直在努力学习的菜鸟17 小时前
Docker 完整知识体系图
docker
java_logo20 小时前
Docker 部署 Gotenberg 完整教程:Compose 搭建文档转 PDF API
docker·pdf·chromium·libreoffice·文档转换·轩辕镜像·gotenberg
闲云野鹤在人间21 小时前
docker 入门 | 第7章 容器监控 和 第8章 容器日志 详解
运维·docker·容器·架构·云计算
Experience-摆渡21 小时前
开源RAG知识库WeKnora深度调研:让知识自己长成体系
爬虫·docker·开源·rag