原因:最近在手写docker,看到一段代码会编译错误。过程:最近在学习docker,看到一段示例代码,每次编译都会报错。因此无法继续,只好上网搜索解决方案,费了好大劲才找到给定的可以正常运行的代码://cmd.SysProcAttr.Credential=&syscall.Credential{Uid:uint32(1),Gid:uint32(1)}cmd.SysProcAttr.UidMappings=[]syscall.SysProcIDMap{{ContainerID:5001,HostID:syscall.Getuid(),Size:1},}cmd.SysProcAttr.GidMappings=[]syscall.SysProcIDMap{{ContainerID:5001,HostID:syscall.Getgid(),Size:1},}不过感觉没看到南墙可能是版本差异。如果我切换到作者的版本(1.7.1),它可能会起作用。我使用的版本是(go1.9.1)。集合中正好有一个版本可切换的gvm,所以我开始部署bash<<(curl-s-S-Lhttps://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)#安装ls-al~/.gvm//apt-getinstallbinutilsbisongccmakegvmlistgvmlistallgvminstallgo1.7.1-Bgvmusego1.7.1#常用命令cd~/gitclonegit@github.com:golang/go.gitcdgogitcheckout-b1.4.3go1.4.3lsgitbranchcdsrc./all.bash#编译环境cp~/go~/go1.4-rfgvminstallgo1.7.1--source=https://github.com/golang/go#Wall结语整个上午就这样过去了,总算还是有收获的,所以在群里分享下自己的心得。结果老大说一般开发不用多版本,特系列文章的分享我哭了orz。暗语不易。请分享和喜欢。本文由博客发布平台OpenWrite发布!欢迎关注最新内容公众号:
