CentOS下安装旧版本Docker时出现依赖错误的解决方法

前一篇文章中,我简述了CentOS下安装旧版本软件的方法,该文章以kubeadm为例完成了安装,但不久后我发现该方法对Docker不奏效,需要额为的操作。因此我撰写这篇补充的文章,专门介绍如何安装旧版本Docker。

继续阅读

Tags: , , ,

使用yum安装旧版本软件的方法

由于最近要做关于Kubernetes的一系列漏洞分析,需要安装大量旧版本的Kubernetes,通常安装旧版本软件的方法是直接找到旧版本源码,然后从源码进行构建,但该方案过于复杂,恰好测试环境是CentOS操作系统,那么能不能直接通过CentOS的包管理器yum来安装旧版本软件呢?方法其实很简单。

继续阅读

独行、独居、独思

假期留校的我,难得独居。少的全是琐事,多的尽是自由。
两年过去了,我终于有机会享受片刻的孤独。

继续阅读

解愁。

命运一再的戏弄,让我竟有些惊慌失措。
我到底要怎么走下去,才能让自己不再如此忧愁。

继续阅读

集群化实战之——CentOS 7下使用kubeadm安装kubernetes多机集群(版本1.14)

最近正在学习Kubernetes,但发现官方的文档仅限于配置单机集群(即Master和Node位于同一台机器上),依旧无法判断哪部分属于Master、哪部分属于Node,而互联网上的相关教程、资源大多还停留在1.3、1.7版本,与最新的版本存在大量差异,且内容不够详细。
在踩了无数坑,与Kubernetes激战了好几天后,我决定将1.14版本Kubernetes通过kubeadm的完整安装过程分享出来,希望对大家有所帮助。

继续阅读

三行JavaScript代码屏蔽浏览器的DevTools,保障前端页面的基础安全

尽管大多数浏览器中内置的DevTools为日常开发和调试带来了巨大便利,但在某些需要保证『安全性』的场合,例如在线考试、在线教育、或是一些行业应用,我们也对DevTools『恨之入骨』:抓包、修改数据、插入恶意代码、查看源码、Debug深入原理……
但其实屏蔽DevTools的方法非常简单,简单到只需要三行代码。

继续阅读

使用Apache的Rewrite解决ThinkPHP入口在Public目录的问题

在部署ThinkPHP业务时,我们经常需要将Web服务器根目录指向ThinkPHP源码的public目录,因为该目录内有ThinkPHP的启动脚本,即index.php。但在某些情况下(虚拟主机或Docker甚至Kubernetes等环境下),我们无法直接修改配置文件来将根目录切换到public
但如果这个时候刚好使用Apache作为Web服务器,就可以利用其Rewrite配置来轻松解决这一问题。

继续阅读

探索URL中~符号的起源

在很多高校、组织、机构的网站里,我们经常会看到形如http://example.com/~john/index.html 的URL,其中的~符号异常显眼,但介于主流搜索引擎总是屏蔽特殊符号,且国内使用该URL规则的网站少之又少,想要搜索其源头异常困难。

继续阅读

Tags: , , ,

Nginx通过配置实现单点访问多地存储的文件

最近需要将所在Team的一个静态资源库迁移到阿里云OSS,但在迁移过程中发现大量业务直接通过文件写入的方式向该静态资源库追加文件,这导致了静态资源库的迁移异常困难,而OSS的同步工具ossutil也不能做到实时同步。我灵机一动,想到使用Nginx的Fallback策略来变相完成无缝迁移,即在不影响业务的情况下,使用单点访问多地存储的文件。

继续阅读

Tags: , , ,

雨后奇思,镜中狂想。

倾盆的暴雨终于还是失望地离开了这并未如2016年那般成为水上公园的升升公寓,留下一地充满初夏那独特淫靡气息的大小坑洼,走在上课路上的我突然发现,公寓外的围墙,不知道什么时候居然已竣工。
与市容极不协调的白色墙面尚未干透,散发着的刺鼻气味令重感冒尚未痊愈的我连打了几个喷嚏。我推着再一次半路歇菜的电动车,抬头瞥向低矮的拱门。
—— 只见拱门上歪歪扭扭随意粘贴着两个大字:雅境。

继续阅读

浅谈Heredoc及其使用

相信只要在Shell、PHP、Perl等语言中接触过『多行字符串』的人,对Heredoc以及其特征性的『EOF』标识符不会陌生。但关于Heredoc背后一些有意思的玩法,却很少有人接触。这篇文章为大家介绍一下Heredoc的基础操作,历史由来,及其进阶使用。

继续阅读

Tags: , , , , ,

心有不甘。

人究竟是复杂一点好,还是简单一点好?
是快乐一点好,还是忧伤一点好?
是努力一点好,还是怠惰一点好?
——但无论是哪一种,爱都必不可少。

继续阅读

在Linux中建立后台任务的若干种姿势

由于Linux中SIGHUP信号的存在,导致了当终端Detach(退出终端或网络断开)时,从属于终端的进程也被销毁,导致当前所执行任务停止的问题。而且在日常的使用中,也会遇到需要在一个任务执行的过程中,使用同一个Shell来执行其他任务的情况。这篇文章即来盘点在Linux中建立后台任务的若干种姿势。

继续阅读

就此死心。

没想到是你,竟让我一夜之间失去对女人全部信心。

继续阅读

React Native调试模式与生产模式之间的切换

不久前我接手了一个React Native项目,需要对应用的逻辑进行修改。然而在我自信满满地修改完js文件,放入模拟器执行时,却发现所有修改均未生效。折腾来折腾去才发现是这个工程已经开启了生产模式,然而应该如何返回到调试模式呢?

继续阅读

为MAMP的Web服务器加入gzip压缩功能

MAMP是Web(尤其是PHP)开发者通常在使用MacOS进行Web开发时的最佳选择,然而当有时候我们需要对所开发网站的页面大小进行评估,却发现MAMP默认并未开启gzip压缩(通常线上服务器会开启gzip,优化页面的体积),设置面板中也未找到gzip相关字样。那么我们应该如何开启MAMP的gzip压缩功能呢?

继续阅读

Tags: , , ,

如何使用JavaScript判断一个值是否在一个数组中(续)—— JavaScript&TypeScript中的迭代器

『如何使用JavaScript判断一个值是否在一个数组中』一文里,我提到了使用Array.prototype.includes()Array.prototype.indexOf()两种方法来实现这一需求,但其实对于JavaScript这样一门极为灵活的语言来说,实现方法远不止以上两种。

继续阅读

解决Nginx反向代理下Jupyter Notebook出现无限重连的问题

最近因为需要进行大量的数值分析和科学计算,我在服务器的一台虚拟机上安装了Jupyter Notebook,并使用一台有公网IP的虚拟机对其进行反向代理,却在使用过程中遇到了Python终端无限重连的故障。

继续阅读

Windows如何判断你是否连接网络?其中大有文章!

相信有使用过Windows Vista及以上版本系统的读者,一定遇到过连接网络后Windows任务栏上的网络图标出现黄色感叹号的情况,这通常代表尽管已经连接上了局域网,却并没有获得互联网的访问权限,那么微软是通过什么方法来判断我们是否已经连接上网络了呢?

继续阅读

突如其来的幸福,奔三之路的第一步。

—— 命运真**扯。
正当我正因苦苦寻幸福而不得时,命运却突然将我带入一段未知的感情中。
2018年4月23日到2019年4月24日,这一年时间竟刚好过去,一天不差。
这是不是巧合,我实在无法判断,可命运既然将我从无尽的苦闷中解救出来,让我不至于在悲伤中逐渐失去未来,失去自己的初心,也许也有它独特的用心良苦。

继续阅读