从gitlab上拉取代码并一键部署

一、gitlab安装

GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

GitLab拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

1、基础环境准备

[[email protected] ~]# yum install curl policycoreutils openssh-server openssh-clients postfix
[[email protected] ~]# systemctl start postfix

2、安装gitlab-ce

首先配置yum源,使用国内的镜像

vi /etc/yum.repos.d/gitlab-ce.repo

[gitlab-ce]
name=gitlab-ce
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key

通过yum安装gitlab-ce

[[email protected] ~]# yum makecache
[[email protected] ~]# yum install gitlab-ce

3、配置并启动gitlab-ce

使用gitlab-ctl配置gitlab

[[email protected] ~]# gitlab-ctl reconfigure

查看gitlab状态

[[email protected] ~]# gitlab-ctl status
run: gitlab-workhorse: (pid 4824) 795s; run: log: (pid 4800) 804s
run: logrotate: (pid 4812) 796s; down: log: 0s, normally up, want up
run: nginx: (pid 4806) 798s; run: log: (pid 4805) 798s
run: postgresql: (pid 4679) 854s; run: log: (pid 4678) 854s
run: redis: (pid 4659) 860s; run: log: (pid 4658) 860s
run: sidekiq: (pid 4796) 806s; run: log: (pid 4795) 806s
run: unicorn: (pid 4770) 808s; run: log: (pid 4769) 808s
[[email protected] ~]#

二、gitlab管理与使用

第一次登录gitlab,需要为root用户修改密码,root用户也是gitlab的超级管理员。

使用root用户和刚才创建的密码登录后,你就可以探索gitlab的奥秘了,可以点击图中红框的按钮进入管理区域。

在内网搭建服务器,运维人员自己根据需求创建用户,而不是用户自己注册;因此需要将注册的功能取消掉。如图,点击Admin Area---》settings

将Sign-up enabled功能取消掉

在页面左下角点击save。

在gitlab中有项目和组的概念;一个组里面可以包含不同的人,因此可以先创建组。

搭建私有的代码仓库,因此需要选择Private

页面右下角,点击create group

接下来在组里创建项目

创建项目后,需要添加认证,以便于拉取代码

在README.md中随便添加一些内容,便于测试。

将linux-node1节点的www用户的公钥复制到SSHKeys内

注意,添加title时,命名最好规范一些,比如linux-node1-www表示linux-node1下www用户的公钥

拉取代码的方式可以是通过http和SSH,这里我们选择SSH方式

登陆到linux-node1,切换到www用户,执行git clone,拉取代码,如下

可以看到在gitlab页面上编辑的README.md里面的内容

添加一个测试文件,里面随意写一些内容,进行测试。先git add *,将文件添加到索引库中。接下来使用git commit命令将依据索引库中的内容来进行文件的提交。第一次使用git commit –m “add index.html”时,会提示添加邮箱和姓名之类的提示,按照自己的情况添加即可。

使用git show 查看commit后的版本号

截取前六位,这样我们就可以使用短的版本号,进行代码的拉取

将上一个博客中shell脚本进行改造,代码版本获取如图所示:

最后通过在gitlab上拉取代码,使用deploy1.sh脚本进行自动化部署,如图所示:

部署成功后,在浏览器中进行验证。Index.html中的内容确实为刚才所填写的内容。

至此,在gitlab上拉取代码后,自动化部署完毕。

时间: 2024-12-08 23:38:05

从gitlab上拉取代码并一键部署的相关文章

使用git在gitlab上拉取代码的方法

最近在项目中用到了gitlab,他是一个类似于github的代码托管工具. 因为是个初级菜鸟第一次使用还不太熟悉,所以在此记录一下. 1.首先需要使用github的注册账号登录gitlab,查看右上角用户头像处的settings, 2.在用户设置settings处找到SSH Keys, 3.如果你的电脑中没有SSH Key,那就需要生成一个, 按照相关提示生成SSH Key,使用git工具,右键打开git bash here,在命令行中输入ssh-keygen -t rsa -C "[email

解决git pull 命令失效,不能从远程服务器上拉取代码问题

用时候在用Git pull命令的时候不管用,拉取不下来远程分支上的代码,是因为本地分支和远程分支没有建立关联. 处理这种问题很简单就按照提示执行命令即可:git branch --set-upstream-to=origin/fixbug-2.9.8 fixbug-2.9.8 如果想保证这种情况不出现就在建立新分支推送到远程分支上的时候加上-u参数即可 git push -u origin feature- 解决git pull 命令失效,不能从远程服务器上拉取代码问题

git从远程仓库gitLab上拉取指定分支到本地仓库

https://blog.csdn.net/qq_40973353/article/details/80682891 例如:将gitLab 上的dev分支拉取到本地 1>与远程仓库建立连接:git remote add origin XXXXX.git 2>使用git branch 查看本地是否具有dev分支 3>如果没有 git fetch origin dev 4>git checkout -b dev origin/dev在本地创建分支dev并切换到该分支 5>git

从SVN上拉取代码

1.先安装SVN,安装好之后在IDEA上进行配置,安装以及配置教程可以在网上找. 2.然后鼠标右键,选择SVN Checkout.弹出下下图,上面地址为拉取代码的SVN地址,下面为代码下载到本地的地址. 3.在idea中打开该项目即可,若想在IDEA拉取和提交代码,则需要进行版本控制的配置.如下图所示,选择VCS->Enable Version Controller Integration会 弹出一个界面如下下图,VNC的话选择Subversion.然后右上角就会出现如图所示的提交.即可进行代码

jenkins自动化部署gitlab上maven程序

部署流程:将代码从gitlab上拉取下来,使用maven打包,将打包后的jar通过ssh发送到服务器上,运行jar程序 注意:本文需要安装一些插件Publish Over SSH 1.新建任务 在主页点击“新建任务” 输入任务名称“gis-server”(随便什么名称都可以) 选择“构建一个maven项目” 确定 2.配置页面-源码管理 2.1.输入“Repository URL”,这是一个gitlab上的代码仓库地址,例如图中的 SSH地址:[email protected]:3dgis/se

.netcore mvc docker环境jenkins一键部署(DevOps)

[前言] DevOps方面的文章很早之前就想分享了,挤出一点时间把前段时间搭建的一些提高开发效率的东西给大家分享一下吧. 本文介绍了一个.netcore mvc web项目,从项目push到github开始 自动从github上拉取代码 编译,生成,发布 停止docker容器,删除docker镜像 通过项目的dockerfile新建docker镜像 Run容器,自动绑定ip,站点启动 整个过程只需要在jenkins这个自动化工具上点一个按钮.下面我们按顺序来简单介绍一下. 使用的内容都很基础,重

jenkins+gradle+Github拉取代码

走了误区,找了三个小时才解决 1)jenkins平台上打包是成功的,但就是没有生成apk文件,找了很久,目前发现在jenkins平台上集成是生成不了的, 用android studio打包可以,具体原因待考证 2)一直对jenkins比较陌生,今天折腾了下,在github上拉取代码,执行python代码成功:配置截图如下

IDEA从GitHub仓库拉取代码

1.准备好GitHub账号密码 2.GithHb项目链接地址,Use Https 3.IDEA 设置中找到GitHub,输入账户和密码(File-->Settings-->Vserion Control-->GitHub) 4.IDEA集成Git工具,Git工具需先安装好.(File-->Settings-->Vserion Control-->Git) 5.利用IDEA从GitHub上拉取代码 原文地址:https://www.cnblogs.com/must-gro

jenkins到底如何拉取代码 如何部署的

tips:jenkins通过配置,将之前编译.打包.上传.部署到Tomcat中的过程交由jenkins,jenkins通过指定的代码地址url,将代码拉取到其jenkins的安装位置,进行编译.打包和发布到容器中 jenkins环境 :代码clone(Git).代码编译(Maven).代码运行(Tomcat)的基本环境.公司专门服务配置的环境(redis,mysql数据库,zk,缓存,以及各种服务的配置) 目前我们公司就是这样整体的一个流程,我必须在这里记录下 步骤: 1.git拉取代码,跑公司