一、docker概念
- 镜像:
一个镜像可以包含一个完整的 ubuntu操作系统环境,里面仅安装了 Apache或用户需要的其它应用程序。用户可以定制属于自己的镜像。
- 容器:
- 容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。
- 可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。
- 仓库:
- 仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)
- 当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一台机器上使用这个镜像时候,只需要从仓库上 pull 下来就可以了。
Docker 仓库的概念跟 Git 类似。
二、docker场景
- docker安装:针对使用的系统,选择安装方式 docker官网
- docker通常用于如下场景:
- web应用的自动化打包和发布;
- 自动化测试和持续集成、发布;
- 在服务型环境中部署和调整数据库或其他的后台应用;
- 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。
三、docker命令
- 获取镜像:
-
docker search 镜像:从仓库搜索镜像
-
docker pull 镜像:从docker hub 仓库获取
-
docker pull 指定完整的仓库注册服务器地址 :从指定仓库地址获取镜像
-
docker run 镜像: 使用镜像,运行一个实例
拉取并运行tomcat镜像latest版本
$ docker run -it tomcat:latest
-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上, -i 则让容器的标准输入保持打开。-d 让 Docker 容器在后台以守护态(Daemonized)形式运行
-
docker images: 列出本地已有的镜像
-
docker tag sourceTag targetTag :给镜像sourceTag创建一个targetTag镜像
$ docker tag tomat_maven_yehao:latest registry-xxx.com/tomcat_maven_yehao:1.0.0
-
docker push 镜像:上传镜像到仓库
$ docker push registry-xxx.com/tomcat_maven_yehao:1.0.0
-
docker save 镜像:导出镜像到本地文件
$ sudo docker save -o ubuntu_14.04.tar ubuntu:14.04
<