首页 > 云计算 > > ubunto 18.10 docker 安装完全攻略
写下此文,纪念这几天折腾docker遇到的坑。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。-----百度百科
要了解更多的自行去翻阅相关资料,假如你还在为程序运行的一大堆依赖库、依赖环境、不同系统版本的差别而导致程序崩溃的问题而掉头发,请及时使用docker,能够有效治疗脱发。
安装:
安装参照docker官方文档,很详细,官网地址:docker官网
简单介绍下流程:
卸载旧版本(没有也跑一下吧):sudo apt-get remove docker docker-engine Enterprise Container Platform | Docker containerd runc
更新apt:sudo apt-get update
设置apt允许http来下载包:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common添加docker官方GPG key:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
设置稳定版本的docker库地址:
sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"更新apt:sudo apt-get update
安装:
sudo apt-get install docker-ce docker-ce-cli containerd.io先跑个helloworld :`sudo docker run hello-world`
到这里已经安装成功了,但是,这只是踩坑的开始
docker-compose被成为docker三利器之一,在上面的安装过程中已经自动安装上来,但是,很抱歉,这个版本的docker-compose在ubunto18.10的版本下无法正常使用:
参看链接docker-compose安装教程 .
在使用docker封装应用程序时,推荐使用alpine,具体信息参考:alpine 。
接下来遇到了一个让我掉了不少头发的问题:通过go build之后生成的二进制文件在docker镜像内无法识别,翻阅github和stackoverflow也没找到具体原因。
后面发现是编译时候没有制定具体的系统和架构信息,导致编译出的文件在alpine上无法正常运行。通过如下命令编译的文件终于可以正常运行了
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build test.go
至此,docker 已经可以正常运行了。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31537575/viewspace-3123491/ ,如需转载,请注明出处,否则将追究法律责任。