DevOps
敏捷开发打通了产品经理和开发之间沟通的壁垒
DevOps打通了开发人员与运维人员沟通的壁垒
这里只说DevOps。敏捷开发其实很难说,科普的东西自行百度吧,敏捷开发真正的干货其实还是沟通与协调。妄图指望引入一个敏捷开发流程就能搞定一切,乘早死心吧。
要安装的东西还真不少
docker k8s,有兴趣的话,可以把istio也给安装了
gitlab、Jenkins、Sonar
一、安装gitlab
检测宿主机端口占用情况,因为后续容器内程序需要和外网联通,就必须将容器进程端口与宿主机端口映射,容器本身不能联通外网,切记哦。
1、查找GitLab镜像
docker search gitlab
2、拉取gitlab docker镜像
docker pull gitlab/gitlab-ce:latest
3、运行GitLab并运行容器
docker run \ -itd \ -p 9980:80 \ -p 9922:22 \ -v /usr/local/gitlab-test/etc:/etc/gitlab \ -v /usr/local/gitlab-test/log:/var/log/gitlab \ -v /usr/local/gitlab-test/opt:/var/opt/gitlab \ --restart always \ --privileged=true \ --name gitlab-test \ gitlab/gitlab-ce
命令解释:
-i 以交互模式运行容器,通常与 -t 同时使用命令解释:
-t 为容器重新分配一个伪输入终端,通常与 -i 同时使用
-d 后台运行容器,并返回容器ID
-p 9980:80 将容器内80端口映射至宿主机9980端口,这是访问gitlab的端口
-p 9922:22 将容器内22端口映射至宿主机9922端口,这是访问ssh的端口
-v /usr/local/gitlab-test/etc:/etc/gitlab 将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab-test/etc目录下,若宿主机内此目录不存在将会自动创建,其他两个挂载同这个一样
--restart always 容器自启动
--privileged=true 让容器获取宿主机root权限
--name gitlab-test 设置容器名称为gitlab-test
gitlab/gitlab-ce 镜像的名称,这里也可以写镜像ID
备注:检查端口占用情况哦netstat -lnp|grep 端口
执行命令,构建成功了.
# 重点:接下来的配置请在容器内进行修改,不要在挂载到宿主机的文件上进行修改。否则可能出现配置更新不到容器内,或者是不能即时更新到容器内,导致gitlab启动成功,但是无法访问
4、进入容器内
docker exec -it gitlab-test /bin/bash
5、修改gitlab.rb
# 打开文件
vi /etc/gitlab/gitlab.rb
6、修改gitlab.yml
这一步原本不是必须的,因为gitlab.rb内配置会覆盖这个,为了防止没有成功覆盖所以我在这里进行配置,当然你也可以选择不修改gitlab.rb直接修改这里。事实也是如此,所以我不需要修改任何信息了。
7、让修改后的配置生效
gitlab-ctl reconfigure
8、重启gitlab
gitlab-ctl restart
9、退出容器
exit
10、在游览器输入如下地址,访问gitlab
http:
//192
.168.149.131:9980
参考文章
Jenkins+SonarQube+Gitlab搭建自动化持续代码扫描质量平台
自动代码质量分析(GitLab+JenKins+SonarQube)
Jenkins+SonarQube+Gitlab集成钉钉群消息自动通知(Python版)
---------------------------------------------------
作者:杨兮臣
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
博主的文章没有高度、深度和广度,只是凑字数。由于博主的水平不高,不足和错误之处在所难免,希望大家能够批评指出。
博主是利用闲暇时间,把自己毕生所学整理一下,感谢行业的技术大咖