Docker环境搭建
前言
相信不管你是刚踏入互联网圈,还是已经摸爬滚打了几年,你一定听说过容器技术。但是要说当下最火的容器技术是什么,技术人员一定异口同声的回答:”Docker“。
什么样的技术人员适合学Docker呢?我认为后端同学和对新技术敏感的同学最合适,这样才能跟得上技术的潮流,使自己不被淘汰。当然正在上学的学生学习Docker对自己找实习机会和找工作也会十分有利的,毕竟技多不压身。
关于的Docker的详细介绍在网上已经多得不能再多了,大家只要百度或者Google一下就能获取到大量的资料,所以我就不在这详细介绍了,下面我就说下我在工作中为什么会选择Docker:
- 方便部署、交付、迁移、测试,总结起来就是方便持续集成持续交付部署。
- 启动迅速,秒级的启动速度远远胜过了虚拟机,启动后占用的系统资源也更少。
使用场景
场景1
还记得上学的时候,学习新语言的第一天老师总会教大家如何搭建环境。比如在安装Mysql的时候,学校机房的电脑,你自己的笔记本,再加上各种不一样的Windows版本,不同的Linux发行版,总是让学生出现各种各样的问题。
如果那时候Docker存在的话就轻松解决了这个问题,我只要安装好Docker,然后执行下
1 | docker pull mysql |
好了,一个root密码为123456的mysql服务就这样搭建好了,最多出现端口占用的问题,换个端口在执行一次即可。
假如你现在需要跑某个开源的Demo,但是这个Demo使用的数据库你的电脑没有安装,。以PostgreSQL为例,这时候你只要执行下
1 | docker pull postgres |
一个密码为123456,端口为5432的postgres服务就有了。
当然你还可以指定各种版本,这样就相当于在电脑或服务器中装了多个版本的服务。
场景3
现在后端最火的技术当属微服务了。以电商项目为例,在商促期间访问压力大的模块都在秒杀上,这时候如果我们采用了Docker镜像来部署,只需要重新启动一个或者多个秒杀模块就解决了问题,在商促结束后停止掉额外启动的秒杀模块,这样就达到了弹性伸缩的目的,节省了服务器的资源。
安装Docker官网文档
因为我家里的服务器使用ESXi跑着一个Ubuntu的实例,我就以Ubuntu为例子
更新安装源
1
sudo apt-get update
安装依赖
1
2
3
4
5sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common添加GPG key
1
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
验证GPG key
1
sudo apt-key fingerprint 0EBFCD88
添加官方源
1
2
3
4sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"再次更新安装源
1
sudo apt-get update
安装docker-ce
1
sudo apt-get install docker-ce
运行hello-world
1
sudo docker run hello-world
如果屏幕上出现了 “Hello from Docker!“ 字样,恭喜你,安装成功。
如果你以为到了这一步就完事的话,那你真是图样图森破了,由于一些大家都懂得的原因,在国内访问外网的Docker Hub并没有什么速度,好在国内有加速镜像可以配置。我使用的是DaoCloud,在这个网站注册后打开加速镜像的链接,执行网页上给的命令即可。至此,Docker的安装和配置加速镜像就彻底结束了。