请选择 进入手机版 | 继续访问电脑版

Gitlab CI-CD自动化部署SpringBoot项目

[复制链接]
黎平 发表于 2021-1-2 17:40:59 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
文章目次



一、概述

本文主要记载如何通过Gitlab CI/CD自动摆设SpringBoot项目jar包。
二、前期准备

准备三台 CentOS7服务器,分别摆设以下服务:
序号系统IP服务1CentOS7192.168.56.10Gitlab2CentOS7192.168.56.11Runner (安装Docker)3CentOS7192.168.56.12SpringBoot 项目 jar 包(安装jdk、maven等)上述服务也可以只用一台CentOS7,将所有步调都摆设在同一呆板上,但是更发起分开摆设;
三、总体架构图


说明:

  • Gitlab Server 用于摆设Gitlab远程堆栈,对CPU和内存要求比力高,发起4核CPU,4GB以上内存;
  • Runner Server 用于摆设执行.gitlab-ci.yml 文件中界说的 stage(阶段);需要具有访问 Gitlab 堆栈的权限,可以下载代码,通过注册方式(gitlab-runner register)实现;
  • Your Laptop Server 用户摆设你的应用步调,这里就是SpringBoot的 jar 包,需要提前安装 JDK 和 Maven 并设置好情况变量;
四、情况搭建

1、情况准备(可选)

三台服务器执行以下下令:
  1. yum -y upgradeyum -y install wgetyum -y install vim
复制代码
2、Gitlab安装

参考地点:
https://about.gitlab.com/install/#centos-7
https://blog.csdn.net/duyusean/article/details/80011540
(1)安装并设置须要的依赖

  1. sudo yum install -y curl policycoreutils-python openssh-serversudo systemctl enable sshdsudo systemctl start sshdsudo firewall-cmd --permanent --add-service=httpsudo firewall-cmd --permanent --add-service=httpssudo systemctl reload firewalld
复制代码
(2)安装邮件服务

  1. sudo yum install postfixsudo systemctl enable postfixsudo systemctl start postfix
复制代码
(3)添加 gitlab 镜像

参考地点:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
  1. wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-13.4.0-ce.0.el7.x86_64.rpm
复制代码
(4)安装 gitlab 安装下令

  1. rpm -i gitlab-ce-13.4.0-ce.0.el7.x86_64.rpm --nodeps --force
复制代码
安装乐成后图片:

(5)修改gitlab设置文件指定服务器ip和自界说端口

  1. vim  /etc/gitlab/gitlab.rb
复制代码
(6)重置并启动GitLab

  1. gitlab-ctl reconfiguregitlab-ctl restart
复制代码
提示 "ok: run:"体现启动乐成
(7)访问 GitLab页面

如果报502,等待一段时间后再刷新试试,一般1-2分钟左右。

本文设置的账号:root ,新暗码:11112222
3、安装 Runner

参考官方文档:https://docs.gitlab.com/runner/install/linux-manually.html#install-gitlab-runner-manually-on-gnulinux 中的 Using binary file Install
(1)下载一个二进制文件

  1. sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
复制代码
(2)修改执行权限

  1. sudo chmod a+x /usr/local/bin/gitlab-runner
复制代码
(3)创建 GitLab CI 用户

  1. sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
复制代码
(4)安装并作为服务运行

  1. sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runnersudo gitlab-runner start
复制代码
如果遇到提示 sudo: gitlab-runner: command not found,切换到 root 用户,可以去掉 sudo 执行上面下令。
(5)注册 Runner

参考地点:https://docs.gitlab.com/runner/register/index.html
执行 gitlab-runner register 下令:
  1. [root@localhost bin]# gitlab-runner registerRuntime platform                                    arch=amd64 os=linux pid=21527 revision=4e1f20da version=13.4.0Running in system-mode.Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):http://192.168.56.10/Please enter the gitlab-ci token for this runner:PwF1sZPX_zsB-xChSKjHPlease enter the gitlab-ci description for this runner:[localhost.localdomain]: test ci cd descPlease enter the gitlab-ci tags for this runner (comma separated):my-tag,other-tagRegistering runner... succeeded                     runner=PwF1sZPXPlease enter the executor: ssh, virtualbox, parallels, shell, docker-ssh, docker+machine, docker-ssh+machine, kubernetes, custom, docker:dockerPlease enter the default Docker image (e.g. ruby:2.6):maven:3.3.9-jdk-8Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
复制代码
注:这里选择的docker方式,所以服务器上还需要额外多安装docker
参考:https://zhuanlan.zhihu.com/p/54147784
[code]#!/bin/bash# 移撤消旧的版本sudo yum remove docker \                  docker-client \                  docker-client-latest \                  docker-common \                  docker-latest \                  docker-latest-logrotate \                  docker-logrotate \                  docker-selinux \                  docker-engine-selinux \                  docker-engine# 删除所有旧的数据sudo rm -rf /var/lib/docker#  安装依赖包sudo yum install -y yum-utils \  device-mapper-persistent-data \  lvm2# 添加源,使用了阿里云镜像sudo yum-config-manager \    --add-repo \    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 设置缓存sudo yum makecache fast# 安装最新稳定版本的dockersudo yum install -y docker-ce# 设置镜像加速器sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题

专注素材教程免费分享
全国免费热线电话

18768367769

周一至周日9:00-23:00

反馈建议

27428564@qq.com 在线QQ咨询

扫描二维码关注我们

Powered by Discuz! X3.4© 2001-2013 Comsenz Inc.( 蜀ICP备2021001884号-1 )