Debian系统中GitLab版本升级方法
sudo gitlab-rake gitlab:backup:create(默认备份路径为/var/opt/gitlab/backups)。sudo apt update && sudo apt upgrade -y。APT是Debian系统默认的包管理工具,适用于通过GitLab官方仓库安装的GitLab(gitlab-ce或gitlab-ee)。
sudo apt update。gitlab-ce为社区版,gitlab-ee为企业版:sudo apt upgrade gitlab-ce 或 sudo apt upgrade gitlab-ee。sudo gitlab-ctl reconfigure(此命令会调整配置文件并初始化必要组件)。sudo gitlab-ctl restart(或针对GitLab 12.5+版本使用sudo systemctl restart gitlab-runsvdir)。sudo gitlab-rake gitlab:env:info(查看“GitLab version”字段)或访问Web界面查看版本号。若需升级到官方仓库未提供的版本(如LTS版本),可通过手动下载.deb包完成升级。
sudo apt purge gitlab-ce gitlab-ce-cli gitlab-rails gitlab-shell,然后删除残留目录:sudo rm -rf /var/opt/gitlab /etc/gitlab。.deb包(如gitlab-ce_17.3.3-ce.0_amd64.deb),使用wget下载:wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/12/gitlab-ce_17.3.3-ce.0_amd64.deb/download.deb。dpkg安装下载的包,并自动解决依赖问题:sudo dpkg -i /path/to/downloaded.deb,若出现依赖错误,运行sudo apt install -f修复。若GitLab通过Docker容器运行,升级流程主要涉及镜像拉取与容器重建。
/srv/gitlab/config、/srv/gitlab/data)中的数据已备份。docker pull gitlab/gitlab-ce:latest。docker stop gitlab && docker rm gitlab。docker run --name gitlab -d -p 80:80 -p 443:443 -p 22:22 --volume /srv/gitlab/config:/etc/gitlab --volume /srv/gitlab/logs:/var/log/gitlab --volume /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest。docker exec gitlab gitlab-rake gitlab:env:info确认版本。sudo apt install -f可自动安装缺失的依赖。/etc/gitlab/gitlab.rb中的配置(如external_url),确保与新版本兼容。sudo gitlab-rake gitlab:storage:migrate_to_hashed迁移存储库,此操作耗时较长且需停机。