Docker+devops实战

作者: 青衣敖王侯 | 来源:发表于2019-12-08 20:37 被阅读0次

1.gitlab服务器搭建

1.1 安装依赖软件

sudo yum install -y git vim gcc glibc-static telnet
sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

1.2 新建 /etc/yum.repos.d/gitlab-ce.repo,内容为

[gitlab-ce]
name=Gitlab CE Repository
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
gpgcheck=0
enabled=1

1.3 安装GitLab

把gitlab安装到腾讯云

sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce

如果不想设置域名,或者想将来再考虑,可以直接

sudo yum install -y gitlab-ce

安装完成以后,运行下面的命令进行配置

sudo gitlab-ctl reconfigure

1.4打开http://gitlab.example.com/ 修改root用户密码,然后使用root和新密码登陆。

2.搭建Gitlab CI服务器

2.1. 安装Docker

curl -sSL https://get.docker.com/ | sh

2.2. 安装gitlab ci runner

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | sudo bash
sudo yum install gitlab-ci-multi-runner -y

查看是否运行正常

[vagrant@gitlab-ci ~]$ sudo gitlab-ci-multi-runner status
gitlab-runner: Service is running!
[vagrant@gitlab-ci ~]$

2.3. 设置Docker权限

为了能让gitlab-runner能正确的执行docker命令,需要把gitlab-runner用户添加到docker group里, 然后重启docker和gitlab ci runner

[vagrant@gitlab-ci ~]$ sudo usermod -aG docker gitlab-runner
[vagrant@gitlab-ci ~]$ sudo service docker restart
Redirecting to /bin/systemctl restart docker.service
[vagrant@gitlab-ci ~]$ sudo gitlab-ci-multi-runner restart

2.4 注册Runner到gitlab上

[root@master chapter12]# gitlab-ci-multi-runner register
Running in system-mode.                            
                                                   
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
http://49.234.231.49
Please enter the gitlab-ci token for this runner:

Please enter the gitlab-ci description for this runner:
[master]: 
Please enter the gitlab-ci tags for this runner (comma separated):
testzzm
Whether to run untagged builds [true/false]:
[false]: 
Whether to lock Runner to current project [true/false]:
[false]: 
Registering runner... succeeded                     runner=79s-Wdbb
Please enter the executor: shell, docker+machine, ssh, virtualbox, docker-ssh+machine, kubernetes, docker, docker-ssh, parallels:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded! 
[root@master chapter12]#

2.5新建ci的脚本文件


tags如下图所示:



我们发现pipeline成功了


3.基于一个项目演示CI

3.1创建一个java项目

git push
Counting objects: 19, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (19/19), 1.94 KiB | 663.00 KiB/s, done.
Total 19 (delta 0), reused 0 (delta 0)
To http://49.234.231.49/root/javaci.git
 * [new branch]      master -> master

3.2重新创建一个maven runner

相关文章

  • Docker+devops实战

    1.gitlab服务器搭建 1.1 安装依赖软件 1.2 新建 /etc/yum.repos.d/gitlab-c...

  • Taro/微信小程序 swiper

    实战1: 实战2: 实战1: 实战2:

  • RocketMQ

    RocketMQ实战(一)RocketMQ实战(二)RocketMQ实战(三):分布式事务RocketMQ实战(四...

  • freeCodeCamp 旅途10 - 算法实战

    项目实战:回文检查器 项目实战:罗马数字转换器 项目实战:凯撒密码 项目实战:电话号码验证器 项目实战:收银机

  • MySQL实战 目录

    MySQL实战 MySQL实战1 数据库概念介绍MySQL实战2 语法、筛选条件和函数MySQL实战3 分组查询和...

  • unittest+requests框架

    接口测试实战实战思维导图

  • egret 白鹭引擎参考教学

    Egret Wing实战教程 Egret Wing实战教程(一):从按钮说起Egret Wing实战教程(二):自...

  • 内存泄露

    内存泄露 实战 实战Go内存泄露 - Go语言实战 - SegmentFault 思否 总结 pprof工具 使用...

  • 实战最重要

    改变命运的秘密就是实战。 而不是腾出大块的时间去学习。 出了校门,我们除了实战,还得实战。 要是我们不实战,习惯性...

  • 2019-10-22

    职场交际实战练习 职场交际必会句 实战对话

网友评论

    本文标题:Docker+devops实战

    本文链接:https://www.haomeiwen.com/subject/qvlmgctx.html