温馨提示×

Linux版GitLab的容器化部署如何实现

小樊
38
2025-11-30 19:27:52
栏目: 智能运维

在Linux上通过Docker容器化部署GitLab是一个相对简单的过程。以下是详细的步骤指南:

前提条件

  1. 安装Docker:确保你的Linux系统上已经安装了Docker。如果没有安装,可以参考Docker官方文档进行安装。
  2. 获取GitLab镜像:你可以从Docker Hub上拉取GitLab的官方镜像。

步骤

1. 拉取GitLab镜像

打开终端并运行以下命令来拉取GitLab的最新镜像:

docker pull gitlab/gitlab-ce:latest

2. 创建GitLab配置文件

GitLab需要一些配置文件来设置管理员密码、域名等。你可以创建一个目录来存放这些配置文件:

mkdir ~/gitlab-config
cd ~/gitlab-config

然后创建一个名为gitlab.rb的文件,并添加以下内容:

external_url 'http://your-gitlab-domain.com'
gitlab_rails['lfs_enabled'] = true
gitlab_rails['gitlab_shell_ssh_port'] = 2222

http://your-gitlab-domain.com替换为你的GitLab实例的域名或IP地址。

3. 创建Docker容器

使用以下命令来创建并启动GitLab容器:

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的主机名。
  • --publish:将容器的端口映射到主机的端口。
  • --name:为容器指定一个名称。
  • --restart:设置容器在退出时自动重启。
  • --volume:挂载主机目录到容器目录,用于持久化数据。

4. 配置SSL(可选)

为了安全起见,建议为GitLab配置SSL证书。你可以使用Let’s Encrypt来获取免费的SSL证书,并使用Certbot来配置。

首先,安装Certbot和Nginx:

sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx

然后,运行Certbot来获取并配置SSL证书:

sudo certbot --nginx -d your-gitlab-domain.com

按照提示完成配置。

5. 访问GitLab

打开浏览器并访问http://your-gitlab-domain.com,你应该能够看到GitLab的登录页面。使用默认的用户名和密码登录:

  • 用户名:root
  • 密码:在创建容器时,Docker会生成一个初始密码,你可以在终端中找到它:
    docker logs gitlab
    
    查找类似于Default password: your_initial_password的日志信息。

总结

通过以上步骤,你可以在Linux上成功部署一个GitLab容器。根据需要,你可以进一步自定义配置文件和Docker容器设置,以满足特定的需求。

0