使用docker安装gitlab

准备工作

有兴趣的可以访问docker镜像首页来看目前最棒的gitlab docker镜像的官方使用指南。
docker pull sameersbn/gitlab:7.11.2
docker pull sameersbn/postgresql:9.4
docker pull sameersbn/redis:latest
上述的版本大家可以去上面的地址查找最新的版本。
创建数据文件夹, 位置随意,大家记下即可

mkdir /home/username/opt/gitlab/data
mkdir /home/username/opt/postgresql/data

mkdir /home/gds/opt/gitlab/data
mkdir /home/gds/opt/postgresql/data
启动postgresql

docker run –name=postgresql -d \
-e ‘DB_NAME=gitlabhq_production’ -e ‘DB_USER=gitlab’ -e ‘DB_PASS=password’ \
-v /home/username/opt/postgresql/data:/var/lib/postgresql \
sameersbn/postgresql:9.4
docker run -d -e ‘DB_NAME=gitlab’ -e ‘DB_USER=gitlab’ -e ‘DB_PASS=000000’ -v /home/gds/opt/postgresql/data:/var/lib/postgresql sameersbn/postgresql:9.4-2
上述的位置与数据文件夹保持一致。
启动redis

docker run –name=redis -d sameersbn/redis:latest
docker run -d sameersbn/redis:latest
启动gitlab

docker run –name=’gitlab’ -d \
–link redis:redisio \
-v /home/username/opt/gitlab/data:/home/git/data \
-p 10022:22 -p 10080:80 \
-e ‘GITLAB_PORT=10080’ \
-e ‘GITLAB_SSH_PORT=10022’ \
–link postgresql:postgresql \
-e ‘[email protected]’ \
-e ‘GITLAB_BACKUPS=daily’ \
-e ‘GITLAB_HOST=gitlab.daocloud.io’ \
-e ‘GITLAB_SIGNUP=true’ \
-e ‘GITLAB_GRAVATAR_ENABLED=false’ \
sameersbn/gitlab:7.11.2
docker run –name=’gitlab’ -d \
–link stoic_swanson:redisio \
-v /home/gds/opt/gitlab/data:/home/git/data \
-p 10022:22 -p 10080:80 \
-e ‘GITLAB_PORT=10080’ \
-e ‘GITLAB_SSH_PORT=10022’ \
–link compassionate_spence:postgresql \
-e ‘[email protected]’ \
-e ‘GITLAB_BACKUPS=daily’ \
-e ‘GITLAB_HOST=gitlab.daocloud.io’ \
-e ‘GITLAB_SIGNUP=true’ \
-e ‘GITLAB_GRAVATAR_ENABLED=false’ \
sameersbn/gitlab:7.13.1
上述的位置与数据文件夹保持一致,更多参数请见 这里 。
上述设置会每天自动进行备份,建议开启。

root,5iveL!fe
yang729729
手动备份

docker stop gitlab
docker rm gitlab
docker run –name=’gitlab’ -it –rm \
你的设置
sameersbn/gitlab:7.11.2 app:rake gitlab:backup:create
这样就会在/home/username/opt/gitlab/data/backups下面创建备份,备份的所属者请看下ls -la /home/username/opt/gitlab/data/backups下面的文件,迁移的时候有用,另外迁移的话,也只需要保留这个备份出来的文件即可。
恢复备份

确保你的gitlab的版本跟备份的版本一致。
docker run –name=’gitlab’ -it –rm \
你的设置
sameersbn/gitlab:7.11.2 app:rake gitlab:backup:restore
这样就能确保迁移之后的版本跟迁移之前的版本一样了。
迁移

这个时候你只要在目标机器上做完准备工作之后,启动一次gitlab,然后把之前备份的文件放到/home/username/opt/gitlab/data/backups下面,确保备份文件的权限问题之后恢复备份即可
升级

先备份,防止升级后出现问题,然后docker pull新的版本之后,直接run就可以了。
最后讲一下,如何从你的库来源完全镜像到gitlab吧

git clone –mirror https://github.com/exampleuser/repository-to-mirror.git
git remote set-url –push origin https://github.com/exampleuser/mirrored
git fetch -p origin
git push –mirror
这个能保证你的来源在被提交的时候,gitlab能保持完全一致。最后只要指定时间关闭来源的提交之后久就可以无缝切换到gitlab了。

你可能感兴趣的:(devops,spring,Cloud)