首页主机资讯ubuntu上gitlab如何使用Docker

ubuntu上gitlab如何使用Docker

时间2025-10-02 03:14:03发布访客分类主机资讯浏览684
导读:Ubuntu上使用Docker部署GitLab的完整流程 一、前期准备 1. 安装Docker GitLab容器化部署依赖Docker,首先需在Ubuntu上安装Docker: # 更新系统包 sudo apt update &&a...

Ubuntu上使用Docker部署GitLab的完整流程

一、前期准备

1. 安装Docker

GitLab容器化部署依赖Docker,首先需在Ubuntu上安装Docker:

# 更新系统包
sudo apt update &
    &
     sudo apt upgrade -y
# 安装依赖
sudo apt install -y curl gnupg lsb-release
# 添加Docker官方GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 添加Docker APT仓库
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list >
     /dev/null
# 安装Docker引擎
sudo apt update &
    &
 sudo apt install -y docker-ce docker-ce-cli containerd.io
# 验证Docker安装
sudo docker run hello-world

2. 安装Docker Compose(可选但推荐)

Docker Compose可简化多容器管理,建议安装:

# 下载最新版Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 赋予执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 验证安装
docker-compose --version

二、部署GitLab(两种方式)

方式1:使用docker run命令快速部署

# 拉取GitLab社区版镜像(最新版)
docker pull gitlab/gitlab-ce:latest
# 创建数据持久化目录(宿主机)
sudo mkdir -p /srv/gitlab/{
config,logs,data}
    
# 启动GitLab容器
sudo docker run -d \
  --hostname yourdomain.com \  # 替换为你的域名或IP
  --publish 80:80 \            # Web界面端口
  --publish 443:443 \          # HTTPS端口(可选)
  --publish 22:22 \            # SSH端口
  --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

方式2:使用docker-compose.yml文件管理(推荐)

# 创建项目目录
mkdir -p ~/gitlab &
    &
     cd ~/gitlab
# 创建docker-compose.yml文件
cat <
    <
    EOF >
     docker-compose.yml
version: '3.6'
services:
  gitlab:
    image: gitlab/gitlab-ce:latest
    container_name: gitlab
    restart: always
    ports:
      - '80:80'
      - '443:443'
      - '22:22'
    volumes:
      - './config:/etc/gitlab'
      - './logs:/var/log/gitlab'
      - './data:/var/opt/gitlab'
    shm_size: '256m'  # 共享内存(解决某些环境下的性能问题)
EOF
# 启动GitLab容器
docker-compose up -d

关键说明

  • 数据持久化--volume(或volumes)参数将宿主机目录挂载到容器内,确保数据不会因容器删除而丢失。
  • 端口映射:默认映射80(HTTP)、443(HTTPS)、22(SSH),可根据需求调整(如避免与宿主机已有服务冲突)。
  • 容器名称--name参数指定容器名称(如gitlab),方便后续管理(如启动、停止、查看日志)。

三、初始配置与访问

1. 获取初始root密码

GitLab容器启动后,首次登录需使用默认root用户的初始密码:

# 进入容器
docker exec -it gitlab /bin/bash
# 查看初始密码(若使用docker-compose,路径为./config/initial_root_password)
cat /etc/gitlab/initial_root_password
# 退出容器
exit

2. 访问GitLab Web界面

  • 打开浏览器,输入http://yourdomain.com(或宿主机IP,如http://192.168.1.100)。
  • 首次登录需设置root用户的新密码(密码强度要求较高)。
  • 登录后即可创建项目、用户、组等。

3. 配置外部URL(可选)

若需修改GitLab访问地址(如从IP改为域名),可进入容器修改配置文件:

docker exec -it gitlab /bin/bash
# 编辑GitLab配置文件
vim /etc/gitlab/gitlab.rb
# 找到external_url,取消注释并设置为新地址(如external_url 'http://yourdomain.com')
external_url 'http://yourdomain.com'
# 保存退出(vim中按:wq)
# 重新加载配置
gitlab-ctl reconfigure
gitlab-ctl restart

四、常用管理命令

1. 容器管理

# 查看GitLab容器状态
docker ps -a | grep gitlab
# 启动GitLab容器
docker start gitlab
# 停止GitLab容器
docker stop gitlab
# 重启GitLab容器
docker restart gitlab
# 查看容器日志(排查问题)
docker logs -f gitlab

2. GitLab服务管理(容器内)

# 进入GitLab容器
docker exec -it gitlab /bin/bash
# 查看GitLab服务状态
gitlab-ctl status
# 重启GitLab服务
gitlab-ctl restart
# 重新加载配置
gitlab-ctl reconfigure
# 停止GitLab服务
gitlab-ctl stop

五、注意事项

1. 系统资源要求

GitLab对资源要求较高,建议分配至少4GB内存(最低2GB,但可能导致性能问题),2核CPU50GB以上磁盘空间

2. 防火墙配置

若使用UFW防火墙,需开放相关端口:

sudo ufw allow 80/tcp   # HTTP
sudo ufw allow 443/tcp  # HTTPS
sudo ufw allow 22/tcp   # SSH
sudo ufw reload

3. 数据备份

定期备份GitLab数据(宿主机挂载目录中的configlogsdata文件夹),建议使用rsynctar命令归档:

# 示例:备份到/home/user/gitlab_backup目录
mkdir -p /home/user/gitlab_backup
tar -czvf /home/user/gitlab_backup/gitlab_$(date +%F).tar.gz -C /srv/gitlab ./

4. 生产环境优化

  • HTTPS配置:获取SSL证书(如Let’s Encrypt),修改gitlab.rb中的external_urlhttps://yourdomain.com,并配置SSL证书路径。
  • 高可用性:通过Docker Compose部署多个GitLab节点,配合负载均衡器(如Nginx)实现高可用。
  • 资源限制:在docker-compose.yml中添加mem_limitcpu_shares等参数,限制容器资源使用。

通过以上步骤,即可在Ubuntu上使用Docker快速部署GitLab,并进行基本的管理和维护。如需更高级的配置(如CI/CD、集成LDAP),可参考GitLab官方文档。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: ubuntu上gitlab如何使用Docker
本文地址: https://pptw.com/jishu/716598.html
gitlab ubuntu集群配置方法 gitlab ubuntu集成开发环境搭建

游客 回复需填写必要信息