gitlab服务搭建与CIDI

  • 安装gitlab

  1. 安装wget

两种方式:

  1. 下载rpm安装包http://mirrors.163.com/centos/7/os/x86_64/Packages/

通过scp命令上传到服务器(可以在/usr/local/下创建目录wget)使用命令

rpm -ivh wget-1.14-15.el7_4.1.x86_64.rpm(wget包名换成自己的) 即可安装成功

  1. 使用yum安装

命令: yum -y install wget

  1. 安装gitlab依赖

yum -y install policycoreutils openssh-server openssh-clients postfix
  1. 启动ssh服务&设置为开机启动

systemctl enable sshd && sudo systemctl start sshd
  1. 设置postfix开机自启,并启动,postfix支持gitlab发信功能

systemctl enable postfix && systemctl start postfix
  1. 开放ssh以及http服务,然后重新加载防火墙列表

firewall-cmd --add-service=ssh --permanent

firewall-cmd --add-service=http --permanent

firewall-cmd --reload

如果报错FirewallD is not running

需要开启防火墙

systemctl start firewalld

如果还报错Failed to start firewalld.service: Unit firewalld.service is masked.

systemctl unmask firewalld.service

然后再开启防火墙执行刚才失败的命令

  1. 下载gitlab包并安装两种方式镜像源安装或者yum下载这里选择镜像源安装

这里注意使用centos8会有问题policycoreutils依赖安装报错,最后也没找到解决办法,最后只能重装系统位centos7.6才成功

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.5.0-ce.0.el7.x86_64.rpm
rpm -i gitlab-ce-12.5.0-ce.0.el7.x86_64.rpm
  1. 修改gitlab配置

修改gitlab配置
vi /etc/gitlab/gitlab.rb
external_url 'http://自定义IP:自定义端口'
重载配置
gitlab-ctl reconfigure
gitlab-ctl restart
  1. gitlab常用命令

gitlab-ctl reconfigure # 重载配置

gitlab-ctl check-config # 检查配置并启动

gitlab-ctl diff-config # 将用户配置与包可用配置进行比较

gitlab-ctl status # 查看所有启动组件的进程和状态

gitlab-ctl service-list # 查看所有服务

gitlab-ctl stop # 停止GitLab服务

gitlab-ctl start # 启动GitLab服务

gitlab-ctl restart # 重启GitLab服务

gitlab-ctl once # 如果GitLab服务已停止则启动服务,如果GitLab服务已启动则重启GitLab服务
  1. 访问gitlab服务器创建用户创建组创建项目

  • 安装git连接远程仓库

wget --no-check-certificate https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.gz
#安装依赖
yum install -y perl-devel
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel 
yum install gcc-c++ perl-ExtUtils-MakeMaker

tar -zxf git-2.9.5.tar.gz
cd git-2.9.5

执行如下命令进行编译安装

# 检查环境,配置安装路径
./configure --prefix=/usr/local/git

# 编译安装
make && make install

配置环境变量

vim ~/.bashrc
文件末尾添加export PATH="/usr/local/git/bin:$PATH"

刷新配置

source /etc/profile

本地配置

git config --global user.name "yourname"
git config --global user.email "your_email@youremail.com"

生成秘钥

ssh-keygen -t rsa -C "your_email@youremail.com"
#查看秘钥
cat .ssh/id_rsa.pub

将秘钥复制到gitlab的ssh页面中

  • 安装nginx

wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz
cd nginx-1.13.7
//执行命令 考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module
//执行make命令
make
//执行make install命令
make install
​​​​​​​/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
  • 安装node

wget https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.xz
tar xvf node-v14.15.1-linux-x64.tar.xz
ln -s /root/node-v14.15.1-linux-x64/bin/node /usr/local/bin/node
ln -s /root/node-v14.15.1-linux-x64/bin/npm /usr/local/bin/npm

npm install -g cnpm --registry=https://registry.npm.taobao.org
ln -s /root/node-v14.15.1-linux-x64/bin/cnpm /usr/local/bin/cnpm
  • 安装gitlab-runner

curl -L [https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh](https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh) | sudo bash
sudo yum install gitlab-runner
sudo service gitlab-runner status

注册runner

sudo gitlab-runner register

token在gitlab web界面获取

配置完成后就可以在web界面发现runner

提交.gitlab-ci.yml文件、

variables:
  DEPLOY_HOST: 172.16.XXX
  DEPLOY_USER: root
  DEPLOY_PATH: /home/tsenf/web/
image: node:12
stages:
  - build
  - deploy
cache:
  paths:
    - node_modules/
    - dist/
before_script:
  - npm install
build:
  stage: build
  tags:
    - imi-runner
  script:
    - npm run build:prod
  artifacts:
    paths:
      - ./dist
    expire_in: 1 week
  only:
    - master
deploy:
  stage: deploy
  tags:
    - imi-runner
  script:
    - sudo yum update && sudo yum install -y sshpass
    - sudo sshpass -p $SSH_PASSWORD scp -r ./dist/* ${DEPLOY_USER}@${DEPLOY_HOST}:${DEPLOY_PATH}
  only:
    - master

SSH_PASSWORD服务器密码在gitlab的web界面上可以配置

配置完后,每次将代码提交到master分支就可以自动部署到线上。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值