您的位置:首页 > 运维架构 > Docker

docker安装gitlab,redis,postgresql搭建代码托管环境

2017-05-24 21:14 866 查看

配置加速器

可以参考下面链接去配置一下docker加速器(不过还是推荐用aliyun的)
http://blog.csdn.net/gzhouc/article/details/65934897

拉取镜像

docker pull sameersbn/gitlab:9.1.4

docker pull sameersbn/postgresql:9.6-2

docker pull sameersbn/redis:latest

上述的版本大家可以去查找最新的版本。

创建数据文件夹, 位置随意,大家记下即可

mkdir /home/YOUDIR/opt/gitlab/data
mkdir /home/YOUDIR/opt/postgresql/data

启动postgresql

docker run --name=postgresql -d \

-e 'DB_NAME=gitlabhq_production' -e 'DB_USER=gitlab' -e 'DB_PASS=password' \

-v /home/YOUDIR/opt/postgresql/data:/var/lib/postgresql \

sameersbn/postgresql:9.6-2

上述的位置与数据文件夹保持一致。

启动redis

docker run --name=redis -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 'GITLAB_EMAIL=guanzh1@lenovo.com' \

-e 'GITLAB_BACKUPS=daily' \

-e 'GITLAB_HOST=10.100.208.12' \

-e 'GITLAB_SIGNUP=true' \

-e 'GITLAB_GRAVATAR_ENABLED=false' \

sameersbn/gitlab:9.1.4

上述的位置与数据文件夹保持一致,更多参数请见这里https://github.com/sameersbn/docker-gitlab#postgresql 。

上述设置会每天自动进行备份,建议开启。

注:gitlab安装完成后默认用户名为root, 默认的密码如下:



手动备份

docker stop gitlab

docker rm gitlab

docker run --name='gitlab' -it --rm \

你的设置

sameersbn/gitlab:9.1.4 app:rake gitlab:backup:create

这样就会在/home/YOUDIR/opt/gitlab/data/backups下面创建备份,备份的所属者请看下ls -la /home/YOUDIR/opt/gitlab/data/backups下面的文件,迁移的时候有用,另外迁移的话,也只需要保留这个备份出来的文件即可。

恢复备份

确保你的gitlab的版本跟备份的版本一致。

docker run --name='gitlab' -it --rm \

你的设置

sameersbn/gitlab:9.1.4 app:rake gitlab:backup:restore

这样就能确保迁移之后的版本跟迁移之前的版本一样了。

迁移

这个时候你只要在目标机器上做完准备工作之后,启动一次gitlab,然后把之前备份的文件放到/home/YOUDIR/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了。

REF

https://github.com/sameersbn/docker-gitlab#available-configuration-parameters
https://www.aswifter.com/2015/06/14/gitlab-with-docker/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐