Debian/Ubuntu 上各种 Docker 发布版本的区别(docker-io, docker-ce, docker-ee)

在 apt 安装的时候可能会疑惑怎么有这么多种 docker,并且读 docker 官方目录的时候还要卸载另外的,并称其他为 “过时的”,然而可能却并不是那么过时以至于导致兼容性问题。

一句话概括:docker-ce 由 docker.com,docker-io 由 Debian 提供,安装更加方便,只需一行命令,并且我也推荐用 docker-io

阅读更多

git-解决 Windows 下Git SSH 代理设置

不知道为啥,我电脑上的 HTTP Git token 过段时间就过期,又要重新授权,就很烦。想到 SSH 没有这个但是速度比较慢,HTTP 设置很简单。SSH稍微复杂一些今天就介绍一下。

阅读更多

简析TCP的三次握手与四次分手

TCP是什么?

具体的关于TCP是什么,我不打算详细的说了;当你看到这篇文章时,我想你也知道TCP的概念了,想要更深入的了解TCP的工作,我们就继续。它只是一个超级麻烦的协议,而它又是互联网的基础,也是每个程序员必备的基本功。

阅读更多

正则表达式中的括号用法

正则表达式的() [] {}的意思。

  • () 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串。
  • (\s*) 表示连续空格的字符串。
  • [] 是定义匹配的字符范围。比如 [a-zA-Z0-9] 表示相应位置的字符要匹配英文字符和数字。[\s*] 表示空格或者* 号。
  • {} 一般用来表示匹配的长度,比如\s{3} 表示匹配三个空格,\s[1,3]表示匹配一到三个空格。
  • (0-9) 匹配 '0-9' 本身。 [0-9]* 匹配数字(注意后面有* ,可以为空)[0-9]+ 匹配数字(注意后面有 +,不可以为空){1-9} 写法错误。
  • [0-9]{0,9} 表示长度为 0 到 9 的数字字符串。
阅读更多

git-代码冲突常见解决方法

如果系统中有一些配置文件在服务器上做了配置修改,然后后续开发又新添加一些配置项的时候,
在发布这个配置文件的时候,会发生代码冲突:

阅读更多

Python-中文编码

Python UnicodeEncodeError: ‘gbk’ codec can’t encode character 解决方法

使用Python写文件的时候,或者将网络数据流写入到本地文件的时候,大部分情况下会遇到:UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position ... 这个问题。 网络上有很多类似的文件讲述如何解决这个问题,但是无非就是encode,decode相关的,这是导致该问题出现的真正原因吗?不是的。

阅读更多