Docker 快速开始

1.  概念

对于开发人员和系统管理员来说,Docker是一个使用容器开发部署运行应用程序的平台。使用Linux容器部署应用程序称为容器化。容器并不新鲜,但是将它们用于轻松部署应用程序却很新鲜。

容器化越来越受欢迎,是因为容器有以下特点:

  • 灵活性:即使是最复杂的应用程序也可以被容器化
  • 轻量级:容器利用并共享主机内核
  • 可互换的:你可以实时部署更新和升级
  • 可移植性:你可以在本地构建、部署到云,并在任何地方运行
  • 可伸缩:你可以增加并自动分发容器副本
  • 可叠加:你可以垂直地、动态地叠加服务

2.  镜像与容器

image(译:镜像)

一个镜像是一个可执行包,它包含运行应用程序所需的所有内容,包括代码、运行时环境、库、环境变量、配置文件。通过运行镜像类启动一个容器。

container(译:集装箱;容器)

容器是镜像的运行时实例。你可以使用docker ps命令看到正在运行的容器列表,就像在Linux中一样。

(PS:镜像与容器的关系,就好比是类与对象的关系一样。镜像是静态的,当镜像运行的时候它就是一个容器)

3.  容器与虚拟机

容器在Linux本地运行,并与其他容器共享主机的内核。它以独立的进程运行,不占用比任何其他可执行程序更多的内存,使其轻量级。相反,虚拟机(VM)运行一个成熟的“客户”操作系统,通过管理程序对主机资源进行虚拟访问。一般来说,VMs提供的环境比大多数应用程序所需的资源要多。

    

4.  安装Docker

就像我们要使用mysql命令之前必须先安装mysql服务一样。Docker作为服务运行,我们也必须先安装它,这里我们安装Mac版。

https://hub.docker.com/search/?type=edition&offering=community

Docker有社区版和企业版,由于笔者的机器限制,此处只能选择安装 “Docker Desktop for Mac”

https://hub.docker.com/editions/community/docker-ce-desktop-mac

注册账号,安装,安装成功并登录后就可以使用了

接下来,测试一下刚才安装的Docker

docker version
docker run hello-world
docker image ls
docker container ls --all
docker container --help

localhost:~ chengjiansheng$ docker image ls                 
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
hello-world         latest              fce289e99eb9        3 months ago        1.84kB
localhost:~ chengjiansheng$ docker container ls --all
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
a9c306fa88b2        hello-world         "/hello"            19 minutes ago      Exited (0) 19 minutes ago                       elegant_heisenberg

5.  备忘单

6.  文档

https://docs.docker.com/get-started/

 

posted @ 2019-04-25 13:30  废物大师兄  阅读(1758)  评论(1编辑  收藏  举报