gitlab迁移

132 阅读1分钟

注意事项:

  • 1、必须在当前用户执行,GITLAB_HOME有效变量
  • 2、gitlab版本一致

一、gitlab的docker部署流程

# 1、设置环境变量
export GITLAB_HOME=/srv/gitlab

# 2、运行镜像

# 间隔格式若有问题,参照:https://docs.gitlab.com/ee/install/docker.html
sudo docker run --detach \
 --hostname emr.my.com \
 --publish 443:443 --publish 80:80 --publish 2222:22 \
 --name gitlab \
 --restart always \
 --volume $GITLAB_HOME/config:/etc/gitlab \
 --volume $GITLAB_HOME/logs:/var/log/gitlab \
 --volume $GITLAB_HOME/data:/var/opt/gitlab \
 gitlab/gitlab-ee:14.1.1-ee.0


# 3、查看运行进度即log信息
sudo docker logs -f gitlab

# 4、web端第一次登录,若是没有出现root的密码设置;通过以下方式进入内核和数据库设置超级管理员(root)密码
sudo docker exec -it gitlab /bin/bash

gitlab-rails console -e production
user = User.where(id: 1).first
user.password ='hhhhhhhhhh'
user.password_confirmation ='hhhhhhhhhh'
user.save!

# 5、关闭和删除(不需要执行)
sudo docker stop gitlab
sudo docker rm gitlab

二、原来的gitlab备份

sudo docker exec -t gitlab gitlab-backup create

备份文件保存在***/srv/gitlab/data/backups***

三、数据恢复


# 关闭链接
sudo docker exec -it gitlab gitlab-ctl stop unicorn
sudo docker exec -it gitlab gitlab-ctl stop puma
sudo docker exec -it gitlab gitlab-ctl stop sidekiq
sudo docker exec -it gitlab gitlab-ctl status
sudo docker exec -it gitlab gitlab-backup restore
   
# 备份文件:上传或者下载、修改权限
sudo cp 1640676522_2021_12_28_14.1.1-ee_gitlab_backup.tar /srv/gitlab/data/backups/
sudo chmod 755 /srv/gitlab/data/backups/1640676522_2021_12_28_14.1.1-ee_gitlab_backup.tar
sudo docker exec -it gitlab gitlab-backup restore BACKUP=1640676522_2021_12_28_14.1.1-ee       (_gitlab_backup.tar结尾)
                                                                                                
# 重启                                                                                             
sudo docker restart gitlab

四、本地异常

由于变更了域名的机器,在host解析时会出现异常,删除.ssh/known_hosts中的相关信息即可

测试如下

 ssh -T git@emr.my.com