Skip to content

Instantly share code, notes, and snippets.

@billyma128
Created December 22, 2015 14:56
Show Gist options
  • Save billyma128/2ce20178820c2a696b8f to your computer and use it in GitHub Desktop.
Save billyma128/2ce20178820c2a696b8f to your computer and use it in GitHub Desktop.
CentOS7.1使用Docker搭建基于Gitlab和Jenkins的Node.js持续集成环境

CentOS7.1使用Docker搭建基于Gitlab和Jenkins的Node.js持续集成环境

标签(空格分隔): 未分类


在上一篇分享中,可以看出gulp能帮我们完成许多工作,但其中并不是所有的任务每个开发人员都用得到,诸如静态资源的打包、远程部署和版本归档等。那么可以把这些工作交给持续集成服务器来做,当开发人员push代码到gitlab的repoA后,触发jenkins执行构建操作,把构建后的代码push到gitlab的repoB,部署时直接从repoB clone最新的代码,如图所示:

Prerequisites

CentOS 7.1.1503 Docker Engine 1.8.3 Docker Compose 1.4.2

1.安装CenOS7.1

由于公司发的笔记本实在太挫,平时一直在吃灰,现在终于派上用场了,用作本次实验的主机。到阿里云镜像仓库下载最新的CentOS镜像,安装具体参考How to Install CentOS 7 Step by Step with Screenshots

2.安装Docker

安装官方文档安装好DockerDocker Compose,然后启动Docker:

sudo service docker start

结果启动失败: 并且CentOS防火墙弹出警告: google之,在这里找到了解决办法,/etc/selinux/config中设置SELINUX=disabled,然后重启系统,再启动docker,OK!

3.安装gitlab镜像

这里使用sameersbn维护的版本,目前最新版是8.1.2,执行

docker pull sameersbn/gitlab

会默认下载最新版,也可指定版本下载,只需在命令后面加上tag:

docker pull sameersbn/gitlab:8.1.2

如果墙内下载速度慢的话,可以使用灵雀云的镜像仓库,只是更新有点慢:

docker pull index.alauda.cn/sameersbn/gitlab

顺便说一句,本来打算写篇利用vps搭建shadowsocks的博客,毕竟自己前前后后花了两天时间来搭建、优化,但后来发现这里基本把过程都写清楚了,也就不重复造轮子了,感兴趣的可以看看。 因为还要安装postgreSQL和redis,一个个pull太慢了,而且docker启动命令也很长,这时我们就可以发挥docker compose的作用了,参考sammersbn推荐的做法,执行:

wget https://raw.githubusercontent.com/sameersbn/docker-gitlab/master/docker-compose.yml

下载后使用pwgen生成GITLAB_SECRETS_DB_KEY_BASE所需的key,

可定制其中的配置项,然后执行

@seecsea
Copy link

seecsea commented Jan 8, 2016

写完了么?貌似太监了啊

@abnerCrack
Copy link

我擦太监了。。。

@billyma128
Copy link
Author

billyma128 commented Dec 17, 2016

我都忘了怎么发到这里来了。。。这个配置的关键是使用docker 的 link参数来关联多个docker实例,这里有我当时遇到的坑

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment