<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[cjzcc1996的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/cjzcc1996</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cjzcc1996]]></copyright><item><title><![CDATA[Docker（八）---Docker安全]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125881413</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125881413</guid><author>cjzcc1996</author><pubDate>Mon, 25 Jul 2022 15:04:49 +0800</pubDate><description><![CDATA[所有容器资源限制的相关信息都在/sys/fs/cgroup/memory/docker此目录下，如果我们建立容器时不设置，那么docker内容器的目录内的文件都继承于/sys/fs/cgroup/memory/docker内的其他文件。此权限的意思是全开，即root用户可以做几乎任何事情，近乎超户。但是此种方式权力又给的太大了不安全，我们可以给白名单。之前我们没有办法做到完全隔离是因为/proc中的资源，容器和宿主机之间是共享的，所以没有做隔离。可以看到运行容器的Pid就在tasks中。......]]></description><category></category></item><item><title><![CDATA[Docker（七）--Docker数据卷管理及插件]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125831414</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125831414</guid><author>cjzcc1996</author><pubDate>Mon, 25 Jul 2022 14:55:31 +0800</pubDate><description><![CDATA[在实际使用过程中，我们需要把容器和数据进行隔离，因为容器在使用过程中可能随时要进行销毁，但是数据要保留下来，所以我们要做数据的持久化。]]></description><category></category></item><item><title><![CDATA[Docker（六）--Docker网络--单机与跨主机(macvlan)容器通信]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125974670</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125974670</guid><author>cjzcc1996</author><pubDate>Mon, 25 Jul 2022 14:37:45 +0800</pubDate><description><![CDATA[容器之间除了使用ip通信外，还可以使用容器名称通信。docker1.10开始，内嵌了一个DNSserver。dns解析功能必须在自定义网络中使用。启动容器时使用--name参数指定容器名称。]]></description><category></category></item><item><title><![CDATA[Docker（五）--Docker网络--源生网络和定义网络]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125974131</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125974131</guid><author>cjzcc1996</author><pubDate>Mon, 25 Jul 2022 14:17:44 +0800</pubDate><description><![CDATA[自定义网络模式，docker提供了三种自定义网络驱动。]]></description><category></category></item><item><title><![CDATA[Linux防火墙之“四链五表”]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125825201</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125825201</guid><author>cjzcc1996</author><pubDate>Sat, 16 Jul 2022 22:01:29 +0800</pubDate><description><![CDATA[防火墙是位于内外网之间的一组软硬件部件的组合，主要目的是保护内外网的数据流通的安全，当外网访问内网的时候发送的数据包必须经过内网的防火墙检验是否符合规则。
能够指定火墙策略的两个工具包：iptables和firewalld
Linux的防火墙体系主要工作在网络层，针对TCP/IP数据包实时过滤和限制，属于典型的包过滤防火墙或称作网络层防火墙(iptables)
Firewalld：只用于管理Linux防火墙的命令程序，属于“用...]]></description><category></category></item><item><title><![CDATA[路由器和交换机的区别和联系]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125824738</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125824738</guid><author>cjzcc1996</author><pubDate>Sat, 16 Jul 2022 20:46:18 +0800</pubDate><description><![CDATA[根据的网络体系划分，自底向上，路由器，而我们常说的交换机（目前有更加高级的，四层交换机，甚至还有七层交换机）]]></description><category></category></item><item><title><![CDATA[CI/CD持续集成与持续交付（五）钉钉报警、ansible自动化构建部署]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125757224</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125757224</guid><author>cjzcc1996</author><pubDate>Thu, 14 Jul 2022 13:23:14 +0800</pubDate><description><![CDATA[接下来我们在上文流水线任务的基础上，利用jenkins中的插件，做一个钉钉报警系统。无论部署上线是否成功，都在钉钉群里报警@某人。首先我们需要在钉钉上创建一个群，这个群是用来接收我们的告警信息的：  注意：此webhook 一定要保留。在jenkins系统设置中添加钉钉机器人：保存后再进来就有机器人的UUID了：我们点击测试后： 我们再进入devops项目中进行配置： jenkins钉钉官方文档：在 pipeline 中使用 | 钉钉机器人插件 在之前的pipline代码之后添加：保存后立即构建： 构建成功]]></description><category></category></item><item><title><![CDATA[持续集成与持续交付（CI/CD）（四）用户管理、分布式构建、创建流水线任务]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125780793</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125780793</guid><author>cjzcc1996</author><pubDate>Thu, 14 Jul 2022 12:53:38 +0800</pubDate><description><![CDATA[书接上文：我们在之前将拉取镜像和运行的任务分离了出来，部署在了server5上，接下来我们再把构建镜像的任务分离出来部署在server6上，让jenkins主机主机只负责触发并分发任务。我们再启一个虚拟机server6，将jenkins主机上的构建任务再分出来：首先在server6上安装jdk：  保存。接下来把 built-in-Node 即本机master的号改为0：然后空闲进程就只有server6了。 现在server6做构建主机需要安装docker-ce：安装完成之后别忘了 docker.conf ]]></description><category></category></item><item><title><![CDATA[CI/CD持续集成与持续交付（三）自动化构建docker镜像]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125737149</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125737149</guid><author>cjzcc1996</author><pubDate>Thu, 14 Jul 2022 11:27:02 +0800</pubDate><description><![CDATA[我们接下来要做的是在jenkins端写好代码，用Dockerfile文件直接构建镜像。此时整合的逻辑大致为：用户把代码通过git提交push到gitlab上，然后gitlab触发jenkins的webhook，通知jenkins做构建。即整体流程为 ：在server3 gitlab服务器上编写dockerfile,然后push到gitlab仓库，再经过gitlab触发jenkins，jenkins主机从server1 harbor仓库中拉取镜像，从而实现自动构建docker镜像，并将构建的镜像推送到harb]]></description><category></category></item><item><title><![CDATA[CI/CD持续集成与持续交付（二）jenkins环境搭建、项目部署]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125778645</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125778645</guid><author>cjzcc1996</author><pubDate>Thu, 14 Jul 2022 10:43:34 +0800</pubDate><description><![CDATA[首先我们先明确主机id及其功能：此时我们再开一个虚拟机用来安装jenkins： jenkins官网下载：Jenkins 的安装和设置国内镜像站：Index of /jenkins/redhat/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirrorjenkins要求java8的jdk：​​​ 可以看到jenkins的端口为8080。注：若是提示java版本原理一直启动不了，可以尝试手动安装更高版本的java包，但必须是java8的；或者用旧一点版本的jenkins。​​ 使]]></description><category></category></item><item><title><![CDATA[CI/CD持续集成与持续交付（一）git简介、gitlab仓库搭建及其简单使用]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125706702</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125706702</guid><author>cjzcc1996</author><pubDate>Thu, 14 Jul 2022 10:14:43 +0800</pubDate><description><![CDATA[首先我们会在操作系统上新建一个目录，将原始版本标记为V1，当有新版本时，复制一份改动一下标记为V2。再有新版本时复制一份改动一下标记为V3。第一种管理方式太过繁琐，最好有一个集中化的版本控制系统集中进行管理，由服务器端帮我们进行管理版本。但是此种方式下，只要server端一挂掉版本控制就失效了。业界内使用最广的版本控制系统，此种方式的好处是，它不仅有server端，每个软件开发人员也能在本地操作系统上维护一套软件版本，这样的话，当server端出现故障时，不会影响本地的开发。当server端维护好了的时候，]]></description><category></category></item><item><title><![CDATA[DNS和CDN的原理及关系]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125730760</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125730760</guid><author>cjzcc1996</author><pubDate>Mon, 11 Jul 2022 21:36:45 +0800</pubDate><description><![CDATA[如果网站没有设置CDN缓存，那么用户访问该网站的过程大概分为以下几个步骤：1.用户在浏览器中输入要访问的域名；2.浏览器向本地DNS查询域名的IP地址；3.本地DNS向根服务器发起请求；4.根服务器向本地服务器返回域名所属的顶级服务器；5.顶级服务器将域名所属的权威服务器返回给本地DNS；6.本地服务器向权威服务器发起请求，权威服务器将域名对应IP地址返回给本地服务器；7.本地服务器将IP地址返回给用户，完成整个解析过程。CDN的全称是Content Delivery Network，即内容分发网络，它能够]]></description><category></category></item><item><title><![CDATA[http状态码]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125730047</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125730047</guid><author>cjzcc1996</author><pubDate>Mon, 11 Jul 2022 21:00:51 +0800</pubDate><description><![CDATA[当浏览者访问一个网页时，浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前，此网页所在的服务器会返回一个包含 HTTP 状态码的信息头（server header）用以响应浏览器的请求。 常用的标红：...]]></description><category></category></item><item><title><![CDATA[docker（四）搭建harbor企业级仓库]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125702628</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125702628</guid><author>cjzcc1996</author><pubDate>Sun, 10 Jul 2022 10:26:08 +0800</pubDate><description><![CDATA[虽然Docker官方也提供了公共的镜像仓库，但是从安全和效率等方面考虑，部署我们私有环境的Registry也是非常必要的。 所以Harbor孕育而生，Harbor是由VMware公司开源的企业级的Docker Registry管理项目，它包括权限管理(RBAC)、LDAP、日志审核、管理界面、自我注册、镜像复制和中文支持等功能。Harbor 的所有组件都在 Docker 中部署，所以 Harbor 可使用 Docker Compose 快速部署。
注意： 由于 Harbor 是基于 Docker Regis]]></description><category></category></item><item><title><![CDATA[docker仓库（三）仓库的搭建及官方私有仓库的加密认证]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125672155</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125672155</guid><author>cjzcc1996</author><pubDate>Sun, 10 Jul 2022 10:01:07 +0800</pubDate><description><![CDATA[在生产环境中，有些环境下可能是不被允许连接外网的，所以此时我们就需要搭建一个本地的私有仓库。我们也可以在docker官网创建一个账号，可以把我们本地的镜像上传到官网：Docker Hub  创建账户后，在本机登陆刚刚创建的账号： 用户的登录信息将会保存到用户主目录下 .docker 中，这样就可以保证后面我们不需要频繁的login： 在网页端创建仓库：在本机 先更改tag和仓库信息，然后再push上传： 可以看到在我们刚刚创建的仓库里面已经有我们上传的镜像了：我们也可以登出docker：首先进入aliyun]]></description><category></category></item><item><title><![CDATA[docker（二）镜像构建、Dockerfile及镜像优化]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125702133</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125702133</guid><author>cjzcc1996</author><pubDate>Sun, 10 Jul 2022 09:44:25 +0800</pubDate><description><![CDATA[镜像通过分层，如果本地已经有了，不管这一层属于哪个镜像，因为每一层都有独立的标识（都是唯一的），只要docker判断有这一层，那它就不会进行重复的拉取。包括在上传仓库的时候也是一样的，仓库内存储时也是按照层来存储的，如果远程仓库有这一层了，就不需要重复上传了，节省了带宽。 docker使用 Copy-on-Write 的机制（可写容器层），当我们想保存一个数据的时候，由于镜像是只读的，当我们创建容器时，是在镜像层的上面创建一个可写容器层，所有对容器的修改都会放置在可写容器层上，只要这个容器不被释放，这个数据]]></description><category></category></item><item><title><![CDATA[docker（一）简介、环境搭建]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125652477</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125652477</guid><author>cjzcc1996</author><pubDate>Sun, 10 Jul 2022 09:11:51 +0800</pubDate><description><![CDATA[Docker是一个开源的应用容器引擎，是一个轻量级容器技术，是一个应用打包、分发、部署的工具，基于Google公司推出的Go 语言实现，遵从Apache 2.0 协议。docker​​​​​​​支持将软件编译成一个镜像；然后在镜像中各种软件做好配置，将镜像发布出去，其他使用者可以直接使用这个镜像；运行中的这个镜像称为容器。容器是软件的可执行单元，它采用通用方式封装了应用程序代码及其库和依赖项，因此可以随时随地运行容器（无论是在桌面、传统 IT 还是云端）。为此，容器利用操作系统 (OS) 虚拟化形式，这里会]]></description><category></category></item><item><title><![CDATA[十大排序算法（一）]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125668590</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125668590</guid><author>cjzcc1996</author><pubDate>Sat, 09 Jul 2022 22:29:50 +0800</pubDate><description><![CDATA[比较相邻的元素。如果第一个比第二个大，就交换他们两个。对每一对相邻元素作同样的工作，从开始第一对到结尾的最后一对。这步做完后，最后的元素会是最大的数。针对所有的元素重复以上的步骤，除了最后一个。持续每次对越来越少的元素重复上面的步骤，直到没有任何一对数字需要比较。


 二、选择排序

1、算法步骤

首先在未排序序列中找到最小（大）元素，存放到排序序列的起始位置。再从剩余未排序元素中继续寻找最小（大）元素，然后放到已排序序列的末尾。重复第二步，直到所有元素均排序完毕。


三、插入排序

1、算法步骤 
]]></description><category></category></item><item><title><![CDATA[session和cookie详解]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125684714</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125684714</guid><author>cjzcc1996</author><pubDate>Fri, 08 Jul 2022 20:11:06 +0800</pubDate><description><![CDATA[工作原理图： 工作原理图：相同点：两者都是一种记录用户状态的机制，都是为了减少客户端和服务器端之间的传输的冗余数据，提高两者之间的数据传输速率。不同点：web开发发展至今，cookie和session的使用已经出现了一些非常成熟的方案。在如今的市场或者企业里，一般有两种存储方式：...]]></description><category></category></item><item><title><![CDATA[zabbix监控（三）主动回传、proxy代理、告警平台监测]]></title><link>https://blog.youkuaiyun.com/cjzcc1996/article/details/125613539</link><guid>https://blog.youkuaiyun.com/cjzcc1996/article/details/125613539</guid><author>cjzcc1996</author><pubDate>Thu, 07 Jul 2022 09:03:18 +0800</pubDate><description><![CDATA[之前的配置都是server端主动采集agent端的数据，此种方式agent端越多zabbix主机的压力就越大，接下来我们让agent端主动将数据发给agent端：(主动被动完全取决于agent端link的模板)在网页前端，将server2上的模板取消连接并清理： 重新选择模板并更新，此模板是agent端主动将信息回传回来：可以看到监控项已变更： 可以看到此时已经主动获得了数据：此时agent主动回传数据已经完成。上面虽然提高了sever端的效率，但是server端就一个，他没有得到水平扩容的能力：(可以查看]]></description><category></category></item></channel></rss>