一、Docker的简介
Docker是什么?
Docker是一个开源的应用容器引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。Docker支持将软件编译成一个镜像;然后在镜像中配置好各种软件,将镜像发布出去,其他使用者可以直接使用这个镜像。运行中的这个镜像称为容器,容器启动是非常快速的。
Docker 的优点
- 更快速的交付于部署:快速创建容器,快速迭代应用,秒级启动,全程可视化
- 更高效的虚拟化:内核级虚拟化,不需要额外的hypervisor
- 更轻松的迁移和扩展:可以在任意的平台上运行,应用程序可以直接跨平台迁移
- 更简单的管理:以增量式进行修改和发布,实现自动化管理
Docker的基本组成
- docker主机(Host):安装了Docker程序的机器
- docker客户端(Client):连接docker主机进行操作
- docker仓库(Registry):用来保存各种打包好的软件镜像
- docker镜像(Images):软件打包好的镜像;放在docker仓库中
- docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
二、Docker的安装
1、使用 Homebrew 安装
Homebrew 的 Cask 已经支持 Docker,因此可以使用homebrew来下载。
brew install --cask --appdir=/Applications docker
2、手动下载安装
如果需要手动下载,请点击上面的链接进行下载。和macOS 中的其它软件一样,安装也非常简单,双击下载的 .dmg 文件,然后将鲸鱼图标拖拽到 Application 文件夹即可。
安装成功之后,在顶部状态栏中会显示鲸鱼图标,或者在终端输入
docker --version
三、Docker的使用
Docker 容器的使用
- 获取镜像:
docker pull 容器名称
- 启动容器:
docker run -it 容器名称 /bin/bash
- 要退出终端,直接输入
exit
- 查看所有的容器:
docker ps -a
- 使用 docker start 启动一个已停止的容器:
docker start 容器ID
- 停止一个容器:
docker stop 容器ID
- 停止的容器重启 :
docker restart 容器ID
- 后台运行:
docker run -itd --name 容器名称-test 容器名称 /bin/bash
- 删除容器:
docker rm -f 容器ID
Docker 镜像使用
- 列出本地主机上的镜像:
docker images
- 各个选项说明:
- REPOSITORY:表示镜像的仓库源
- TAG:镜像的标签
- IMAGE ID:镜像ID
- CREATED:镜像创建时间
- SIZE:镜像大小
- 各个选项说明:
同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,如 ubuntu 仓库源里,有 15.10、14.04 等多个不同的版本,我们使用 REPOSITORY:TAG 来定义不同的镜像。
eg: 我们如果要使用版本为15.10的ubuntu系统镜像来运行容器
docker run -t -i ubuntu:15.10 /bin/bash
- 查看镜像版本:
docker search 镜像名
- 取最新版本的镜像:
docker pull 镜像名:latest
- 删除镜像:
docker rmi 镜像名
使用Docker 安装 Nginx
- 我们拉取官方的最新版本的镜像:
docker pull nginx:latest
- 查看本地镜像,使用以下命令来查看是否已安装了 nginx:
docker images
- 安装完成后,我们可以使用以下命令来运行 nginx 容器:
docker run --name nginx-test -p 8080:80 -d nginx
- 参数说明:
- –name nginx-test:容器名称
- -p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口
- -d nginx: 设置容器在在后台一直运行
- 启动成功后我们可以通过浏览器可以直接访问 8080 端口的 nginx 服务
Docker的窗口
打开docker的软件,就可以查看到有两个正在运行的容器
在这个窗口中我们可以很方便的去启动和关闭容器。