注意事项:
- 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