Jenkins

Docker+Kubernetes=?已成为快速部署和发布的行业新规范

守給你的承諾、 提交于 2020-07-28 17:50:30
导语 同时使用Docker和Kubernetes已成为行业中更快的应用程序部署和发布的新规范。 正文 当前,有越来越多的公司开始接受云原生的DevOps之旅,了解Docker和Kubernetes之类的工具对实现数字化转型的重要性。 随着公司迁移其基础架构和体系结构以适应云原生和数据驱动时代不断发展的技术趋势,我们已经看到了对云计算、容器化和编排解决方案的兴趣。 在谈论云原生时,很难忽略诸如Docker和Kubernetes之类的名称,它们彻底改变了我们大规模创建、开发、部署和交付软件的方式。 Docker实战 由于Docker容器提供了自己的OS库,因此Docker通过帮助开发人员在相同的环境中运行应用程序而使开发人员真正轻松了起来,而没有诸如依赖项或OS之类问题的麻烦。在引入Docker之前,开发人员会将代码发送给测试人员,但是由于各种依赖性问题,很多时候代码无法在测试人员的计 算机上运行,但在开发人员的计算机上却可以正常工作。 引入Docker之后,情况发生了变化:测试人员和开发人员现在在Docker容器上运行相同的系统,因此不再有混乱——两者都可以在Docker环境中运行应用程序而没有任何困难或依赖关系上的差异。 使用Docker构建和部署容器 Docker帮助开发人员在容器内创建和部署软件。它是一个开源工具,可以让我们“在任何地方构建,发布和运行应用程序”。

pipeline 语法实例二

故事扮演 提交于 2020-07-28 16:55:17
pipeline 语法实例二 Node 前端 We b页面, npm 是 JavaScript 的包管理工具。 /*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/* pipeline { agent any options { timestamps() timeout(10) } stages { stage('Checkout') { steps { git branch: '${branch_name}', credentialsId: 'GitLabAccess', url:'${repo_name}' } } stage('Build') { steps { nodejs('nodejs_12.9.1'){ sh "npm install" sh "npm run build" //sh "npm run build:physics" } } } /*stage('Package') { steps { sleep 1 sh """ cd /home/jenkins/workspace/jenkins-quality-front-ci if [ -d "quality-front" ]; then rm

为你的 GitLab 项目使用 k3s Kubernetes 集群

梦想的初衷 提交于 2020-07-28 13:32:05
本文首发于: Jenkins 中文社区 原文链接 作者:Luc Juggery 译者:s1mple_zj TL;DR k3s 是一个轻量级的 Kubernetes 发行版(小于 40 MB),它非常容易安装,仅需要 512 MB 的 RAM。对 IoT 设备、边缘计算以及运行 CI 任务来说均是一个完美的选择。这篇文章中,我将创建一个 k3s 集群然后向你们展示怎样将它集成到一个 GitLab 项目中。 关于 k3s k3s 是一款由 Rancher Labs 开发的轻量级的 Kubernetes 发行版。 它作为 Kubernetes 认证的发行版使用最低的系统要求: Linux 3.10+ 每个服务器 521 MB ram 每个节点 75 MB ram 200 MB 磁盘空间 x86_64,ARMv7,ARM64 这使得 k3s 非常适合 IoT 相关的事物。 在 GitLab 创建一个项目 在安装 k3s 之前,我们先在 GitLab 上创建一个名为_api_的新项目。 创建完成后,我们进入到_Operation_>_Kubernetes_菜单。 这里我们有两种选择: 我们可以在 GKE(Google Kubernetes Engine)上创建一个 Kubernetes 集群。 我们可以导入一个已存在的 Kubernetes 集群的配置(不管在哪里创建的)。 **注意:*

江娱互动「世界争霸」产品迁移至腾讯云云函数的实践

你。 提交于 2020-07-28 07:52:31
社交,是游戏玩家的一项基本需求,那么,在游戏中,成熟稳定的聊天系统担负着玩家交流的重要使命。 做为一家从不 996 的游戏创业公司,我们的两款产品《世界争霸》和《农场小镇》都在使用自研的聊天系统。随着在线人数逐渐增多,系统的稳定性和成本面临着更多的考验。于是,升级技术栈势在必行。 至此,核心目标已经出现,以保障性能为前提,同时做到省事和省钱。最终,腾讯云的云函数产品进入了我们的视线。 云函数,无需服务器,省去运维烦恼,只需要关注于业务逻辑代码,可谓省事。按量付费,用多少花多少,避免业务低谷期的资源浪费,可谓省钱。非常适合游戏聊天系统 API 这种复杂度低的中小型需求。 那么接下来我们关注的是,现有系统能不能无缝迁移过去,也就是云函数能不能满足目前所有的特定需求,我们一个一个来说。 第一个需求:少改代码 原来的 API 部分是采用 swoole 做为底层扩展,部署在腾讯云的 CVM 上,并使用腾讯云的负载均衡来接收外部请求。代码层面则是使用了 composer 进行包管理,一款开源的 easyswoole 框架做为 http 业务的架子。 换用云函数的方案的话,非代码层面就变成了腾讯云 API 网关加云函数来提供服务,而为了方便,依然需要继续使用 composer 进行包管理。原来基于 swoole 的 http 框架无法继续使用,改代码的重点就在这里。 首先就是逻辑入口

【Jenkins操作系列】安装Git和Maven和Jenkins

♀尐吖头ヾ 提交于 2020-07-28 03:49:01
apt-get: command not found,这个的出现是因为系统的原因。 Linux系统分为两种: 1.RedHat系列:Redhat、Centos、Fedora等 2.Debian系列:Debian、Ubuntu等 RedHat系列的包管理工具是yum Debian系列的包管理工具是apt-get 查看系统版本: cat /proc/version 安装Git sudo yum install git 查看是否成功 git --version 输出结果: git version 1.8.3.1 顺便说一下,yum安装git被安装在/usr/libexec/git-core目录下 安装Maven 安装包 上传到服务器上,并解压缩到指定包下 tar -zxvf apache-maven-3.6.3-bin.tar.gz -C /usr/local/maven 配置环境变量 vi /etc/profile export MAVEN_HOME=/usr/local/apache-maven-3.6.3 export PATH=$MAVEN_HOME/bin:$PATH 刷新环境变量 source /etc/profile 检查版本 mvn -v 安装Jenkins sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg

2020,6招玩转 Appium 自动化测试

好久不见. 提交于 2020-07-28 03:34:33
Appium是个什么鬼 Appium是一个移动端的自动化框架,可用于测试原生应用,移动网页应用和混合型应用,且是跨平台的。可用于IOS和Android以及firefox的操作系统。原生的应用是指用android或ios的sdk编写的应用,移动网页应用是指网页应用,类似于ios中safari应用或者Chrome应用或者类浏览器的应用。混合应用是指一种包裹webview的应用,原生应用于网页内容交互性的应用。 重要的是Appium是跨平台的,何为跨平台,意思就是可以针对不同的平台用一套api来编写测试用例。 Appium环境搭建 先把一下环境装好备用 打开Appium 应用程序,点击3监测一下环境 红色框框代表iOS测试所需要的,绿色代表安装成功 开战实际项目开发 自动化测试项目搭建 .zip 是.app的压缩文件,当然你也可以直接用XXX.app (xcode编译项目,Products目录下有XXX.app) common 里包含着测试公用的.rb文件 gemfile 所需的gem包 spec 文件包含所有模块的测试rb文件 模拟器运行项目 配置appium APP路径要对 设备模拟器和版本匹配要对 红框内必选(boudleID也可以不写) 配置完点击=> 问号(inspector) 弹出inspector 视图元素检查页面 点击完Record 对于如何编写测试代码,两种方式

Vulnhb 靶场系列:Jarbas1.0

爱⌒轻易说出口 提交于 2020-07-27 23:00:28
靶场镜像 官网 信息收集 攻击机kali IP地址 通过nmap 进行主机发现,发现目标机IP地址 nmap -sP 192.168.227.1/24 参数说明: -sP (Ping扫描) 该选项告诉Nmap仅仅 进行ping扫描 (主机发现),然后打印出对扫描做出响应的那些主机。 没有进一步的测试 (如端口扫描或者操作系统探测)。 这比列表扫描更积极,常常用于 和列表扫描相同的目的。它可以得到些许目标网络的信息而不被特别注意到。 对于攻击者来说,了解多少主机正在运行比列表扫描提供的一列IP和主机名往往更有价值。 确定下来目标机的主机信息后,通过nmap 探测目标机的服务信息及开放的端口信息 nmap -A 192.168.227.139 可以看到开放了web 服务80端口和8080端口,首先访问一下80端口 没有发现什么有用信息,进一步探测一下web 目录,这里使用kali 下的dirb,指定类型为html文件 dirb http://192.168.227.139/ -X .html 发现两个文件,访问http://192.168.227.139/access.html 发现三组MD5加密的账号密码,解密之 尝试用这三组账号密码登录ssh和mysql,发现并不能登录 访问8080端口 尝试登录,发现第三组账号密码成功登录 漏洞挖掘 我们发现8080端口开放的服务,存在漏洞利用

一分钟开始持续集成之旅系列之:微信公众号服务器端应用(以 Java 后端为基础)

老子叫甜甜 提交于 2020-07-27 14:28:25
作者:CODING - 朱增辉 前言 本文是 CODING 持续集成自定义构建节点功能 的使用教程,通过一个为微信公众号启用开发配置的 Demo 演示,讲解如何接入自定义构建节点,如何使用自定义构建节点进行构建、测试、部署服务器。 准备工作 环境 本文会使用到如下工具,请确认已安装,或者根据链接的文档进行安装。 git Java Maven 开发微信公众号还需要提前准备好下面两项资源。 微信公众号 微信公众号可以在 微信公众平台官网 申请,平台也提供了详细的 开发帮助文档 。 服务器 这里的服务器指的是能够让微信服务器访问到的计算机,用来运行本文的服务端程序。很多公司都提供了云服务器租赁,还是很方便获取的。这里推荐腾讯云平台的 CVM ,临时用的话,竞价实例真的很划算。 代码 本文重点是介绍 CODING 平台持续集成自定义构建节点功能 ,具体的业务逻辑并不重要,这里已提前准备好了一份 演示代码 ,可以结合下面的步骤实际操作。 代码本身比较简单,需要特别说明的是,为了能够重复部署,代码引入了 Spring Boot Actuator 支持调用 API 退出服务器进程。 步骤一 准备构建计划 在左侧菜单栏选择 构建计划 ,在打开的页面中点击 新建构建计划配置 。 为简化构建计划配置,CODING 提供了丰富的模板供选择,这里我们选择 Java 编译部署 jar 包 模板。

Jenkins Pipeline 部署 SpringBoot 应用

六月ゝ 毕业季﹏ 提交于 2020-07-27 13:51:28
一. 安装依赖包 yum install -y wget yum install -y gcc-c++ yum install -y zlib-devel perl-ExtUtils-MakeMaker yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker yum install -y openssh-clients yum install -y fontconfig 二. 环境准备 1.安装JAVA环境 yum -y install java-1.8.0-openjdk #检测是否安装成功 java -version 修改/etc/profile文件,添加JAVA_HOME vi /etc/profile 在文件的最后面,加上以下代码 export JAVA_HOME=/java/jdk1.8.0_171 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:$PATH 在执行完保存过后,必须执行以下source /etc/profile