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

利用docker搭建gitlab;实现git-ci 集成自动化部署

2018-03-28 12:19 1466 查看
我们这边继续之前的问题; 打算模拟生产中的自动化部署.



这套技术;其实利用的是gitlab CI 的持续集成 ; 关于持续集成这边我就不多讲了; 大家可以看我推荐的微博: GitLab CI持续集成配置方案

这边我来讲一下; 如何用docker 在linux 上搭建一个gitlab 仓库.

第一步,安装 postgresql container

docker run --name gitlab-postgresql -d \
--env 'DB_NAME=gitlabhq_production' \
--env 'DB_USER=gitlab' --env 'DB_PASS=password' \
--volume /srv/docker/gitlab/postgresql:/var/lib/postgresql \
sameersbn/postgresql:9.4-12


2.第二部 , 安装 redis container

docker run --name gitlab-redis -d \
--volume /srv/docker/gitlab/redis:/var/lib/redis \
sameersbn/redis:latest


3.安装gitlab container

docker run --name gitlab -d \
--link gitlab-postgresql:postgresql --link gitlab-redis:redisio \
--publish 10022:22 --publish 10080:80 \
--env 'GITLAB_PORT=10080' --env 'GITLAB_SSH_PORT=10022' \
--env 'GITLAB_SECRETS_DB_KEY_BASE=long-and-random-alpha-numeric-string' \
--volume /srv/docker/gitlab/gitlab:/home/git/data \
gitlab/gitlab-ce:latest


关于安装中使用的这些指令 ; 我这边就不详细讲了; 大家可以去看两本书

< 第一本docker书 > < springcloud和docker实战 >

到这里; 可以利用docker ps 查看一下是否都在运行;


说明我们的gitlab 已经启动了; 我们来访问一下:虚拟机Ip + 设置端口(10080)



你们得到的页面和我不一样; 因为一开始进去要进行 账号密码设置.

关于跟多的gitlab 运行和维护.这边推荐微博:GitLab搭建与维护

下面有机会我们再讲解一下git ci 的安装和配置

注意目录权限:

在官方示例中,我们把gitlab的数据放在了/srv/docker/gitlab/下,一开始我用root身份对整个目录进行cp -R备份,发现gitlab有时会出现无法显示(读取)gitlab库,以及有时个别操作(如恢复备份)会出现权限不足的情况,使用cp -a或者cp -rp或者rsync -a来保持复制后的文件具有原来的模样。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: