docker+gitlab的安装
docker search gitlab docker pull docker.io/gitlab/gitlab-ce docker run --name=: --publish : --publish : --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:latest
docker+gitlab的迁移
1.停止gitlab
[root@jenkins ~]# docker stop gitlab
2.在新的机器装好gitlab
docker search gitlab docker pull docker.io/gitlab/gitlab-ce docker 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:latest
3.复制打包数据到新挂载的目录(注意属主和属组以及权限)
//复制数据库数据,或者也可以进入原来的数据库把数据导成sql文件,然后再在新机器上导入 [root@jenkins ~]# cp -a root@oldip/srv/gitlab/data/postgresql/data/* /srv/gitlab/data/postgresql/data/ //复制redis数据 [root@jenkins ~]# cp -a root@oldip/srv/gitlab/data/redis/dump.rdb /srv/gitlab/data/redis/ //复制各个分支源码 [root@jenkins ~]# cp -a root@oldip/srv/gitlab/data/git-data/repositories/* /srv/gitlab/data/git-data/repositories/
4.开放访问白名单
[root@jenkins ~]# vim /srv/gitlab/config/gitlab.rb gitlab_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"], , , } //进入容器执行gitlab-ctl reconfigure重新加载配置 root@:/var/opt/gitlab# gitlab-ctl reconfigure
5.以上操作完后应该可以正常访问了