因为涉及的依赖多,所以新手在安装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端口要用
相关推荐
在安装 Gitlab 之前,我们需要准备 Centos7 环境,并关闭防火墙。然后,我们可以安装 Gitlab 需要的组件,例如 curl、policycoreutils、openssh-server、openssh-clients 和 postfix。然后,我们可以下载 Gitlab ...
centos7安装gitlab
在CentOS上安装GitLab的过程中,可能会遇到一个与Ruby版本相关的错误:“EC_GROUP_new_curve_GF2m”。这个错误通常出现在尝试安装Ruby 1.9.3-p0时,由于其与OpenSSL库的兼容性问题导致。Ruby是GitLab运行所必需的...
centos gitlab-runner 13.8.x rpm 离线安装包
在安装完成后,需要编辑 GitLab 的配置文件 `/etc/gitlab/gitlab.rb`,将 `external_url` 配置为自己的服务器 IP 和端口号: ``` vim /etc/gitlab/gitlab.rb external_url http://IP:端口 ``` 然后,需要执行配置...
根据给定的信息,本文将详细解释如何在CentOS 7上安装和配置GitLab服务器,具体包括以下几个步骤:安装依赖软件、设置Postfix为GitLab提供邮件服务、下载并安装GitLab安装包以及最终的GitLab配置。 ### 一、安装...
CentOS 7 下安装 Gitlab-CE-11及邮件配置,安装步骤和邮件配置参数
本文档旨在指导用户如何在阿里云服务器上安装并配置GitLab。GitLab是一款开源的Git仓库管理工具,它提供了非常丰富的特性,如版本控制、项目管理、CI/CD等,适合团队协作开发。本文档假设读者已经具备基本的Linux...
- 在安装完成后,使用 `gitlab-ctl` 命令来进行基本配置: ```bash gitlab-ctl reconfigure ``` 此命令会重新配置 GitLab 的各种组件,包括 PostgreSQL 数据库、Redis 缓存系统等。 - 查看 GitLab 服务的状态: ...
Centos7 源码安装Gitlab.md 存放这里,让大家下载快捷一点
在安装完成后,需要根据新版本的要求进行必要的配置调整,例如更新配置文件`/etc/gitlab/gitlab.rb`,并执行`sudo gitlab-ctl reconfigure`使配置生效。 升级过程中可能会遇到数据库不兼容的情况,此时GitLab会自动...
本文将详细介绍如何在 CentOS 6 上搭建一个完整的 GitLab 服务。 #### 环境准备 在开始安装之前,请确保服务器已更新到最新状态: ```bash yum -y update ``` #### 基础环境安装 首先需要安装 Git、Redis、Ruby ...
在CentOS 7上进行完整安装生活在任何平台上的Docker容器您需要了解一些先决条件: 您将需要已安装mysql或mariadb并对其进行配置以进行网络访问您将需要以具有sudo访问权限(最好是sudo NOPASSWD访问权限)的用户...
虽然主页上可能更多地推广旗舰版,但在“Install GitLab”部分可以找到安装说明。官方推荐至少4GB的内存来运行GitLab,但为了保证系统稳定性,建议分配6GB或更多。在CentOS 8的安装指南中,需要仔细寻找社区版的入口...
在CentOS上,你可以通过Yum安装GitLab社区版。安装完成后,配置GitLab的URL以供Jenkins使用。 **Jenkins与GitLab集成** 为了实现GitLab推送到Jenkins的自动构建,你需要在GitLab项目中配置Web Hook,指向Jenkins的...
Gitlab 在 8.0 后默认集成 CI 功能,相比 Hook 来说可以说是更加简单一些,可以省去在服务器自行书写 ...不会操作请参见 Gitlab 上的官方教程 安装 gitlab-runner 这里有两种选择,通过 rpm 包安装或通过 docker 安装
在开始安装 Jenkins 和 GitLab 之前,需要先安装 JDK。使用以下命令安装 JDK: yum -y list java* 安装完成后,使用以下命令测试 JDK 是否安装成功: java -version 二、Jenkins 安装 安装 Jenkins 需要先添加 ...