git 客户端连接gitlab 实现简单的CI/CD
1. git 客户端的安装
下载:
https://git-scm.com/download/win
截至最近:20180728最新版本 2.18的下载地址
https://github-production-release-asset-2e65be.s3.amazonaws.com/23216272/c0b82e3e-7623-11e8-93a5-b72bebbce542?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20180728%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20180728T093737Z&X-Amz-Expires=300&X-Amz-Signature=09cc88bffb7250c5baf8b1a86ca4cee9eb636772846b35cfecb097333a523108&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3DGit-2.18.0-64-bit.exe&response-content-type=application%2Foctet-stream
直接安装即可
打开 git bash
切换目录

生成SSH 秘钥
ssh-keygen -t rsa -C "jinanxiaolaohu@163.com"
选择一个存放路径 如图示

查看目录下的秘钥文件

2. gitlab 创建用户
创建一个新用户

创建用户 打开邮箱 重新设置密码

登录之后增加ssh key

创建一个 group 并且创建一个project

创建第一个 项目

创建完成之后 会看到 一个地址

然后根据 后面的提示 来增加文件等
Git global setup
git config --global user.name "jinanxiaolaohu"
git config --global user.email "jinanxiaolaohu@163.com" Create a new repository
git clone http://10.24.101.122/jinanxiaolaohu630/CICD.git
cd CICD
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
连接成功 正常可以使用。
3. git 添加 .gitlab-ci.yml
vim .gitlab-ci.yml
添加内容
cd:
script:
- ifconfig
- export DOCKER_HOST="tcp://localhost:2375"
- docker ps
- docker cp zhaobsh.html nginx:/usr/share/nginx/html/index.html
简单介绍 第一步 应该是 stage
第二部是 脚本 运行的
每一个 - 是 命令。
4. 添加 html 文件
vim zhaobsh. html 随便添加点内容 ”赵本帅测试用“
5. 安装 gitlab-runner
sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-ci-multi-runner-linux-amd64
修改 运行权限
sudo chmod +x /usr/local/bin/gitlab-runner
安装
gitlab-runner install --user=root
运行
gitlab-runner start
注册
gitlab-runner register
参照gitlab 里面的设置信息

简单的注册 使用shell 的方式

注册完成进行查看

将增加的runner 定位到 新增加的project 上面 作为 专用 runner来使用

进入新增加的项目进行查看

查看机器runner的宿主机上面是否安装运行了docker

修改 docker 的运行方式 不让docker client 使用 sock文件进行处理
备注: 这里 用sock方式 总是报错 不得已 stackoverflow 上面说改成tcp的方式 能够解决。
查看docker services的运行方式

修改 service 文件
增加内容
vim /usr/lib/systemd/system/docker.service
在 如下上面增加 -H 以及后续内容 带下划线的部分
ExecStart=/usr/bin/dockerd -H tcp://127.0.0.1:2375
增加一个docker的环境变量
vim /etc/profile.d/docker.sh
增加内容
export DOCKER_HOST="tcp://127.0.0.1:2375"
重新加载配置文件 以及重启docker
systemctl daemon-reload
systemctl restart docker
拉取 nginx 的景象 以及运行之
docker pull nginx
docker run -d -p : --name nginx nginx
将 想修改的首页 进行处理

先查看一下 nginx的首页

同样的将gitlab-ci的文件提交到的服务器

push之后就会有活动

最终能够 pass 并且查看一下

再打开首页 验证一下

最简单的 一个 gitlab-runner的部署就可以了。
git 客户端连接gitlab 实现简单的CI/CD的更多相关文章
- 使用gitlab自带的ci/cd实现.net core应用程序的部署
这两天在折腾持续集成和交付,公司考虑使用gitlab自带的ci/cd来处理,特此记下来整个流程步骤. 好记性不如一支烂笔头---尼古拉斯-古人言 第一步: 安装gitlab,这个自然不用多说 第二步: ...
- 好代码是管出来的——使用GitHub实现简单的CI/CD
软件开发一般来说是一项团队作业,在本系列文章开始就提到过软件的编码是由一个团队“并行”完成的,为了保证编码任务正常完成,首先引入版本控制工具来完成代码管理,为了保证代码质量引入了代码分析器以及代码测试 ...
- Docker+Vagrant+Gitlab 构建自动化的 CI/CD
如果你的开发流程是下面这个样子的, 那么你一定很好奇, 为什么我提交到仓库的代码可以自动部署并访问到最新的提交内容 这就是近年来兴起的 DevOps 文化, 很方便的解决了开发人员和运维人员每次发布版 ...
- 利用jenkens+github实现简单的CI/CD
一 获取github accessToken 依次点击 settings----> Developer settings --->Personal access tokens 到这里如 ...
- GitLab私有化部署 - CI/CD - 持续集成/交付/部署 - 源代码托管 & 自动化部署
预期目标 源代码管理 借助GitLab实现源代码托管,私有化部署版本,创建项目,创建用户组,分配权限,项目的签入/牵出等. 自动化部署 源代码产生变更时(如签入),自动化编译并发布到指定服务器中部署, ...
- 前端初探 Gitlab CI/CD
前言 纵观人类历史的发展以及三次工业革命,你会发现利用机器来替代部分人力劳动,将重复的工作自动化从而解放生产力都是发展的必然趋势,在软件工程领域也不例外,其中 CI/CD 就是其中一项,那么什么是 C ...
- Gitlab CI/CD
Gitlab CI/CD 前言 纵观人类历史的发展以及三次工业革命,你会发现利用机器来替代部分人力劳动,将重复的工作自动化从而解放生产力都是发展的必然趋势,在软件工程领域也不例外,其中 CI/CD 就 ...
- 官网GitLab CI/CD英文文档翻译
在查阅GitLab官网的CI/CD功能说明时,全是英文看起来不方便,通过翻译软件自动翻译后"内容失真",看起来很变扭.查阅了百度上的资料发现很多翻译很老旧,有些甚至是挂羊头卖狗肉. ...
- [转]gitlab ci/cd 发布
转自 https://meigit.readthedocs.io/en/latest/configure_gitlab_i18n_and_create_gitlab_ci_with_gitlab_ru ...
随机推荐
- 解决:linux 固定ip 导致ping 外网unknown host
首先说下问题产生场景:最近搞jenkins搭建持续集成,搞完后发现服务器ip(ifconfig 红色)老是变化,一怒之下果断修改ip [root@bogon etc]# ifconfigeth0 Li ...
- Makefile 学习记录一
2019年2月5日10:18:13 大年初一 整理 uboot-2018-11 源代码 根目录下的 Makefile . ifeq ("$(origin O)", "c ...
- pip安装python包出错:Could not find a version that satisfies the requirement skimage (from versions: )
今天用pip安装skimage时报错: 这是因为网络的问题,需要使用国内的镜像源来加速,比如豆瓣源 命令改为: pip install scikit-image -i http://pypi.doub ...
- Python 调用 Redis API
安装Redis包 在\Python27\Scripts目录下执行 pip install redis Python操作Redis __author__ = 'Edward' import redis ...
- 20155204 王昊《网络对抗技术》EXP1 PC平台逆向破解
20155204 王昊<网络对抗技术>EXP1 PC平台逆向破解 (一)实验内容 一.掌握NOP.JNE.JE.JMP.CMP汇编指令的机器码 NOP:NOP指令即"空指令&qu ...
- # 2017-2018-2 20155319 『网络对抗技术』Exp8:Web基础
2017-2018-2 20155319 『网络对抗技术』Exp8:Web基础 一.原理与实践说明 1.实践具体要求 (1).Web前端HTML(0.5分) 能正常安装.启停Apache.理解HTML ...
- cli 开发记录
最近要开发一个 cli,主要作用是方便同事生成前端项目,做了一天半,基本参考的是 vue-cli. cli 要实现的功能: 用 cnpm install zt-cli -g 全局安装,这个就要将你做的 ...
- BeginPaint 和 GetDC 的一个区别
这个问题是在做9*9乘法表这个课后习题发现的-- 先给出我的结论:注意在 WM_PAINT 下不要使用hdc = GetDC(hwnd)的方式,因为这样会不停的触发WM_PAINT消息! 东西看上去就 ...
- pygame 入门实例
本文基于win7(64) + py3.5(64)环境. 本文是这里的一篇学习笔记.加入了自己的理解. 本文最终目的是实现一个飞机躲避导弹的游戏. 1.核心概念 pygame 的核心概念有: Surfa ...
- Keras实现风格迁移
风格迁移 风格迁移算法经历多次定义和更新,现在应用在许多智能手机APP上. 风格迁移在保留目标图片内容的基础上,将图片风格引用在目标图片上. 风格本质上是指在各种空间尺度上图像中的纹理,颜色和视觉图案 ...