Gitlab本地代码,自动发布至正式服务器
2017-12-19 13:56
411 查看
场景描述
1 Git服务器:centos6.5,本地环境内网运行。 2 正式服务器:windows server 2008,阿里云公网运行 业务需求:能够将Git服务器存储的代码,自动发布至正式服务器上。
准备工具
1、Gitlab >=9.0 2、Gitlab-runner 3、powershell 4、花生壳(免费版)
前置条件
1、Gitlab正确配置,并正常运行。 2、Git服务器内网固定IP (如:192.168.0.19) 3、两台服务器都装有Git同版本的客户端。
本教程默认以上工具和前置条件都已经实现。
安装工具
首先当然是先安装准备工具。1 安装Gitlab (安装教程百度一下,一大把) 2 给windows服务器安装powershell(安装教程百度一下,一大把) 3 给Git服务器安装花生壳(centos版)(安装教程百度一下,一大把)
配置Gitlab
都安装好之后,先来看Gitlab以我测试的为例,进入到项目列表,然后选择一个要部署的项目
然后选择 Settings->Pipelines,
Gitlab有两种执行Runner的模式:
一种是Specific Runners,该模式只能作用域当前选择的项目。
另一种是Shared Runners,该模式可以作用域所有项目,但是需要root权限才能创建,一般也用不到这个模式。
我们选择Specific模式
提示中的:2和3项的URL和Token,这两个将是配置Runner的关键信息。
配置Runner
现在打开正式服务器,安装Gitlab-runner,安装好之后,要注册刚才的test项目,过程中需要选择True/False的,选择True。cmd定位到Gitlab-runner根目录,执行 gitlab-runner.exe register 命令,
将URL和Token填好,监听的分支Tag填写master,表示只有当master变动的时候,才触发自动部署。
然后,在项目根目录创建.gitlab-ci.yml文件,写入以下内容,保存至项目根目录
stages: - build build: stage: build script: # 打开到项目目录 - cd E:\php\phpStudy\WWW # 执行pull操作 - git pull origin master only: # 只有master分支才执行 - master
测试
在Gitlab上,提交一次合并请求,当合并请求被通过时,看同步是否能完成。如果出现对号符号,则表示Updates已经更新至正式服务器相关文章推荐
- 实现 Gitlab 提交代码 Jenkins 自动更新到服务器
- Gitlab-CI 结合Maven自动构建 发布到服务器遇到的问题
- centos下搭建SVN服务器 并且自动发布代码
- 如何搭建一台 通过SVN 提交代码自动发布的 nodeJs 服务器.
- centOS 搭建SVN服务器,提交自动发布代码,详细教程,及注意事项
- Gitlab通过custom_hooks自动更新服务器代码
- 使用phpstorm将本地代码实时自动同步到远程服务器
- centos下搭建SVN服务器 并且自动发布代码
- gitolite 通过测试服务器发布代码到正式服务器一步完成
- eclipse远程发布代码的方法(SSH自动同步)
- 发布CodeBuild.Net代码自动生成器 V2008 2.01(Vs2008)和架构实例源码Demo
- Maven的使用方法:在服务器上进行自动编译时的发布(deploy)
- 本地环境代码正常,上传服务器则出现问题,几种可能情况分析
- Git--将服务器代码更新到本地
- gitserver服务器搭建以及代码自动更新
- [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(三. PHP端代码实现)
- windows环境下svn本地提交后自动更新提交到服务器的项目根目录
- 我用纯C语言开发的中英文混合分词服务器3.0正式发布,词库190多万词,每秒切分5万+,同时提供 c、java、C#、delphi、js调用范例
- 2012新版微软一站式示例代码浏览器正式发布 -包含Windows Azure代码示例!
- 使用ngrok本地开发微信,代码无需上传到服务器