gitlab安装与更新
安装官方文档链接:https://docs.gitlab.cn/jh/index.html 使用外部 PostgreSQL 服务配置 GitLab:https://docs.gitlab.cn/jh/administration/postgresql/external.html 以下安装方式使用内置postgresql 安装必要组件1yum -y install curl policycoreutils-python openssh-server perl rpm方式源地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/ 123wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.9.0-ce.0.el7.x86_64.rpmrpm -ivh gitlab-ce-12.9.0-ce.0.el7.x86_64.rpm Docker方式12345678910111213141516mkdir -p...
在Windows中安装极狐GitLab Runner(解决 Host key verification failed.)
摘自:https://blog.csdn.net/chqaz123/article/details/131029045 在运行runner的机子上,配置SSH密钥123git config --global user.name "输入你的用户名"git config --global user.email "输入你的邮箱"ssh-keygen -t rsa -C "邮箱名称" 该过程禁止设置密码 复制用户目录下id_rsa.pub的内容 将该数据填入GitLab配置公钥置处 下载GitLab Runner 下载GitLab Runner二进制文件,新建一个文件夹(不要有中文),并将二进制文件放入该文件夹,重命名为“gitlab-runner.exe” 执行部署安装指令如果代码没有子模块 直接开始运行runner,切记使用管理员权限 12.\gitlab-runner.exe install.\gitlab-runner.exe...
Jenkinsfile的使用
什么是流水线jenkins 有 2 种流水线分为声明式流水线与脚本化流水线,脚本化流水线是 jenkins 旧版本使用的流水线脚本,新版本 Jenkins 推荐使用声明式流水线。文档只介绍声明流水线。 1、声明式流水线在声明式流水线语法中,流水线过程定义在 Pipeline{}中,Pipeline 块定义了整个流水线中完成的所有工作,比如 参数说明: agent any:在任何可用的代理上执行流水线或它的任何阶段,也就是执行流水线过程的位置,也可以指定到具体的节点 stage:定义流水线的执行过程(相当于一个阶段),比如下文所示的 Build、Test、Deploy, 但是这个名字是根据实际情况进行定义的,并非固定的名字 steps:执行某阶段具体的步骤。 123456789101112131415161718192021//Jenkinsfile (Declarative Pipeline)pipeline { agent any stages { stage('Build') { ...
Docker部署Jenkins以及更新版本
安装Jenkinsdocker-compose.yml 1234567891011121314151617181920212223version: '3.1'services: jenkins: restart: always image: jenkins/jenkins:2.395 container_name: jenkins user: root ports: # 发布端口 - 12012:8080 # 基于 JNLP 的 Jenkins 代理通过 TCP 端口 50000 与 Jenkins master 进行通信 #- 50000:50000 environment: - "TZ=Asia/Shanghai" - "PATH=$PATH:$HOME/bin:/var/local/apache-maven-3.6.3/bin" volumes: # jenkins...
Jenkins监听gitlab的提交并执行流水线
结合Gitlab Plugin的方式监听gitlab操作第一步(gitlab)创建gitlab的访问令牌 第二步 (Jenkins)Jenkins安装gitlab/gitlab hook插件 安装gitlab 和gitlab hook,gitlab hook的作用是可以接收gitlab hook传过来的参数 这里注意:新版jenkins中不再支持gitlab hook插件,如果插件管理中没看到gitlab hook,可以换成Generic Webhook Trigger,下文中有介绍 第三步(Jenkins)配置gitlab的凭证 第四步(Jenkins) 配置gitlab的连接 第五步(Jenkins)创建jenkins构建项目 第六步(gitlab)配置Hook 允许hook和服务访问本地网络 新版的gitlab为了安全默认禁止了本地局域网地址调用web hook 我们在设置里允许就行,具体步骤如下: 第七步 测试触发1234touch 1.txtgit add .git commit -m...
nexus3配置docker
安装nexus312345678910111213141516171819202122mkdir -p /usr/local/nexus3chown -R 200 /usr/local/nexus3docker run -d \--privileged=true \--name=nexus3 \-u root \-p 8081:8081 \# 这几个端口给docker私有仓库使用,在创建仓库时指定,并且在Dockers中需要添加配置 "insecure-registries": ["ip:port"]-p 8001:8001 \-p 8002:8002 \-p 8003:8003 \# 启动容器时加入时间挂载,使用宿主机时间-v /etc/localtime:/etc/localtime:ro \-v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime:ro \-v /usr/local/nexus3/nexus-data:/nexus-data \-v...
gitlab远程cicd
免密操控(或者使用sshpass工具,看下面)CI/CD实质是将我们手动集成、拷贝部署的方式脚本化,远程部署的重要姿势是要求免密操控。 要让Gitlab Runner部署到远程机器,远程机器必须信任gitlab runner账户。 ps: 免密操控不可以逆向, 就是说可以一个主控方, 多个被控方, 但不可以一个被控方,多个主控方 123经测试,是可以多个主控方,一个被控方的但是必须保证主控方ssh/scp过一次被控方机器然后其他的主控方ssh key就可以在被控方的`id_rsa.pub/authorized_keys`放置多组来实现`一被多主`,如下 先执行su gitlab-runner切换到gitlab-runner账户 在你的CI机器(主控端)上使用 ssh-keygen命令创建公钥,使用ssh-keygen -t...
gitlab-runner安装
Gitlab-runner GitLab Runner是一个开源项目,用于运行您的作业并将结果发送回GitLab。它与GitLab CI结合使用,GitLab CI是GitLab随附的用于协调作业的开源持续集成服务。 要求 GitLab Runner是用Go编写的,可以作为一个二进制文件运行,不需要特定于语言的要求。它旨在在GNU / Linux,macOS和Windows操作系统上运行。只要您可以在其他操作系统上编译Go二进制文件,其他操作系统就可能会运行。 如果要使用Docker,请安装最新版本。GitLab Runner需要最少的Docker v1.13.0。 GitLab...
GitLab Runner注册
参考链接:https://help.aliyun.com/document_detail/106968.html#title-xfl-dp6-kta 大概过程: 获取runner token -> 进行注册 GitLabRunner 类型 shared : 运行整个平台项目的作业(gitlab) group: 运行特定group下的所有项目的作业(group) specific: 运行指定的项目作业(project) locked: 无法运行项目作业 paused: 不会运行作业 GitLabRunner 注册流程获取runner token获取shared类型runnertoken进入系统设置 -> Runners 获取group类型的runnertoken进入group -> Settings -> CI/CD -> Runners -> Group Runners 获取specific类型的runnertoken进入具体的项目 -> Settings -> CI/CD ->...
GitLabPipeline语法
GitLabPipeline语法