docker+gitlab的安装
docker search gitlabdocker pull docker.io/gitlab/gitlab-ce:11.0.4-ce.0docker run --name='gitlab-ce' -d --hostname 172.16.10.226 --publish 10443:443 --publish 10080:80 --publish 10022:22 --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::11.0.4-ce.0
docker+gitlab的迁移
1.停止gitlab
[root@jenkins ~]# docker stop gitlab
2.在新的机器装好gitlab
docker search gitlabdocker pull docker.io/gitlab/gitlab-ce:11.0.4-ce.0docker run --name='gitlab-ce' -d --hostname 172.16.10.226 --publish 10443:443 --publish 10080:80 --publish 10022:22 --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::11.0.4-ce.0
3.复制打包数据到新挂载的目录(注意属主和属组以及权限,以及gitlab的版本)
//复制数据库数据,或者也可以进入原来的数据库把数据导成sql文件,然后再在新机器上导入,如果权限不能复制就用 tar-zcvf back.tar.gz /home/back打包 再用 tar -zxvf解压 [root@jenkins ~]# scp -a root@old-ip:/srv/gitlab/data/postgresql/data/* /srv/gitlab/data/postgresql/data///复制redis数据[root@jenkins ~]# scp -a root@old-ip:/srv/gitlab/data/redis/dump.rdb /srv/gitlab/data/redis///复制各个分支源码[root@jenkins ~]# scp -a root@old-ip:/srv/gitlab/data/git-data/repositories/* /srv/gitlab/data/git-data/repositories/
4.开放访问白名单
[root@jenkins ~]# vim /srv/gitlab/config/gitlab.rbgitlab_rails['rack_attack_git_basic_auth'] = { 'enabled' => true, 'ip_whitelist' => ["127.0.0.1","xxx.xxx.xx.xxx","xxx.xxx.xx.xxx","xxx.xxx.xx.xxx"], 'maxretry' => 10, 'findtime' => 60, 'bantime' => 3600 }//进入容器执行gitlab-ctl reconfigure重新加载配置root@124:/var/opt/gitlab# gitlab-ctl reconfigure
5.以上操作完后应该可以正常访问了