Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。(百度百科)

Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。
Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。
## Docker解决什么问题
在任何地方开发、部署和运行任何应用
对比(docker相当于传统的虚拟化技术,不需要额外的系统作为运行应用的环境)
- 轻量级的容器
- 速度快
- 跨环境、跨系统运行
- 构建(部署)简单
- 管理简单
## docker核心概念

- 镜像(Image)
类似于虚拟机镜像(不可读写, 无状态)
- 容器(Container)
就相当于是一个小型系统,从镜像启动
- 仓库(Repository)
一个仓库放一个镜像!

## Docker安装
安装链接: [https://docker_practice.gitee.io/zh-cn/install/](https://docker_practice.gitee.io/zh-cn/install/)
- Windows:下载安装exe文件(要求支持 Hyper-V)
- Ubuntu:卸载旧版本(非必要):
```bash
$ sudo apt-get remove docker \
docker-engine \
docker.io```
安装:
```bash
$ sudo apt-get update$ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
```
强烈推荐使用国内源:
为了确认所下载软件包的合法性,需要添加软件源的 GPG 密钥
```bash
$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 官方源# $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
```
source list 添加:
```bash
$ sudo add-apt-repository \
"deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
$(lsb_release -cs) \
stable"
# 官方源# $ sudo add-apt-repository \# "deb [arch=amd64] https://download.docker.com/linux/ubuntu \# $(lsb_release -cs) \# stable"
```
更新 apt 软件包缓存,并安装 docker-ce:
```bash
$ sudo apt-get update$ sudo apt-get install docker-ce
```
## Docker操作