因为涉及的依赖多,所以新手在安装Gitlab时往往遇到不少障碍。如果按照下面的方法,则可以轻松装好Gitlab.
第一步:复制脚本并执行
#!/bin/bash unknown_os () { echo "Unfortunately, your operating system distribution and version are not supported by this script." echo echo "You can override the OS detection by setting os= and dist= prior to running this script." echo "You can find a list of supported OSes and distributions on our website: https://packages.gitlab.com/docs#os_distro_version" echo echo "For example, to force CentOS 6: os=el dist=6 ./script.sh" echo echo "Please email support@packagecloud.io and let us know if you run into any issues." exit 1 } curl_check () { echo "Checking for curl..." if command -v curl > /dev/null; then echo "Detected curl..." else echo "Installing curl..." yum install -d0 -e0 -y curl fi } detect_os () { if [[ ( -z "${os}" ) && ( -z "${dist}" ) ]]; then if [ -e /etc/os-release ]; then . /etc/os-release dist=`echo ${VERSION_ID} | awk -F '.' '{ print $1 }'` os=${ID} elif [ `which lsb_release 2>/dev/null` ]; then # get major version (e.g. '5' or '6') dist=`lsb_release -r | cut -f2 | awk -F '.' '{ print $1 }'` # get os (e.g. 'centos', 'redhatenterpriseserver', etc) os=`lsb_release -i | cut -f2 | awk '{ print tolower($1) }'` elif [ -e /etc/oracle-release ]; then dist=`cut -f5 --delimiter=' ' /etc/oracle-release | awk -F '.' '{ print $1 }'` os='ol' elif [ -e /etc/fedora-release ]; then dist=`cut -f3 --delimiter=' ' /etc/fedora-release` os='fedora' elif [ -e /etc/redhat-release ]; then os_hint=`cat /etc/redhat-release | awk '{ print tolower($1) }'` if [ "${os_hint}" = "centos" ]; then dist=`cat /etc/redhat-release | awk '{ print $3 }' | awk -F '.' '{ print $1 }'` os='centos' elif [ "${os_hint}" = "scientific" ]; then dist=`cat /etc/redhat-release | awk '{ print $4 }' | awk -F '.' '{ print $1 }'` os='scientific' else dist=`cat /etc/redhat-release | awk '{ print tolower($7) }' | cut -f1 --delimiter='.'` os='redhatenterpriseserver' fi else aws=`grep -q Amazon /etc/issue` if [ "$?" = "0" ]; then dist='6' os='aws' else unknown_os fi fi fi if [[ ( -z "${os}" ) || ( -z "${dist}" ) || ( "${os}" = "opensuse" ) ]]; then unknown_os fi # remove whitespace from OS and dist name os="${os// /}" dist="${dist// /}" echo "Detected operating system as ${os}/${dist}." } main () { detect_os curl_check yum_repo_config_url="https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/config_file.repo?os=${os}&dist=${dist}&source=script" yum_repo_path=/etc/yum.repos.d/gitlab_gitlab-ce.repo echo "Downloading repository file: ${yum_repo_config_url}" curl -sSf "${yum_repo_config_url}" > $yum_repo_path curl_exit_code=$? if [ "$curl_exit_code" = "22" ]; then echo echo echo -n "Unable to download repo config from: " echo "${yum_repo_config_url}" echo echo "This usually happens if your operating system is not supported by " echo "packagecloud.io, or this script's OS detection failed." echo echo "You can override the OS detection by setting os= and dist= prior to running this script." echo "You can find a list of supported OSes and distributions on our website: https://packages.gitlab.com/docs#os_distro_version" echo echo "For example, to force CentOS 6: os=el dist=6 ./script.sh" echo echo "If you are running a supported OS, please email support@packagecloud.io and report this." [ -e $yum_repo_path ] && rm $yum_repo_path exit 1 elif [ "$curl_exit_code" = "35" ]; then echo echo "curl is unable to connect to packagecloud.io over TLS when running: " echo " curl ${yum_repo_config_url}" echo echo "This is usually due to one of two things:" echo echo " 1.) Missing CA root certificates (make sure the ca-certificates package is installed)" echo " 2.) An old version of libssl. Try upgrading libssl on your system to a more recent version" echo echo "Contact support@packagecloud.io with information about your system for help." [ -e $yum_repo_path ] && rm $yum_repo_path exit 1 elif [ "$curl_exit_code" -gt "0" ]; then echo echo "Unable to run: " echo " curl ${yum_repo_config_url}" echo echo "Double check your curl installation and try again." [ -e $yum_repo_path ] && rm $yum_repo_path exit 1 else echo "done." fi echo "Installing pygpgme to verify GPG signatures..." yum install -y pygpgme --disablerepo='gitlab_gitlab-ce' pypgpme_check=`rpm -qa | grep -qw pygpgme` if [ "$?" != "0" ]; then echo echo "WARNING: " echo "The pygpgme package could not be installed. This means GPG verification is not possible for any RPM installed on your system. " echo "To fix this, add a repository with pygpgme. Usualy, the EPEL repository for your system will have this. " echo "More information: https://fedoraproject.org/wiki/EPEL#How_can_I_use_these_extra_packages.3F" echo # set the repo_gpgcheck option to 0 sed -i'' 's/repo_gpgcheck=1/repo_gpgcheck=0/' /etc/yum.repos.d/gitlab_gitlab-ce.repo fi echo "Installing yum-utils..." yum install -y yum-utils --disablerepo='gitlab_gitlab-ce' yum_utils_check=`rpm -qa | grep -qw yum-utils` if [ "$?" != "0" ]; then echo echo "WARNING: " echo "The yum-utils package could not be installed. This means you may not be able to install source RPMs or use other yum features." echo fi echo "Generating yum cache for gitlab_gitlab-ce..." yum -q makecache -y --disablerepo='*' --enablerepo='gitlab_gitlab-ce' echo echo "The repository is setup! You can now install packages." } main
第二步:
执行成功后,检查是否可以通过yum search 最新的gitlab包:
yum search gitlab
如果可以,直接yum install -y gitlab-ce
第三步:
安装完成后,进行配置:
cd /opt/gitlab/bin
./gitlab-ctl reconfigure
第四步:
配置完成后就可以启动了:
cd /opt/gitlab/bin/
./gitlab-ctl start
访问:http://ip
注意8080端口要用
相关推荐
Centos7安装Gitlab
centos7安装部署gitlab服务器,1. 安装依赖软件2.设置postfix开机自启,并启动,postfix支持gitlab发信功能3.下载gitlab安装包,然后安装4.配置GITLAB
公司最近服务器中病毒,然后做一个gitlab迁移,已实践!,可以说是良心作品了,积分也不高,还望评论下(好评)谢谢
CentOS 7 下安装 Gitlab-CE-11及邮件配置,安装步骤和邮件配置参数
这是一个关于阿里云服务器CentOS7.2安装配置gitlab工具的配置文档,初学者可以据此配置,但要注意根据自己的下载和安装路径,当然仿照文档内的路径,也完全没问题。
Centos7 源码安装Gitlab.md 存放这里,让大家下载快捷一点
centos安装 ruby-1.9.3-p0 报错 EC_GROUP_new_curve_GF2m
主要介绍了centos6搭建gitlab的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
在CentOS 7上进行完整安装生活在任何平台上的Docker容器您需要了解一些先决条件: 您将需要已安装mysql或mariadb并对其进行配置以进行网络访问您将需要以具有sudo访问权限(最好是sudo NOPASSWD访问权限)的用户...
GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。安装方法是参考GitLab在GitHub上的Wiki页面!新手必备文档,秒安装,秒使用,瞬间变大神!
Gitlab 在 8.0 后默认集成 CI 功能,相比 Hook 来说可以说是更加简单一些,可以省去在服务器自行书写 ...不会操作请参见 Gitlab 上的官方教程 安装 gitlab-runner 这里有两种选择,通过 rpm 包安装或通过 docker 安装
主要介绍了CentOS8.1搭建Gitlab服务器详细教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
本地centos虚拟机中部署jenkins+gitlab服务。可实现通过git推送代码到gitlab触发jenkins的自动构建。可以通过windows访问centos虚拟机中的jenkins和gitlab服务。还包括windows环境下的java,maven环境搭建,centos...
主要介绍了CentOS7下GitLab跨大版本升级的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
基于centos 7.0平台搭建gitlab+jenkins可持续集成环境。
centos7 gitlab Omnibus 12 yum 安装.pdf 是我写的,有什么不懂可以留言
Centos7 操作系统部署汉化版gitlab,