为什么会有Docker?

一个程序在一台设备上能运行, 在另外一台上设备可能就运行不了。

通过安装虚拟机和对应编译器等环境,我们可以在另一台设备上模拟出一个环境,也可以运行程序,但是有资源占用比较大等缺点。

另外一种虚拟化技术,叫做 Linux容器,虚拟所需要使用的各种资源,从而实现与底层的分离,相对虚拟机恶言启动快、资源更少。Docker就是Linux容器的一种封装。

Docker能干什么?

使用Docker能干什么呢?可以运行在Linux中的应用都能运行在Docker中,你可以:

  • 便利地安装复杂的应用
  • 创建演示环境用于展示过程
  • 使用Docker镜像快速开始,减少在搭建环境上的耗费
  • 更好地利用好它节省的资源
  • 充当微服务的容器
  • 云服务商之间进行移植
  • 充当API端

开始使用Docker

Docker分为卡社区版(Community Edition,缩写为CE)和企业版(Enterpise Edition,缩写EE)。

https://docs.docker.com/docker-for-mac/install/

命令行中可以通过 docker version 来检查是否安装好。

image 文件和容器

Docker 把应用程序及其依赖,打包在 image 文件里面。

为了方便共享,image 文件制作完成后,可以上传到网上的仓库。Docker Hub 是最重要、最常用的 image 仓库。

  1. $ docker image pull library/hello-world // DockerHub的默认残酷library拉取hello-world
  2. $ docker image ls // 列举所有的image
  3. $ docker container run hello-world // 运行一个 hello-world 容器
  4. $ docker container ls // 列出本机正在运行的容器
  5. $ docker container ls --all // 列出本机所有容器,包括终止运行的容器

Dockerfile

想要制作 image,势必需要用到image文件,可参考:十、实例:制作自己的 Docker 容器

其他有用命令

参考:实例十一:其他有用命令