我们上一期完成了 gocd 的基本安装,安装完成了,但是存在一个问题,我们安装完成 gocd 是没有任何安全措施的,任何人都可以建立 pipeline 任何人都是 admin, 可以操作我们的 pipeline 等信息,这会造成一个问题,数据的安全没办法保证,因此我们需要有一个密码来确保我们 pipeline 的安全性,那如何在 gocd 中设置密码就成为一个关键的事情,也不能说网上没有设置密码的范本,而是一个完整的范本分散在多个地方,我在此做一个缝合剂,将所有的内容缝合起来,给自己的内容做一个梳理,同时帮助其他人也解决这个问题。 其实 这一部分用文字说起来很简单,采用的是使用文件创建密码的方式 本篇文章主要是基于文件验证的方式来配置gocd 的文件认证体系 (基于插件 gocd-filebased-authentication-plugin) 使用的生成密码的文件的软件是 htpasswd
gocd作为一个一体化的CICD工具在世界五百强中占有很大的分量,我的公司是 Thoughtworks 正是开发维护gocd的公司,我的日常工作中也是使用的gocd, 翻了一些网站,对于gocd的介绍比较少, 恰逢最近我在学习一下gocd 的知识,因此总结一下 gocd 的使用并分享出来。 私以为,对于一个软件来说最重要的其实是使用,而后才是安装,再其次是理解其原理,debug,或者说通过debug了解其原理,进而去翻看其代码。不能只顾着学习如何安装,如何理解其代码,而忘记了软件的最终目的其实是为了简化繁杂的工作。 上面虽然说的流程是先学习如何使用,再学习安装,但是现实情况似乎并不是如想象中那么理想,现实生活中,并没有一个我们可以随意测试的环境,供我们去试错,从试错中学习,因此问题又归结到了安装搭建环境上。这是一个很难绕开的地方,希望以后可以有方案来绕开,当然我们现在看到的一些 managed 的服务做到了这一点,比如managed Kubernetes managed mysql 等等都可以避免我们再不熟悉任何情况的时候手动安装所带来的打击。 我们回归正题,我们本次主要采用 Linode (我也尝试了vultr厂商,但是开了三台机器都无法ssh到机器上,遂放弃,估计是因为特殊上网用vultr的太多导致的问题) 这家云服务厂商来搭建我们的 gocd 环境,因为其可以随开随用,随关随停,不会产生额外的成本,其他的云服务厂商如Linode, digitalOcean 都是云服务厂商对开发者比较友好的公司,如果您暂时没有相关的账号,可以通过我们的连接注册,您也可以得到相关的优惠,同时也相当于通过厂商赞助我,减少我的云服务的实际成本,如果您还未注册,可以通过我的链接进行注册,vultr $10 注册优惠地址,vultr $100 优惠注册地址,不过$100有14天的有效期 ,linode $100 60天有效期 。不过这里提一句,如果大家没有达到相应花费的话,并不会给我奖励云服务免费金额,不过还是希望大家有效利用云服务厂商所给的福利进行学习提升自我能力。
gitbook 是一个极好的工具帮助我们来写一个富有逻辑性的书籍。使用 gitbook cli 可以轻松地帮助我们非写作化的进程,使得我们更加专注于写作本身。 关于 gitbook cli 工具其实写作的内容并不多主要涉及的是两个方面,第一个是对应的 node 版本要选择正确,此步骤可以采用 node 版本控制工具 nvm 解决, 第二个就是 gitbook cli 工具的使用方法。 1. 安装 nvm node 版本管理工具 1.
我们上一节封装了一个按钮,这一节我们继续理解封装的概念和了解封装组件需要注意的事项 首先我们回顾上一篇最后的代码,代码如下 const Button = ({color,text}) =>{ return { type: 'button', props: { className: `btn btn - $ { color }`, children: { type: 'em', props: { children: text, }, }, }, }; } 我们最终调用的形式如下所示 Button({color:‘blue’, text:‘Confirm’}) 进行创建,其实我们发现 Button 和 button 或者和 em 一样都可以 作为一个元素存在,我们可以以 Button 为基础创建特定属性的按钮,将其称为自定义类型的元素 或者可以称为组件元素。和上一节相同,我们可以采用 JSON 结构来描述它
上一节,我们使用 create-react-app 生成示例程序的代码,这一节我们详细介绍下如何进行修改代码 看了一些 React 的书籍,其实 React 使用 JSX 语法,将程序的模块化和抽象做的很好。 我们新建立的程序的目录如下 moz-todo-react ├── README.md ├── node_modules ├── package.json ├── package-lock.json ├── .
最近在公司中的项目中是一个 React native 开发的程序,因此就有了这个文章,搭建第一个 React 的程序。 这个应该会很快写完,毕竟比较简单,这篇文章的目的还是尝试如何创建第一个React程序 学习一个事物,我认为最大限度的降低初学者的成本是最重要的,毕竟创造一个新的软件为了让其他人使用,而不是让做出来的软件自己都不用。 Mozilla 关于 JSX 语法的描述 由于 JSX 是 HTML 和 JavaScript 的结合,因此一些开发人员认为它很直观。其他人则说它的混合特性使它变得混乱。但是,一旦熟悉了它,它将使您能够更快,更直观地构建用户界面,并使其他人一眼就能更好地理解您的代码库。 本文分为下面几个方面 1.
落库是软件开发中的重要的事情,软件接受完成请求后,对请求的结果进行落入输入库是一件很重要的事情,而本篇文章想写出的内容就是 Springboot 连接本地的数据库的使用方案,本章文章也是入门的文章,因此篇幅可能不大。 本篇文章的主要内容有哪些呢? 连接数据库主要分为 启动数据库 设置依赖 连接数据库并测试 增删改查基本功能 因此文章分为下面的三部分 1. 启动数据库 本文章为了演示比较简便采用的是 docker 创建的数据库 Docker 安装很容易安装,此处不再赘述 Docker 命令如何使用将单独写出 本文章只涉及几个日常命令 docker run , docker ps
书写时间 39m59s 预计发布时间 2022-01-01 这篇文章是 springboot 系列的第一篇文章,如何从零开始学习 Springboot. 我认为学习技术,追寻技术的本质没有任何问题,但是在上手技术的时候可能不需要了解太多的技术细节,首先了解如何使用,而后再想办法如何优化也不乏为一条快速学习和实践的道路。 本篇文章的主要思路是,通过实践最简单的 springboot 的项目,实现我们的第一个接口来叩响 Springboot 学习之门。 本章节分为两个部分 新建项目 和 书写第一个接口 新建项目 本篇文章采用 IDEA 创建 springboot 项目, IDEA 开发 Spring 项目有很多的优点,比如代码补全,代码优化,环境内置,还有很多的插件系统,可以大幅度地提高效率,推荐使用 IDEA 进行开发
前言 距离上一次刷LeetCode 好长时间了, 当然上一次也没有刷完, 这次试着刷一遍LeetCode. 使用Java语言, 忽然感觉到有点手生, 需要多刷了. 趁着题目还不多(1956个了…) 进度 完成情况 # 题名 题解 通过率 难度 :ok: 1 两数之和 9671 50.
还是介绍的一般的顺序, VPC是什么, 为什么要用, 对未来有什么好处. 一搜索VPC,发现互联网的顶部厂商, 都排在最前面, 何为VPC(Virtual Private Cloud) 虚拟私有网络, 为何要用VPC, 它可以解决什么问题, VPC有什么好处, 在此学习下. 何为VPC Amazon 首先实现的亚马逊虚拟私有云VPC网络, 其服务允许用户透过 IPsec 虚拟私有网络 (VPN) 来连结 Amazon EC2