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。

相关推荐
Patrick_Wilson4 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy5 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭5 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩6 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵6 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
WangMingHua1116 天前
LM Studio Docker 部署——本地大模型一键启动
docker
曲幽8 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate
武子康9 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
Alsn8612 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
程序员老赵12 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops