Latest

Dockerfiles 官网 doc 笔记

Dockerfiles 官网 doc 笔记

Docker 通过 Dockerfile 中的指令来构建镜像。 Docker 镜像由很多镜像构成,每一层对应一个 Dockerfile 里面的指令。 一个运行中的容器,由镜像的所有层加上可写层构成,所有的读写都在最上面的可写层。 容器应该是无状态的,销毁、重建应该花费最小的配置。 (build context)构建上下文 docker build -f ~/Dockerfile.hi context-dir 通过 -f 指定 Dockerfile 的路径 context-dir 即为构建上下文,该文件夹下面所有的内容都会被传递给 Docker daemon,用来构建镜像。构建上下文包含不相关的内容,会影响构建速度、镜像大小。 可通过编写 .dockerignore 文件,并放置在构建上下文的目录下,达到类似于 .gitignore 的效果,将不必要的文件(夹)不发送给 Docker Daemon。

Golang面试题库

Golang面试题库

Goalng context作用,原理,超时控制golang context的理解,context主要用于父子任务之间的同步取消信号,本质上是一种协程调度的方式。另外在使用context时有两点值得注意:上游任务仅仅使用context通知下游任务不再需要,但不会直接干涉和中断下游任务的执行,由下游任务自行决定后续的处理操作,也就是说context的取消操作是无侵入的;context是线程安全的,因为context本身是不可变的(immutable),因此可以放心地在多个协程中传递使用。 切片和数组区别基础问题。 channel关闭阻塞问题,goroutine如何调度,gopark是怎么回事?PMG模型描述,谁创建的PMG,runtime是怎么个东西,怎么启动第一个goroutinegolang CPS并发模型和PMG模型的理解。 go逃逸分析怎么回事,内存什么时候栈分配什么时候堆分配内存方面问题,这个网上很多,自己理解完整正确。 sync.Map实现原理,适用的场景go 1.9 官方提供sync.Map 来优化线程安全的并发读写的map。该实现也是基于内置map关键字来实现的

0 | kubernetes:学习路线导览与记录

0 | kubernetes:学习路线导览与记录

在之前的后端开发中,多多少少接触过一些 kubernetes 的内容,但是并未深入了解,在接触到 golang 编程以及 CD 发布系统的情形下,知道了 kubernetes 的强大之后,便开始找机会系统了解 kubernetes,因此了解 kubernetes 是一种不可多得的提升自我的方式,不论是从工作上、还是自我提升。 本文路线主要参照此教程给出的建议,记录遇到的问题以及对 kubernetes 的认识。 https://kubernetes.io/ 8月第一周 本周目标 * Kubernetes 的背景 * 安装 Kubernetes 环境 * Kubernetes 基本概念和使用方法 为什么会出现 kubernetes 学习任何系统的之前,了解其出现的背景和意义都是必不可少的,为什么会出现 Kubernetes?它解决了什么问题?有没有其他类似的系统?这里推荐阅读才云科技 CEO 张鑫在 2017 年文章《从风口浪尖到十字路口,