Docker系列一: docker简介及基本环境安装

时间:2022-07-25 15:54:49

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。

 

Docker的应用场景

  1. Web 应用的自动化打包和发布。
  2. 自动化测试和持续集成、发布。
  3. 在服务型环境中部署和调整数据库或其他的后台应用。
  4. 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

 

Docker 的优点
1、简化程序:
Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是 Docker的最大优势,过去需要用数天乃至数周的 任务,在Docker容器的处理下,只需要数秒就能完成。

2、避免选择恐惧症:
如果你有选择恐惧症,还是资深患者。Docker 帮你 打包你的纠结!比如 Docker 镜像;Docker 镜像中包含了运行环境和配置,所以 Docker 可以简化部署多种应用实例工作。比如 Web 应用、后台应用、数据库应用、大数据应用比如 Hadoop 集群、消息队列等等都可以打包成一个镜像部署。

3、节省开支:
一方面,云计算时代到来,使开发者不必为了追求效果而配置高额的硬件,Docker 改变了高性能必然高价格的思维定势。Docker 与云的结合,让云空间得到更充分的利用。不仅解决了硬件管理的问题,也改变了虚拟化的方式。

 

安装Docker环境并启动第一个docker容器(使用的是Ubuntu环境)

apt-get update

# 安装最新版本
wget -qO- https://get.docker.com/ | sh

# 启动docker服务
service docker start

# 指定运行的镜像,docker首先从本地主机查找镜像是否存在,如果不存在,从镜像仓库下载公共镜像
docker run hello-world

 

修改镜像的资源及开启虚拟内存限制

# 镜像加速
# vim /etc/docker/daemon.json  没有就创建一个,添加内容:
{
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

# 修改配置支持swap限制
vim /etc/default/grub
# 添加配置
GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"

# 更新grub后重启系统
update-grub
reboot