原服务器centos7->新服务器debian12
新机器上操作
apt update && sudo apt install -y screen vim wget telnet lrzsz nload iftop htop iotop sysstat tree mlocate unzip git rsync curl ufw openssh-server ca-certificates libssl3 libpq5 #基础命令
curl -fsSL https://packages.gitlab.com/gpg.key | gpg --dearmor -o /usr/share/keyrings/gitlab_gitlab-ce-archive-keyring.gpg
echo 'deb [signed-by=/usr/share/keyrings/gitlab_gitlab-ce-archive-keyring.gpg] https://mirror.nju.edu.cn/gitlab-ce/debian bookworm main
' | tee /etc/apt/sources.list.d/gitlab-ce.list #添加安装源
curl -L https://packages.gitlab.com/runner/gitlab-runner/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/gitlab-runner.gpg
echo 'deb [signed-by=/usr/share/keyrings/gitlab-runner.gpg] https://mirror.nju.edu.cn/gitlab-runner/debian bookworm main
' | sudo tee /etc/apt/sources.list.d/gitlab-runner.list
apt install -y gitlab-ce=17.4.2-ce.0 #安装与原先gitlab相同版本
mkdir -p /var/opt/gitlab/backups/
旧机器上操作
ssh-keygen -R 192.168.28.174 #可选,清除保存密钥
rsync -avz /etc/gitlab/ [email protected]:/etc/gitlab/ #同步配置
rsync -avz /var/opt/gitlab/backups/1744709563_2025_04_15_17.4.2_gitlab_backup.tar [email protected]:/var/opt/gitlab/backups/ #复制数据
新机器上操作,生成相关配置
gitlab-ctl reconfigure
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-rake gitlab:backup:restore BACKUP=1744709563_2025_04_15_17.4.2 #恢复备份
gitlab-ctl restart
# 清理旧的缓存和临时文件
gitlab-rake tmp:clear
gitlab-rake cache:clear
gitlab升级
https://gitlab-com.gitlab.io/support/toolbox/upgrade-path #确定升级路径
apt-cache madison gitlab-ce | grep '17.8.' #查看版本,可选
apt install gitlab-ce=17.8.7-ce.0 #升级
apt install -y gitlab-ce #升级到最新版