云服务器

自动化运维(二)-docker 部署gitlab与jenkin实现

2020-04-26 11:19:19 42

docker部署gitlab与jenkin

“CI/CD”是最近运维圈子经常提到的一个词,中文叫做持续集成,持续交付。也是devops必会技能之一。如何快速简单的部署一套属于自己的CI/CD环境呢,当前最火的工具当属gitlab与jenkins.在gitlab部署一个私有的git仓库,开发人员可以进行敏捷开发,主程序员把控个开发人员提交的子版本,然后将稳定的代码合并到统一的分支。持续的交付则交给jenkins来完成,jenkins的pipeline可以集编译 测试 发布于一身,减少开发周期。

 

 

要点一:搭建docker环境(以centos为例)

yum install docker

 

要点二:下载gitlab的docker镜像并启动镜像

    docker pull docker.io/gitlab/gitlab-ee #下载镜像
    docker run --detach  --publish 8443:443 --publish 8880:80 --publish 8222:22   --name gitlab   --restart always   --volume /srv/gitlab/config:/etc/gitlab   --volume /srv/gitlab/logs:/var/log/gitlab   --volume /srv/gitlab/data:/var/opt/gitlab    docker.io/gitlab/gitlab-ee #启动镜像

 

·打开http://ip:8880 就能看到部署完的gitlab

至于gitlab的用法这里不详细展开,有兴趣可以到git的官网去了解更为详细的用法

 

 

要点三:jenkins的部署

docker run -d -p 8002:8080 -v /home/jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime:ro --name jenkins --restart=always docker.io/jenkins/jenkins

 

有两处地方要修改

    docker exec -it  jenkins bash#进入容器中
    vi /var/lib/jenkins/updates/default.json(将www.google.com修改为www.baidu.com 这是jenkins判断是否联网的条目,如果国内使用不修改此处,会提示“该Jenkins实例似乎已离线”)
    vi /var/jenkins_home/hudson.model.UpdateCenter.xml (将https修改为http)
    docker restart jenkins#重启jenkins
    docker exec jenkins bash -c ' cat /home/jenkins/secrets/initialAdminPassword'#获取密码

 

·输入网址:http://ip:8002

(此处输入刚才获取的密码)

安装完就像上图所示,我们已经完成了jenkins的安装了,至于如何使用gitlab和jenkins实现CI/CD,请看下篇《自动化运维(三):持续集成/持续交付》

睿江云官网链接:www.eflycloud.com

上一篇: 无

微信关注

获取更多技术咨询