抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

golang/dep 包管理(一)原理

Golang 包依赖管理工具

golang 一直以来一个为人诟病的问题就是没有完善可用的包管理工具(类比 java 的 gradle 和 maven,Python 的 pip,nodejs 的 npm),这与 golang 的追求简约高效的原则有关。golang 1.5版本之后引入了vendor机制,1.8之后终于有了官方的包管理工具,golang/dep

go docker client 使用教程(二)

Docker client for golang 使用教程(二):网络 端口绑定 将微服务放到 docker 容器中运行的时候,端口绑定是一个无可避免的问题。在 docker 命令行中,可以通过简单的-p 8080:80解决问题。但在 golang client 中,问题却变得复杂起来。 首先来看创建容器的函数签名func (cli *Client) ContainerCreate(ctx ...

使用mage实现交叉编译

golang 为微服务的开发带来了无可比拟的便利。使用的时候也自然而言发现一些问题,因为 golang 不像 Java 有 Maven 这样的打包工具,而是直接编译成二进制可执行文件,所以在开发机(macOS)上编译出来的可执行文件是无法在服务器或者 docker 容器里运行的,如果把源代码提交上去服务器编译,又会带来重新下载依赖包的麻烦(golang 的包依赖关系管理方面的缺失是我认为 golang 为数不多的缺点之一)。最近一直在思考有没有类似 Makefile 的方式来解决这件事(如果只想交叉编译的话直接用 go build或者借助 gox 等工具也不是不可以,可还是,不够方便)。直到之前 ing 大神给我推荐了 Hugo 这个静态博客框架,虽然目前因为找不到合适的博客主题没有从 hexo 迁移过去,但看源代码的时候有了一个重要的收获,就是mage
关于 mage 的基本安装和使用详见mage 使用教程(一)

mage 使用教程(一)

Mage 是使用 golang 开发的类 Make的软件构建工具。借助这个工具只需要编写符合 golang 语言规范的代码就可以实现比较复杂的源代码编译。

golang 处理 yaml 格式数据

YAML 格式的数据常用来作为配置文件使用, 因此相对来说字段比较固定, 在 golang 中进行解析时跟上一篇提到的解析 json 数据有所区别

redis的杂七杂八

Redis 是目前应用比较广泛的数据库。最近的实验室项目中用到它作为实时数据库。把这个过程中学到的一些东西记录下来,权且作为小白的入门参考吧