Docker架构
- Docker包括三个基本概念:
- 镜像(Image):相当于是一个root文件系统
- 容器(Container):镜像和容器的关系,就像是面型对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像试试运行的实体。容器可以被创建、启动、停止、删除、暂停等;
- 仓库(Repository):仓库可以看做是一个代码控制中心,用来保存镜像
- Docker使用客户端-服务器(C/S)架构模式,使用远程API来管理和创建Docker容器
- Docker容器通过Docker镜像来创建
Docker使用
Docker Hello World
- Docker允许你在容器内运行应用程序,使用docker run命令来在容器内运行一个应用程序,输出helloworld
runoob@runoob:~$ docker run ubuntu:15.10 /bin/echo "Hello world"
Hello world
- docker:Docker的二进制可执行文件
- run:运行一个容器
- ubuntu:15.10:指定要运行的镜像,如果镜像不存在本地,就需要从镜像仓库中下周公共镜像
- /bin/echo "hello world":在容器中所执行的命令
- 以上指令的完整意思可以解释为:Docker以ubuntu 15.10镜像创建一个新容器,然后在容器里面执行 bin/echo "hello world",之后输出
运行交互式的容器
- 通过-i,-t两个参数可以让docker运行的容器实现"对话"的能力
- -i:运行对容器内的标准输入输出进行交互
- -t:在新容器内指定一个伪终端或者终端
启动容器(后台模式)
- 使用以下命令创建一个以进程的方式运行的容器
runoob@runoob:~$ docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63
- 输出中的长字符叫做容器ID,对每个容器来说是唯一的,我们可以通过查看容器ID来查看对应的容器发生了什么。
- 确认容器是否运行,可以用docker ps来查看
runoob@runoob:~$ docker ps
CONTAINER ID IMAGE COMMAND ...
5917eac21c36 ubuntu:15.10 "/bin/sh -c 'while t…" ...
- 在宿主主机内使用docker log可以查看容器内的标准输入
停止容器
- 使用docker stop
Docker 容器使用
容器使用
启动容器
$ docker run -it ubuntu /bin/bash
- -i:交互操作
- -t:终端
- ubuntu:ubuntu镜像
- /bin/bash:放在镜像后面的是命令,这里需要有一个交互式的Shell,因此使用/bin/bash
启动已经停止运行的容器
- 查看所有停止运行的容器
$ docker ps -a
![](https://img.haomeiwen.com/i16253020/6d6518875de6552e.png)
-
使用 docker start 启动一个已停止的容器
- 一系列操作下来,顿时清爽不少
网友评论