摘要:
golang项目中使用条件编译 C语言中的条件编译 golang中没有类似C语言中条件编译的写法,比如在C代码中可以使用如下语法做一些条件编译,结合宏定义来使用可以实现诸如按需编译release和debug版本代码的需求 golang中的条件编译 golang支持两种条件编译的实现方式 build 阅读全文
摘要:
概览 Secret是用来保存小片敏感数据的k8s资源,例如密码,token,或者秘钥。这类数据当然也可以存放在Pod或者镜像中,但是放在Secret中是为了更方便的控制如何使用数据,并减少暴露的风险。 用户可以创建自己的secret,系统也会有自己的secret。 Pod需要先引用才能使用某个sec 阅读全文
摘要:
## 概览 Secret是用来保存小片敏感数据的k8s资源,例如密码,token,或者秘钥。这类数据当然也可以存放在Pod或者镜像中,但是放在Secret中是为了更方便的控制如何使用数据,并减少暴露的风险。 用户可以创建自己的secret,系统也会有自己的secret。 Pod需要先引用才能使用某个 阅读全文
摘要:
编排文件技巧 使用资源时指定最新稳定版的API version 编排文件应该纳入版本控制,这样可以在必要的时候快速回滚,同样也有利于资源恢复和重建 使用YAML格式而不是JSON格式,尽管两种格式的文件可以相互转换,但是YAML格式更易读 使用单一的文件组织相关资源,单文件比多文件更好组织管理,可以 阅读全文
摘要:
golang reflect包使用解析 参考 2个重要的类型 Type Value 其中Type是interface类型,Value是struct类型,意识到这一点很重要 Type和Value拥有的同名方法 Type独有的方法 Value独有的方法 以上列出的方法及备注只是为了方便理解和记忆,使用时 阅读全文
摘要:
Don't communicate by sharing memory, share memory by communicating. Concurrency is not parallelism. Channels orchestrate; mutexes serialize. The bigge 阅读全文
摘要:
有时候下载新的文件或安装新的包 但是却搞不清默认放在哪个目录了,这个时候可以使用locate命令进行快速模糊查找 比如我使用 在一台没有配置GOPATH环境变量的主机上安装bolt命令的时候不清楚默认放在什么位置了,我只要执行如下命令就可以搜索到bolt的位置 会有类似输出 可以得知go get命令 阅读全文
摘要:
工作需要,将主机上的部分镜像导出为tar文件,放便在其他主机上使用 用python实现了一个批量打包脚本: 运行上述脚本后,会在/tmp/xfleet下生成所有的tar包,之后将此目录下的tar文件打包成一个压缩包 将ufleetImages.tar.gz拷贝到目标主机上,就可以批量导入了 脚本如下 阅读全文
摘要:
最经典的处理方式: 在启动goroutine的时候,传递一个额外的chan型参数,用来接收退出信号,代码如下 在main函数中应该如何发送stop信号呢? 输出: ok,从输出可以看出name为a的这个woker在收到信号之后退出了,过了2s后主函数退出 当我们又2个goroutine的时候情况如何 阅读全文
摘要:
Jenkins安装后首次使用报错: Jenkins: Can't connect to Docker daemon 解决办法: 参照StackOverflow 添加jenkins用户到dockergroup 重启jenkins服务: 阅读全文